openapi: 3.0.3
info:
  title: Harness APIs
  version: '1.0'
  description: >
    The Harness Software Delivery Platform uses OpenAPI Specification v3.0.
    Harness constantly improves these APIs. Please be aware that some
    improvements could cause breaking changes.

    # Introduction 

      The Harness API allows you to integrate and use all the services and modules we provide on the Harness Platform. If you use client-side SDKs, Harness functionality can be integrated with your client-side automation, helping you reduce manual efforts and deploy code faster.

      For more information about how Harness works, read our [documentation](https://developer.harness.io/docs/getting-started) or visit the [Harness Developer Hub](https://developer.harness.io/).

    ## How it works

      The Harness API is a RESTful API that uses standard HTTP verbs. You can send requests in JSON, YAML, or form-data format. The format of the response matches the format of your request. You must send a single request at a time and ensure that you include your authentication key. For more information about this, go to [Authentication](#section/Introduction/Authentication).

    ## Get started

      Before you start integrating, get to know our API better by reading the following topics:

      * [Harness key concepts](https://developer.harness.io/docs/getting-started/learn-harness-key-concepts/)
      * [Authentication](#section/Introduction/Authentication)
      * [Requests and responses](#section/Introduction/Requests-and-Responses)
      * [Common Parameters](#section/Introduction/Common-Parameters-Beta)
      * [Status Codes](#section/Introduction/Status-Codes)
      * [Errors](#tag/Error-Response)
      * [Versioning](#section/Introduction/Versioning-Beta)
      * [Pagination](/#section/Introduction/Pagination-Beta)

      The methods you need to integrate with depend on the functionality you want to use. Work with  your Harness Solutions Engineer to determine which methods you need.

    ## Authentication


    To authenticate with the Harness API, you need to:
      1. Generate an API token on the Harness Platform.
      2. Send the API token you generate in the `x-api-key` header in each request.

    ### Generate an API token


    To generate an API token, complete the following steps:
      1. Go to the [Harness Platform](https://app.harness.io/).
      2. On the left-hand navigation, click **My Profile**.
      3. Click **+API Key**, enter a name for your key and then click **Save**.
      4. Within the API Key tile, click **+Token**.
      5. Enter a name for your token and click **Generate Token**.
    **Important**: Make sure to save your token securely. Harness does not store
    the API token for future reference, so make sure to save your token securely
    before you leave the page.


    ### Send the API token in your requests


    Send the token you created in the Harness Platform in the x-api-key header.
    For example:
      `x-api-key: YOUR_API_KEY_HERE`

    ## Requests and Responses

      The structure for each request and response is outlined in the API documentation. We have examples in JSON and YAML for every request and response. You can use our online editor to test the examples.

    ## Common Parameters [Beta]


    | Field Name | Type    | Default | Description    |

    |------------|---------|---------|----------------|

    | identifier | string  | none    | URL-friendly version of the name, used to
    identify a resource within it's scope and so needs to be unique within the
    scope.                                                                                                           
    |

    | name       | string  | none    | Human-friendly name for the
    resource.                                                                                      
    |

    | org        | string  | none    | Limit to provided org
    identifiers.                                                                                                                    
    |

    | project    | string  | none    | Limit to provided project
    identifiers.                                                                                                                
    |

    | description| string  | none    | More information about the specific
    resource.                                                                                   
    |

    | tags       | map[string]string  | none    | List of labels applied to the
    resource.                                                                                                                        
    |

    | order      | string  | desc    | Order to use when sorting the specified
    fields. Type:
    enum(asc,desc).                                                                                                                                    
    |

    | sort       | string  | none    | Fields on which to sort. Note: Specify
    the fields that you want to use for sorting. When doing so, consider the
    operational overhead of sorting fields. |

    | limit      | int     | 30      | Pagination: Number of items to
    return.                                                                                                                
    |

    | page       | int     | 1       | Pagination page number strategy: Specify
    the page number within the paginated collection related to the number of
    items in each page.                  |

    | created    | int64   | none    | Unix timestamp that shows when the
    resource was created (in
    milliseconds).                                                              
    |

    | updated    | int64   | none    | Unix timestamp that shows when the
    resource was last edited (in
    milliseconds).                                                           |



    ## Status Codes

      Harness uses conventional HTTP status codes to indicate the status of an API request. 
      Generally, 2xx responses are reserved for success and 4xx status codes are reserved for failures. A 5xx response code indicates an error on the Harness server.

      | Error Code  | Description |
      |-------------|-------------|
      | 200         |     OK      |
      | 201         |   Created   |
      | 202         |   Accepted  |
      | 204         |  No Content |
      | 400         | Bad Request |
      | 401         | Unauthorized |
      | 403         | Forbidden |
      | 412         | Precondition Failed |
      | 415         | Unsupported Media Type |
      | 500         | Server Error |

      To view our error response structures, go [here](#tag/Error-Response).

    ## Versioning [Beta]


    ### Harness Version
      The current version of our Beta APIs is yet to be announced. The version number will use the date-header format and will be valid only for our Beta APIs.

    ### Generation
      All our beta APIs are versioned as a Generation, and this version is included in the path to every API resource. For example, v1 beta APIs begin with `app.harness.io/v1/`, where v1 is the API Generation.

      The version number represents the core API and does not change frequently. The version number changes only if there is a significant departure from the basic underpinnings of the existing API. For example, when Harness performs a system-wide refactoring of core concepts or resources.

    ## Pagination [Beta]


    We use pagination to place limits on the number of responses associated with
    list endpoints. Pagination is achieved by the use of limit query parameters.
    The limit defaults to 30. Its maximum value is 100.


    Following are the pagination headers supported in the response bodies of
    paginated APIs:
      1. X-Total-Elements : Indicates the total number of entries in a paginated response.
      2. X-Page-Number : Indicates the page number currently returned for a paginated response.
      3. X-Page-Size : Indicates the number of entries per page for a paginated response.

    For example:

      ```
    X-Total-Elements : 30

    X-Page-Number : 0

    X-Page-Size : 10
      ```
  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
externalDocs:
  description: Find out more about Swagger
  url: http://swagger.io
security:
  - x-api-key: []
tags:
  - name: Governance Status
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/GovernanceStatus" />
  - name: Policy
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/Policy" />
  - name: Policy Set
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/PolicySet" />
  - name: Governance Metadata
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/GovernanceMetadata" />
    x-displayName: Governance Metadata [Beta]
  - name: Test Error Metadata
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/TestErrorMetadata" />
  - name: Error Metadata
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/ErrorMetadata" />
  - name: Field Error
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/FieldError" />
  - name: Error Response
    description: |
      <SchemaDefinition schemaRef="#/components/schemas/ErrorResponse" />
    x-displayName: Error Response [Beta]
  - name: Account Roles
    description: This contains APIs for Account-scoped Roles.
    x-displayName: Account Roles [Beta]
  - name: Organization Roles
    description: This contains APIs for Organization-scoped Roles.
    x-displayName: Organization Roles [Beta]
  - name: Project Roles
    description: This contains APIs for Project-scoped Roles.
    x-displayName: Project Roles [Beta]
  - name: Account Role Assignments
    description: This contains APIs for Account-scoped Role Assignments.
    x-displayName: Account Role Assignments [Beta]
  - name: Org Role Assignments
    description: This contains APIs for Organization-scoped Role Assignments.
    x-displayName: Organization Role Assignments [Beta]
  - name: Project Role Assignments
    description: This contains APIs for Project-scoped Role Assignments.
    x-displayName: Project Role Assignments [Beta]
  - name: Organization
    description: >-
      Create and manage organizations in your account. You use organizations to
      group together related projects. For example, you can use an organization
      to group together projects within a business unit or division.
  - name: Org Project
    description: This contains APIs for projects.
    x-displayName: Project [Beta]
  - name: Account Secret
    description: This contains APIs for account-scoped secrets.
    x-displayName: Account Secrets [Beta]
  - name: Org Secret
    description: This contains APIs for organization-scoped secrets.
    x-displayName: Organization Secrets [Beta]
  - name: Project Secret
    description: This contains APIs for project-scoped secrets.
    x-displayName: Project Secrets [Beta]
  - name: Account Services
    description: This contains APIs for account-scoped services.
    x-displayName: Account Services [Beta]
  - name: Org Services
    description: This contains APIs for organization-scoped services.
    x-displayName: Organization Services [Beta]
  - name: Project Services
    description: This contains APIs for project-scoped services.
    x-displayName: Project Services [Beta]
  - name: Project Environments
    description: This contains APIs for project-scoped environments.
    x-displayName: Project Environments [Beta]
  - name: Account Favorites
    description: This contains APIs for account-scoped Favorites.
    x-displayName: Account Favorites [Beta]
  - name: Org Favorites
    description: This contains APIs for organization-scoped Favorites.
    x-displayName: Organization Favorites [Beta]
  - name: Project Favorites
    description: This contains APIs for project-scoped Favorites.
    x-displayName: Project Favorites [Beta]
  - name: Account Rancher Infrastructure
    description: This contains APIs for Rancher infra entities for account level.
    x-displayName: Account Rancher Infrastructure [Beta]
  - name: Org Rancher Infrastructure
    description: This contains APIs for Rancher infra entities for org level.
    x-displayName: Org Rancher Infrastructure [Beta]
  - name: Project Rancher Infrastructure
    description: This contains APIs for Rancher infra entities for project level.
    x-displayName: Project Rancher Infrastructure [Beta]
  - name: K8s Release Service Mapping
    description: This contains APIs for Fetching Release details regarding a pod.
    x-displayName: K8s Release Service Mapping [Beta]
  - name: EULA
    description: This contains APIs for EULA.
    x-displayName: EULA [Beta]
  - name: Account Certificate
    description: This contains APIs for account-scoped Certificates
    x-displayName: Account Certificates [Beta]
  - name: Org Certificate
    description: This contains APIs for organization-scoped Certificates
    x-displayName: Org Certificates [Beta]
  - name: Project Certificate
    description: This contains APIs for project-scoped Certificates
    x-displayName: Project Certificates [Beta]
  - name: IP Allowlist
    description: This contains APIs for IP Allowlist.
    x-displayName: IP Allowlist [Beta]
  - name: GitX Webhooks
    description: This contains APIs for Account GitX Webhooks.
    x-displayName: Account GitX Webhooks
  - name: Org GitX Webhooks
    description: This contains APIs for Org GitX Webhooks.
    x-displayName: Org GitX Webhooks
  - name: Project GitX Webhooks
    description: This contains APIs for Project GitX Webhooks.
    x-displayName: Project GitX Webhooks
  - name: Gitx Webhooks Events
    description: This contains APIs for Account Gitx Webhooks Events.
    x-displayName: Account Gitx Webhooks Events
  - name: Org Gitx Webhooks Events
    description: This contains APIs for Org Gitx Webhooks Events.
    x-displayName: Org Gitx Webhooks Events
  - name: Project Gitx Webhooks Events
    description: This contains APIs for Project Gitx Webhooks Events.
    x-displayName: Project Gitx Webhooks Events
  - name: Account Webhooks
    description: This contains APIs for Account Webhooks.
    x-displayName: Account Webhooks
  - name: Org Webhooks
    description: This contains APIs for Org Webhooks.
    x-displayName: Org Webhooks
  - name: Project Webhooks
    description: This contains APIs for Project Webhooks.
    x-displayName: Project Webhooks
  - name: Account Banner
    description: This contains APIs for Account Banners.
    x-displayName: Account Banner
  - name: Account Licensed Modules
    description: This contains APIs for Account Licensed Modules.
    x-displayName: Account Licensed Modules
  - name: Account Connector
    description: This contains APIs for Account-scoped Connectors.
    x-displayName: Account Connectors [Beta]
  - name: Org Connector
    description: This contains APIs for Organization-scoped Connectors.
    x-displayName: Organization Connectors [Beta]
  - name: Project Connector
    description: This contains APIs for Project-scoped Connectors.
    x-displayName: Project Connectors [Beta]
  - name: Account Resource Groups
    description: This contains APIs for Account-scoped Resource Groups.
    x-displayName: Account Resource Groups [Beta]
  - name: Organization Resource Groups
    description: This contains APIs for Organization-scoped Resource Groups.
    x-displayName: Organization Resource Groups [Beta]
  - name: Project Resource Groups
    description: This contains APIs for Project-scoped Resource Groups.
    x-displayName: Project Resource Groups [Beta]
  - name: Filter Resource Groups
    description: This contains the filter endpoint for Resource Groups.
    x-displayName: Filter Resource Groups [Beta]
  - name: Streaming Destinations
    description: This contains APIs for Streaming Destinations.
  - name: Notification Channels
    description: This contains APIs for Notification Channels
  - name: Notification Rules
    description: This contains APIs for Notification Rules
  - name: Notification Attachments
    description: This contains APIs for Notification Attachments
  - name: Pipelines
    description: This contains APIs for performing CRUD operations on Pipelines.
    x-displayName: Pipelines [Beta]
  - name: Input Sets
    description: This contains APIs for Input Sets.
    x-displayName: Input Sets [Beta]
  - name: Approvals
    description: This contains APIs for Approvals.
    x-displayName: Approvals
  - name: Pipeline Execution
    description: This contains APIs for Pipeline Execution.
    x-displayName: Pipeline Execution [Beta]
  - name: Triggers
    description: This contains APIs for performing CRUD operations on Triggers.
    x-displayName: Triggers [Beta]
  - name: Steps
    description: This contains APIs for Steps.
    x-displayName: Steps [Beta]
  - name: Schemas
    description: This contains APIs for Schemas.
    x-displayName: Schemas [Beta]
  - name: Account Template
    description: This contains APIs for Account-scoped Templates.
    x-displayName: Account Templates [Beta]
  - name: Org Template
    description: This contains APIs for Organization-scoped Templates.
    x-displayName: Organization Templates [Beta]
  - name: Project Template
    description: This contains APIs for Project-scoped Templates.
    x-displayName: Project Templates [Beta]
  - name: AccountInfo
    description: Account Information
    x-displayName: Account Information
  - name: AllowList
    description: Backstage Allow List
    x-displayName: Backstage Allow List
  - name: AppConfig
    description: IDP App Configurations
    x-displayName: IDP App Configurations
  - name: AuthInfo
    description: IDP app Auth Information
    x-displayName: IDP app Auth Information
  - name: BackstageEnvVariable
    description: Backstage Environment Variable
    x-displayName: Backstage Environment Variable
  - name: BackstagePermissions
    description: Backstage Permissions
    x-displayName: Backstage Permissions
  - name: ConnectorInfo
    description: Connector Information
    x-displayName: Connector Information
  - name: CatalogCustomProperties
    description: Catalog Custom Properties
    x-displayName: Catalog Custom Properties
  - name: DataSource
    description: DataSource Information
    x-displayName: DataSource Information
  - name: HarnessDataPoints
    description: Harness DataPoints Information
    x-displayName: Harness DataPoints Information
  - name: KubernetesDataPoints
    description: Kubernetes DataPoints Information
    x-displayName: Kubernetes DataPoints Information
  - name: LayoutProxy
    description: Layout Proxy
    x-displayName: Layout Proxy
  - name: LicenseUsageResource
    description: License Usage Resource
    x-displayName: License Usage Resource
  - name: MergedPluginsConfig
    description: Merged Plugins Configurations
    x-displayName: Merged Plugins Configurations
  - name: Namespace
    description: Backstage Namespace
    x-displayName: Backstage Namespace
  - name: OnboardingResource
    description: Onboarding
    x-displayName: Onboarding
  - name: PluginInfo
    description: Plugin Information
    x-displayName: Plugin Information
  - name: Provision
    description: Provision
    x-displayName: Provision
  - name: Scores
    description: Scores Information
    x-displayName: Scores Information
  - name: ScoresV2
    description: Scores Information V2
    x-displayName: Scores Information V2
  - name: StatusInfo
    description: Status Information
    x-displayName: Status Information
  - name: BackstageHarness
    description: Backstage Harness
    x-displayName: Backstage Harness
  - name: Groups
    description: Groups
    x-displayName: Groups
  - name: HomePageLayout
    description: Home Page Layout
    x-displayName: Home Page Layout
  - name: Entities
    description: >-
      APIs for managing catalog Entities which represent the core components of
      your system. Entities can represent services, APIs, user groups,
      resources, and more. These endpoints allow you to create, retrieve,
      update, delete, and query entities across different scopes.
    x-displayName: Entities
  - name: Environment
    description: The environment service for working with Environment-type infrastructures
  - name: Infrastructure
    description: The infrastructure service for working with infrastructures
  - name: Instance
    description: The instance service for working with instances
  - name: Accounts
    description: This contains APIs related to accounts as defined in Harness
  - name: EnvironmentGroup
    description: This contains APIs related to EnvironmentGroup.
  - name: Usage
    description: This contains APIs specific to CD license usage
  - name: Connectors
    description: This contains APIs related to Connectors as defined in Harness
  - name: GoogleSecretManagerConnector
    description: >-
      This contains APIs specific to Google Secret Manager Connector as defined
      in Harness
  - name: File Store
    description: This contains APIs related to File Store in Harness
  - name: Filter
    description: This contains APIs related to Filter as defined in Harness
  - name: Git Branches
    description: Contains APIs related to Git Sync Branch
  - name: Git Full Sync
    description: Contains APIs related to Git Full Sync
  - name: Git Sync Settings
    description: Contains APIs related to Git Sync Settings
  - name: SCM
    description: Contains APIs related to Scm
  - name: User Source Code Manager
    description: Contains APIs related to User Source Code Manager
  - name: Git Sync
    description: Contains APIs for CRUD on Git Sync
  - name: Git Sync Errors
    description: Contains APIs related to Git Sync Errors
  - name: Nextgen Ldap
    description: This contains APIs related to Nextgen Ldap as defined in Harness
  - name: Authentication Settings
    description: >-
      This contains APIs related to Authentication settings as defined in
      Harness
  - name: AccountSetting
    description: This contains APIs related to Account Settings as defined in Harness
  - name: Agent mTLS Endpoint Management
    description: Contains APIs related to Agent mTLS Endpoint management.
  - name: CustomDeployment
    description: This contains APIs related to Custom Deployment
  - name: Delegate Download Resource
    description: Contains APIs related to Downloading Delegates
  - name: Delegate Group Tags Resource
    description: Contains APIs related to Delegate Group Tags management
  - name: Delegate Setup Resource
    description: Contains Delegate Setup APIs
  - name: Delegate Token Resource
    description: Contains APIs related to Delegate Token management
  - name: Environments
    description: This contains APIs related to Environments
  - name: Infrastructures
    description: This contains APIs related to Infrastructure Definitions
  - name: Invite
    description: This contains APIs related to Invite as defined in Harness
  - name: Oidc-Access-Token
    description: >-
      This contains APIs related to OIDC Access Token generation as defined in
      Harness
  - name: Oidc-ID-Token
    description: >-
      This contains APIs related to OIDC ID Token generation as defined in
      Harness
  - name: OIDC
    description: This contains APIs related to the Harness OIDC config
  - name: Provider
    description: This contains APIs related to Provider
  - name: ApiKey
    description: This fetches API keys defined in Harness
  - name: ValidateHost
    description: This contains APIs related to SSH or WinRm host validation
  - name: Keys
    description: This contains APIs related to Keys as defined in Harness
  - name: Hosts
    description: This contains APIs related to Hosts as defined in Harness
  - name: Secret Managers
    description: This contains APIs related to SecretManagers as defined in Harness
  - name: Secrets
    description: This contains APIs related to Secrets as defined in Harness
  - name: Project
    description: This contains APIs related to Project as defined in Harness
  - name: Token
    description: This contains APIs related to Token as defined in Harness
  - name: User Group
    description: This contains APIs related to User Group as defined in Harness
  - name: Services
    description: This contains APIs related to Services
  - name: Overrides
    description: This contains APIs related to Overrides
  - name: ServiceOverrides
    description: This contains APIs related to Service Overrides V2
  - name: SMTP
    description: This contains APIs related to SmtpConfig as defined in Harness
  - name: tas
    description: This contains APIs related to tas
  - name: User
    description: This contains APIs related to User as defined in Harness
  - name: Variables
    description: This contains APIs related to Variables as defined in Harness.
  - name: Freeze CRUD
    description: This contains APIs related to Freeze CRUD
  - name: Freeze Evaluation
    description: This contains APIs related to evaluation Freeze status
  - name: Freeze Schema
    description: This contains APIs related to construct schema for Freeze
  - name: Clusters
    description: This contains APIs related to Gitops Clusters
  - name: GitOps
    description: APIs related to GitOps resources
  - name: Service Dashboard
    description: This contains APIs related to Service Dashboard
  - name: Rollback
    description: This contains APIs related to Post Prod Rollback of specific service
  - name: Service Account
    description: This has all the APIs specific to the Service Accounts in Harness.
  - name: Canny
    description: This contains APIs required for the creation of Canny tickets
  - name: Tunneling
    description: This contains APIs related to tunneling
  - name: Source Code Manager
    description: Contains APIs related to Source Code Manager
  - name: Webhook Event Handler
    description: Contains APIs corresponding to Webhook Triggers.
  - name: Setting
    description: This contains APIs related to Settings as defined in Harness
  - name: UserSetting
    description: This contains APIs related to User Settings as defined in Harness
  - name: TriggersEvents
    description: This contains APIs related to Trigger Event History.
  - name: Webhook Triggers
    description: This contains APIs related to Webhook Triggers.
  - name: Pipeline Dashboard
    description: This contains APIs related to Pipeline Dashboard
  - name: Pipeline data retention
    description: This contains APIs related to retention of pipeline execution data
  - name: Pipeline
    description: >-
      This contains pipeline APIs for files as provided as runtime input during
      pipeline execution
  - name: Pipeline Input Set
    description: This contains APIs related to Input Sets
  - name: Pipeline Execution Details
    description: This contains APIs for fetching Pipeline Execution Details
  - name: Pipeline Execute
    description: This contains APIs for Executing a Pipeline
  - name: Pipeline Refresh
    description: This contains APIs related to validation of templates in pipeline yaml
  - name: Access Control List
    description: This contains the APIs to perform access control checks
  - name: Permissions
    description: This contains the APIs related to permissions
  - name: Role Assignments
    description: This contains APIs for CRUD on role assignments
  - name: Roles
    description: This contains APIs for CRUD on roles
  - name: Cloud Cost Anomalies
    description: Get details about any anomalous spike in your cloud costs
  - name: Cloud Cost BI Dashboards
    description: Get details of BI-dashboards specific to CCM
  - name: Cloud Cost Budget Groups
    description: >-
      Manage Budget Groups and receive alerts when your costs exceed (or are
      forecasted to exceed) your configured budget group.
  - name: Cloud Cost Budgets
    description: >-
      Manage Budgets and receive alerts when your costs exceed (or are
      forecasted to exceed) your budget.
  - name: Cloud Cost Cost Categories
    description: >-
      Allows you to categorize based on business requirements and get a
      contextual view of your expenses.
  - name: Cloud Cost K8S Connectors Metadata
    description: Health related metadata for your k8S clusters having cost access enabled.
  - name: Cloud Cost Notification Settings v2
    description: Set notification channels to get cloud cost anomaly alerts
  - name: Cloud Cost Overview
    description: Get overview of CCM features.
  - name: Anomaly Comments
    description: APIs to manage anomaly comments
  - name: Cloud cost anomaly details
    description: Get resource level insights into your cloud cost anomalies
  - name: Cloud cost anomalies v2
    description: Get details about any anomalies in your cloud costs
  - name: Cloud Cost Details
    description: Fetch cloud cost data for cost analysis
  - name: Cloud Cost Currency Preferences
    description: >-
      Select destination currency to view different cloud provider currencies in
      destination currency
  - name: External Data Provider
    description: This contains APIs related to External Data Provider Support for CCM
  - name: AiEngine
    description: 'This contains APIs related to Generative AI Support for Governance '
  - name: Governance Enforcement Recommendation APIs
    description: This contains APIs related to CCM Governance Enforcement Recommendations
  - name: Governance Alert
    description: This contains APIs related to Governance Alert Management
  - name: Governance Overview
    description: This contains APIs related to CCM Governance Overview Page
  - name: Governance Recommendation APIs
    description: This contains APIs related to CCM Governance Recommendations
  - name: RuleEnforcement
    description: 'This contains APIs related to Rule Enforcement '
  - name: Rule Executions
    description: This contains APIs related to Rule Executions
  - name: Rule
    description: This contains APIs related to Governance Rule Management
  - name: Rule Sets
    description: >-
      Rule sets serve as logical bindings on top of individual rules that help
      you organize and manage rules.
  - name: Cloud Cost Perspectives Folders
    description: >-
      Group your Perspectives using Folders in ways that are more meaningful to
      your business needs.
  - name: Cloud Cost Perspective Reports
    description: Manage cost reports created on Perspectives.
  - name: Cloud Cost Perspectives
    description: >-
      Group your resources using Perspectives in ways that are more meaningful
      to your business needs.
  - name: Cloud Cost Recommendations Details
    description: Cloud Cost Recommendations details for workloads and node pools.
  - name: Cloud Cost Recommendations
    description: Recommendations for workloads and node pools.
  - name: Cloud Cost Recommendation Jira
    description: Cloud Cost recommendation CRUD apis for jira.
  - name: Cloud Cost Recommendation Preferences
    description: Cloud Cost recommendation apis for recommendations preferences.
  - name: Cloud Cost Recommendation Presets
    description: Cloud Cost recommendation apis for recommendations presets.
  - name: Cloud Cost Recommendation Servicenow
    description: Cloud Cost recommendation CRUD apis for servicenow.
  - name: Cloud Cost Recommendation Tags
    description: Cloud Cost recommendation apis for recommendations tags.
  - name: Cloud Cost Recommendation Ignore List
    description: Cloud Cost recommendation CRUD apis for recommendations ignore list.
  - description: APIs to create and manage Feature Flag SDK API Keys
    name: API Keys
  - description: APIs to create and manage Feature Flags
    name: Feature Flags
  - description: APIs to create and manage Feature Flag Targets
    name: Targets
  - description: APIs to create and manage Feature Flag Target Groups
    name: Target Groups
  - description: APIs to create and manage Feature Flag Tags
    name: Tags
  - description: APIs used by the ff-proxy
    name: Proxy
  - description: APIs to create and manage Feature Flag Environment perspectives
    name: Environment Perspectives
  - description: APIs to manage Anomalies on the Feature Flag Service
    name: Anomalies
  - description: APIS to create and manage Target Group Attributes
    name: Attributes
  - name: Cloud Cost AutoStopping Rules
    description: >-
      This contains APIs to create and manage AutoStopping Rules for your cloud
      resources.
  - name: Cloud Cost AutoStopping Rules V2
    description: >-
      This contains Autostopping v2 APIs that support the usage of Autostopping
      Proxy for managing cloud resources.
  - name: Cloud Cost AutoStopping Load Balancers
    description: >-
      This contains APIs to create and manage load balancers used for
      AutoStopping.
  - name: Cloud Cost AutoStopping Fixed Schedules
    description: This contains APIs to manage fixed schedules for the AutoStopping Rules.
  - name: Cloud Cost Cluster Orchestrator
    description: >-
      This contains APIs to onboard and manage Cluster Orchestrator for
      Kubernetes
  - name: Commitment Orchestrator Events APIs
    description: This contains APIs to fetch commitment orchestrator events data.
  - name: AuditFilters
    description: This contains APIs related to Filter of type Audit as defined in Harness
  - name: Audit
    description: This contains APIs related to Audit as defined in Harness
  - name: AuditYaml
    description: This contains APIs related to Audit Yaml as defined in Harness
  - name: Global Templates
    description: This contains a list of APIs specific to the Global Templates
  - name: Templates
    description: >-
      This contains a list of APIs specific to the Templates Validations and
      Refresh
  - name: Template Schemas
    description: This contains a list of APIs specific to the Template Schemas
  - name: Monitored Services
    description: This contains APIs related to CRUD operations of Monitored Services
  - name: Downtime
    description: This contains APIs related to CRUD operations of Downtime
  - name: Srm Notification
    description: This contains APIs related to CRUD operations of srm notifications
  - name: SLOs dashboard
    description: This contains APIs related to SLOs dashboard
  - name: NG SLOs
    description: This contains APIs related to CRUD operations of SLOs (simple & composite)
  - name: SLOs
    description: This contains APIs related to CRUD operations of SLOs
  - name: aida
    description: AIDA API's for Harness OPA
  - name: dashboard
    description: >-
      Aggregate summary of policies, policy sets and evaluations for display on
      the dashboard
  - name: examples
    description: Example rego policies and corresponding input
  - name: policies
    description: Create, edit and delete Governance policies written in rego
  - name: evaluate
    description: Perform evaluations
  - name: evaluations
    description: Access evaluation results
  - name: policysets
    description: Create, edit and delete Governance policy sets
  - name: system
    description: System version and health
  - description: APIs to create, update, list registries
    name: Registries
  - description: APIs to get, list artifacts
    name: Artifacts
  - description: APIs to get details of docker artifacts
    name: Docker Artifacts
  - description: APIs to get details of helm artifacts
    name: Helm Artifacts
  - description: APIs to create, update, list webhooks
    name: Webhooks
  - name: ansible
    description: Ansible Service handles the API for ansible entities.
  - name: approvals
    description: >-
      Approval service handles the approval API to approve or reject pipeline
      executions
  - name: costs
    description: >-
      Costs Service handles the API related with the costs attached to
      workspaces.

      This API is read only as all the cost are generated in the plugin side
  - name: migration
    description: Migration Service handles one-off connector and template migrations.
  - name: module-registry
    description: >-
      The module-registry service is a private registry for Terraform/Opentofu
      modules
  - name: provider-registry
    description: >-
      The provider-registry service implements HashiCorp's Provider Registry
      Protocol for private Terraform providers
  - name: activities
    description: Activities Service handles the API for workspace activities
  - name: executions
    description: >-
      Executions Service handles the API for workflow executions.


      At this time it is a read-only API with no ability to directly create or
      edit

      executions. Instead these are triggered from the Workspaces Service.
  - name: settings
    description: >-
      Settings service handles all API endpoints related to configuration
      settings
  - name: tf-standard-backend
    description: HTTP standard backend for Terraform
  - name: unified-executions
    description: >-
      Unified Executions Service handles the API for unified workflow
      executions.
  - name: usage
    description: Usage service handles licencing
  - name: variable_sets
    description: >-
      Variable Sets Service handles the API for managing variable sets assigned
      to workspaces.
  - name: workspace_templates
    description: >-
      Workspace Templates Service handles the API for managing template
      associations with workspaces.
  - name: workspaces
    description: |-
      Workspaces Service handles the API for managing workspaces
      and triggering workflows against them.
  - name: variables
    description: Variables Service handles the API for managing workspace variables.
  - name: Exemptions
    description: Access and modify Exemptions to Security Issues
  - name: pipeline-security
    description: Pipeline Security API for STO
  - name: Products
    description: Access Scan Tool information
  - name: Pull Requests
    description: Access and Modify Pull Requests
  - name: System
    description: Unauthenticated support endpoints
  - name: Target Variants
    description: Access and modify Scan Target Variants
  - name: Frontend
    description: Endpoints that power the STO micro-frontend
  - name: Issues
    description: Access and modify Security Issues
  - name: Scans
    description: Access and modify Security Test Scans
  - name: STO Data Frontend
    description: Endpoints that power the other modules micro-frontend with STO data
  - name: Test Targets
    description: Access and modify Scan Targets
  - name: Reference Identifiers
    description: Reference Identifiers Lookup
  - description: >-
      This contains APIs for performing CRUD operations on Database Schema
      Entity
    name: Database Schema
    x-displayName: Database Schema
  - description: This contains APIs for getting Migration State of Database Schema Entity
    name: Migration State
    x-displayName: Migration State
  - description: >-
      This contains APIs for performing CRUD operations on Database Instance
      Entity
    name: Database Instance
    x-displayName: Database Instance
  - description: >-
      This contains APIs for creating and retrieving database migration log
      information
    name: Log Ingest
    x-displayName: Log Ingest
  - description: This contains APIs for Pipeline Plugin Inputs
    name: Pipeline Step
    x-displayName: Pipeline Step
  - description: This contains APIs for tracking changeSet deployment status
    name: Deployed State
    x-displayName: Deployed State
  - description: This contains APIs for execution config for image tags
    name: Execution Config
    x-displayName: Execution Config
  - name: Collection categories
    description: This contains APIs specific to the Collection categories
  - name: Collections
    description: This contains APIs specific to Collections
  - name: Contributors
    description: This contains APIs specific to the Contributors
  - name: DORA
    description: This contains APIs specific to the DORA reports
  - name: orchestration
    description: This contains APIs for SBOM.
    x-displayName: SBOM (SSCA)
paths:
  /v1/roles:
    parameters: []
    get:
      summary: List Roles
      operationId: list-roles-acc
      description: Returns a list of Roles present in the Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      responses:
        '200':
          $ref: '#/components/responses/RolesListResponse'
      tags:
        - Account Roles
    post:
      summary: Create a Role
      operationId: create-role-acc
      description: Creates a custom Role in the Account scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      responses:
        '201':
          $ref: '#/components/responses/RoleResponse'
      security:
        - x-api-key: []
      tags:
        - Account Roles
  /v1/public-access/enable:
    parameters: []
    post:
      summary: Enable Public Access for a Resource
      operationId: enable-public-access
      description: Enable Public Access for a Resource
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/PublicAccessRequest'
      responses:
        '201':
          $ref: '#/components/responses/PublicAccessResponse'
      security:
        - x-api-key: []
      x-internal: false
      tags:
        - Public Access
  /v1/analyze-access-policies:
    parameters: []
    post:
      summary: Analyze access policies within account
      operationId: analyze-account-access-policies
      description: Analyze access policies within account
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      requestBody:
        $ref: '#/components/requestBodies/AccessPolicyAnalysisRequest'
      responses:
        '200':
          $ref: '#/components/responses/AccessPolicyAnalysisResponse'
      security:
        - x-api-key: []
      x-internal: false
      tags:
        - Analyze Account Access Policy
  /v1/orgs/{org}/analyze-access-policies:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
    post:
      summary: Analyze access policies within a organization
      operationId: analyze-org-access-policies
      description: Analyze access policies within a organization
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      requestBody:
        $ref: '#/components/requestBodies/AccessPolicyAnalysisRequest'
      responses:
        '200':
          $ref: '#/components/responses/AccessPolicyAnalysisResponse'
      security:
        - x-api-key: []
      x-internal: false
      tags:
        - Analyze Organization Access Policy
  /v1/orgs/{org}/projects/{project}/analyze-access-policies:
    parameters:
      - name: org
        in: path
        required: true
        schema:
          type: string
        description: Organization identifier
      - $ref: '#/components/parameters/ProjectParam'
    post:
      summary: Analyze access policies within a project
      operationId: analyze-project-access-policies
      description: Analyze access policies within a project
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      requestBody:
        $ref: '#/components/requestBodies/AccessPolicyAnalysisRequest'
      responses:
        '200':
          $ref: '#/components/responses/AccessPolicyAnalysisResponse'
      security:
        - x-api-key: []
      x-internal: false
      tags:
        - Analyze Project Access Policy
  /v1/public-access/is-resource-public:
    parameters: []
    post:
      summary: Returns if a Resource is public or not
      operationId: is-resource-public
      description: 'Returns if a Resource is public or not '
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/PublicAccessRequest'
      responses:
        '200':
          $ref: '#/components/responses/PublicAccessResponse'
      security:
        - x-api-key: []
      tags:
        - Public Access
      x-internal: true
  /v1/public-access/check-public:
    parameters: []
    post:
      summary: Returns if a list of Resource is public or not
      operationId: check-public
      description: 'Returns if a list of Resources is public or not '
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/PublicAccessCheckRequest'
      responses:
        '200':
          $ref: '#/components/responses/PublicAccessCheckResponse'
      security:
        - x-api-key: []
      tags:
        - Public Access
      x-internal: true
  /v1/public-access/disable:
    parameters: []
    put:
      summary: Disable public access on a Resource
      operationId: disable-public-access
      responses:
        '200':
          $ref: '#/components/responses/PublicAccessResponse'
      description: Disable Public Access
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: account
          description: Account Identifier
        - schema:
            type: string
          in: query
          name: org
          description: Organisation Identifier
        - schema:
            type: string
          in: query
          name: project
          description: Project Identifier
        - schema:
            type: string
          in: query
          name: resource_type
          description: Resource type
        - schema:
            type: string
          in: query
          name: resource_identifier
          description: Resource Identifier
      tags:
        - Public Access
      x-internal: true
  /v1/roles/{role}:
    parameters:
      - $ref: '#/components/parameters/RoleParam'
    get:
      summary: Retrieve a Role
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      operationId: get-role-acc
      description: Retrieves a Role from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Roles
    put:
      summary: Update a Role
      operationId: update-role-acc
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      description: Updates a Role from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      tags:
        - Account Roles
    delete:
      summary: Delete a Role
      operationId: delete-role-acc
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      description: Deletes a custom Role from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Roles
  /v1/orgs/{org}/roles:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
    get:
      summary: List Roles
      tags:
        - Organization Roles
      responses:
        '200':
          $ref: '#/components/responses/RolesListResponse'
      operationId: list-roles-org
      description: Returns a list of Roles present in the Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
    post:
      summary: Create a Role
      operationId: create-role-org
      responses:
        '201':
          $ref: '#/components/responses/RoleResponse'
      description: Creates a custom Role in the Organization scope.
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Organization Roles
  /v1/orgs/{org}/roles/{role}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/RoleParam'
    get:
      summary: Retrieve a Role
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      operationId: get-role-org
      description: Retrieves a Role from Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Organization Roles
    put:
      summary: Update a Role
      operationId: update-role-org
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      description: Updates a Role from Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      tags:
        - Organization Roles
    delete:
      summary: Delete a Role
      operationId: delete-role-org
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      description: Deletes a custom Role from Organization scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Organization Roles
  /v1/orgs/{org}/projects/{project}/roles:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    get:
      summary: List Roles
      responses:
        '200':
          $ref: '#/components/responses/RolesListResponse'
      operationId: list-roles-project
      description: Returns a list of Roles present in the Project scope.
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      tags:
        - Project Roles
    post:
      summary: Create a Role
      operationId: create-role-project
      responses:
        '201':
          $ref: '#/components/responses/RoleResponse'
      description: Creates a custom Role in the Project scope.
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Roles
  /v1/orgs/{org}/projects/{project}/roles/{role}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/RoleParam'
    get:
      summary: Retrieve a Role
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      operationId: get-role-project
      security:
        - x-api-key: []
      description: Retrieves a Role from Project scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Roles
    put:
      summary: Update a Role
      operationId: update-role-project
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateRoleRequest'
      description: Updates a Role from Project scope.
      tags:
        - Project Roles
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    delete:
      summary: Delete a Role
      operationId: delete-role-project
      responses:
        '200':
          $ref: '#/components/responses/RoleResponse'
      description: Deletes a custom Role from Project scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Roles
  /v1/role-assignments:
    get:
      summary: List role assignments
      tags:
        - Account Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentListResponse'
      operationId: get-account-scoped-role-assignments
      description: Retrieves the information of the role assignments
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
    post:
      summary: Create a role assignment
      operationId: create-account-scoped-role-assignments
      responses:
        '201':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: Create a role assignment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Role Assignments
      requestBody:
        $ref: '#/components/requestBodies/RoleAssignmentRequest'
      security:
        - x-api-key: []
  /v1/role-assignments/{role-assignment}:
    parameters:
      - schema:
          type: string
        name: role-assignment
        in: path
        required: true
        description: Role assignment identifier
    get:
      summary: Retrieve a role assignment
      tags:
        - Account Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      operationId: get-account-scoped-role-assignment
      description: >-
        Retrieves the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    delete:
      summary: Delete a role assignment
      operationId: delete-account-scoped-role-assignment
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: >-
        Deletes the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Role Assignments
      security:
        - x-api-key: []
  /v1/orgs/{org}/role-assignments:
    get:
      summary: List role assignments
      tags:
        - Org Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentListResponse'
      operationId: get-org-scoped-role-assignments
      description: Retrieves the information of the role assignments
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
    post:
      summary: Create a role assignment
      operationId: create-org-scoped-role-assignments
      responses:
        '201':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: Create a role assignment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Role Assignments
      requestBody:
        $ref: '#/components/requestBodies/RoleAssignmentRequest'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgParam'
  /v1/orgs/{org}/role-assignments/{role-assignment}:
    parameters:
      - schema:
          type: string
        name: role-assignment
        in: path
        required: true
        description: Role assignment identifier
      - $ref: '#/components/parameters/OrgParam'
    get:
      summary: Retrieve a role assignment
      tags:
        - Org Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      operationId: get-org-scoped-role-assignment
      description: >-
        Retrieves the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    delete:
      summary: Delete a role assignment
      operationId: delete-org-scoped-role-assignment
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: >-
        Deletes the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Role Assignments
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/role-assignments:
    get:
      summary: List role assignments
      tags:
        - Project Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentListResponse'
      operationId: get-project-scoped-role-assignments
      description: Retrieves the information of the role assignments
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
    post:
      summary: Create a role assignment
      operationId: create-project-scoped-role-assignments
      responses:
        '201':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: Create a role assignment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Role Assignments
      requestBody:
        $ref: '#/components/requestBodies/RoleAssignmentRequest'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
  /v1/orgs/{org}/projects/{project}/role-assignments/{role-assignment}:
    parameters:
      - schema:
          type: string
        name: role-assignment
        in: path
        required: true
        description: Role assignment identifier
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    get:
      summary: Retrieve a role assignment
      tags:
        - Project Role Assignments
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      operationId: get-project-scoped-role-assignment
      description: >-
        Retrieves the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    delete:
      summary: Delete a role assignment
      operationId: delete-project-scoped-role-assignment
      responses:
        '200':
          $ref: '#/components/responses/RoleAssignmentResponse'
      description: >-
        Deletes the information of the role assignment with the matching role
        assignment identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Role Assignments
      security:
        - x-api-key: []
  /v1/role-assignments/count:
    get:
      summary: Get role assignments count for an account
      tags:
        - Account Role Assignments
      responses:
        '200':
          description: Role assignments count for the account.
          content:
            application/json:
              schema:
                type: integer
                format: int32
      operationId: get-role-assignments-count
      x-stoplight:
        id: 7roi0ybzyljem
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Get role assignments count for an account.
      x-internal: true
      security:
        - x-api-key: []
  /v1/roles/count:
    get:
      summary: Get roles count for an account
      tags:
        - Account Roles
      responses:
        '200':
          description: Roles count for the account.
          content:
            application/json:
              schema:
                type: integer
                format: int32
      operationId: get-roles-count
      x-stoplight:
        id: 7roi0ybzyljem
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Get roles count for an account.
      x-internal: true
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/services/{service}:
    get:
      summary: Retrieve a service
      operationId: get-service
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified service
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      tags:
        - Project Services
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/ServicePathParam'
    put:
      summary: Update Service
      operationId: update-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceUpdateRequest'
      description: Updates the specified service
      security:
        - x-api-key: []
      tags:
        - Project Services
    delete:
      summary: Delete a Service
      operationId: delete-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested service.
      security:
        - x-api-key: []
      tags:
        - Project Services
  /v1/orgs/{org}/projects/{project}/services:
    get:
      summary: List Services
      responses:
        '200':
          $ref: '#/components/responses/ServiceListResponse'
      operationId: get-services
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/ServiceIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list of services that you are permitted to use in a pipeline.
        - $ref: '#/components/parameters/DeploymentType'
        - schema:
            type: boolean
          name: git_ops_enabled
          in: query
          description: Enables you to use the service in Harness GitOps PR pipelines.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the services for which you have view permissions in
        the given project.
      tags:
        - Project Services
    post:
      summary: Create a Service
      operationId: create-service
      responses:
        '201':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceCreateRequest'
      description: Creates a service
      security:
        - x-api-key: []
      tags:
        - Project Services
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
  /v1/orgs/{org}/services/{service}:
    get:
      summary: Retrieve a service
      operationId: get-org-scoped-service
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified service
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      tags:
        - Org Services
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ServicePathParam'
    put:
      summary: Update Service
      operationId: update-org-scoped-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceUpdateRequest'
      description: Updates the specified service
      security:
        - x-api-key: []
      tags:
        - Org Services
    delete:
      summary: Delete a service
      operationId: delete-org-scoped-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested service
      security:
        - x-api-key: []
      tags:
        - Org Services
  /v1/orgs/{org}/services:
    get:
      summary: List Services
      responses:
        '200':
          $ref: '#/components/responses/ServiceListResponse'
      operationId: get-org-scoped-services
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/ServiceIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list of services that you are permitted to use in a pipeline.
        - $ref: '#/components/parameters/DeploymentType'
        - schema:
            type: boolean
          name: git_ops_enabled
          in: query
          description: Enables you to use the service in Harness GitOps PR pipelines.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the services for which you have view permissions in
        the given project.
      tags:
        - Org Services
    post:
      summary: Create a service
      operationId: create-org-scoped-service
      responses:
        '201':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceCreateRequest'
      description: Creates a service
      security:
        - x-api-key: []
      tags:
        - Org Services
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
  /v1/services/{service}:
    get:
      summary: Retrieve a service
      operationId: get-account-scoped-service
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified service
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      tags:
        - Account Services
    parameters:
      - $ref: '#/components/parameters/ServicePathParam'
    put:
      summary: Update service
      operationId: update-account-scoped-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceUpdateRequest'
      description: Updates the specified service
      security:
        - x-api-key: []
      tags:
        - Account Services
    delete:
      summary: Delete a service
      operationId: delete-account-scoped-service
      responses:
        '200':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested service
      security:
        - x-api-key: []
      tags:
        - Account Services
  /v1/services:
    get:
      summary: List services
      responses:
        '200':
          $ref: '#/components/responses/ServiceListResponse'
      operationId: get-account-scoped-services
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/ServiceIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list of services that you are permitted to use in a pipeline.
        - $ref: '#/components/parameters/DeploymentType'
        - schema:
            type: boolean
          name: git_ops_enabled
          in: query
          description: Enables you to use the service in Harness GitOps PR pipelines.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the services for which you have view permissions in
        the given project.
      tags:
        - Account Services
    post:
      summary: Create a service
      operationId: create-account-scoped-service
      responses:
        '201':
          $ref: '#/components/responses/ServiceResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ServiceCreateRequest'
      description: Creates a service
      security:
        - x-api-key: []
      tags:
        - Account Services
    parameters: []
  /v1/creditOverUsage/{accountIdentifier}:
    get:
      summary: Get over usage count of Credits for a given account
      tags:
        - Credits OverUsage Data By Account
      responses:
        '200':
          $ref: '#/components/schemas/CreditOverUsage'
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      operationId: credits-overusage
      x-internal: false
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
  /v1/subscription/{accountIdentifier}:
    get:
      summary: Retrieve type of licenses for an account
      tags:
        - Account License Type
      operationId: get-license-type
      responses:
        '200':
          $ref: '#/components/schemas/LicenseTypeResponse'
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-internal: false
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
  /v1/subscription/devops/{accountIdentifier}:
    get:
      summary: >-
        Get subscriptions information for the Devops Essentials package for an
        accountIdentifier.
      tags:
        - Devops Essentials License Data By Account
      responses:
        '200':
          $ref: '#/components/schemas/DevopsEssentialsResponse'
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
        x-internal: false
      operationId: get-devops-essentials-license
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
  /v1/orgs:
    post:
      summary: Create an organization [Beta]
      operationId: create-organization
      responses:
        '201':
          $ref: '#/components/responses/OrganizationResponse'
      description: Creates a new organization.
      security:
        - x-api-key: []
      tags:
        - Organization
      requestBody:
        $ref: '#/components/requestBodies/CreateOrganizationRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    get:
      summary: List organizations [Beta]
      operationId: get-organizations
      responses:
        '200':
          $ref: '#/components/responses/OrganizationListResponse'
      description: Retrieves the information of the organizations.
      security:
        - x-api-key: []
      tags:
        - Organization
      parameters:
        - $ref: '#/components/parameters/OrgsQueryParam'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
    parameters: []
  /v1/orgs/{org}:
    parameters:
      - schema:
          type: string
        name: org
        in: path
        required: true
        description: Organization identifier
    get:
      summary: Retrieve an organization [Beta]
      responses:
        '200':
          $ref: '#/components/responses/OrganizationResponse'
      operationId: get-organization
      description: >-
        Retrieves the information of the organization with the matching
        organization identifier.
      security:
        - x-api-key: []
      tags:
        - Organization
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Update an organization [Beta]
      operationId: update-organization
      responses:
        '200':
          $ref: '#/components/responses/OrganizationResponse'
      description: >-
        Updates the information of the organization with the matching
        organization identifier.
      security:
        - x-api-key: []
      tags:
        - Organization
      requestBody:
        $ref: '#/components/requestBodies/UpdateOrganizationRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    delete:
      summary: Delete an organization [Beta]
      operationId: delete-organization
      responses:
        '200':
          $ref: '#/components/responses/OrganizationResponse'
      description: >-
        Deletes the information of the organization with the matching
        organization identifier.
      security:
        - x-api-key: []
      tags:
        - Organization
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/orgs/{org}/projects:
    post:
      summary: Create a project
      responses:
        '201':
          $ref: '#/components/responses/ProjectResponse'
      operationId: create-org-scoped-project
      security:
        - x-api-key: []
      description: Creates a new project
      requestBody:
        $ref: '#/components/requestBodies/CreateProjectRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Project
    get:
      summary: List projects
      responses:
        '200':
          $ref: '#/components/responses/ProjectListResponse'
      operationId: get-org-scoped-projects
      description: Retrieves the information of the projects.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/ProjectsQueryParam'
        - schema:
            type: boolean
            default: true
          in: query
          name: has_module
          description: >-
            This boolean specifies whether to filter projects which has the
            module of type passed in the moduleType parameter or not
        - schema:
            type: string
          in: query
          name: module_type
          description: Project's module type
        - $ref: '#/components/parameters/onlyFavorites'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      tags:
        - Org Project
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
  /v1/orgs/{org}/projects/{project}:
    get:
      summary: Retrieve a project
      responses:
        '200':
          $ref: '#/components/responses/ProjectResponse'
      operationId: get-org-scoped-project
      description: >-
        Retrieves the information of the project with the matching project
        identifier.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Project
    put:
      summary: Update a project
      responses:
        '200':
          $ref: '#/components/responses/ProjectResponse'
      operationId: update-org-scoped-project
      description: >-
        Updates the information of the project with the matching project
        identifier.
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/UpdateProjectRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Project
    delete:
      summary: Delete a project
      responses:
        '200':
          $ref: '#/components/responses/ProjectResponse'
      operationId: delete-org-scoped-project
      description: >-
        Deletes the information of the project with the matching project
        identifier.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Project
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
  /v1/ip-allowlist:
    post:
      summary: Create a IP Allowlist config
      operationId: create-ip-allowlist-config
      responses:
        '201':
          $ref: '#/components/responses/IPAllowlistConfigResponse'
      description: Creates a new IP Allowlist config
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/IPAllowlistConfigRequest'
      tags:
        - IP Allowlist
      x-internal: false
    get:
      summary: List IP Allowlist Configs
      operationId: get-ip-allowlist-configs
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistConfigListResponse'
      description: Retrieves the information of the IP Allowlist Config
      parameters:
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: string
          in: query
          description: This is to filter IP allowlist configs only blocked from UI or API
          name: allowed_source_type
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: false
    parameters: []
  /v1/ip-allowlist/{ip-config-identifier}:
    get:
      summary: Retrieve a IP Allowlist config
      operationId: get-ip-allowlist-config
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified IP Allowlist config
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistConfigResponse'
      tags:
        - IP Allowlist
      x-internal: false
    parameters:
      - schema:
          type: string
        name: ip-config-identifier
        in: path
        required: true
    put:
      summary: Update IP Allowlist config
      operationId: update-ip-allowlist-config
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistConfigResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/IPAllowlistConfigRequest'
      description: Updates the specified IP Allowlist config
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: false
    delete:
      summary: Delete an IP Allowlist config
      operationId: delete-ip-allowlist-config
      responses:
        '204':
          description: No Content
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Deletes the specified IP Allowlist config
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: false
  /v1/ip-allowlist/validate-unique-identifier/{ip-config-identifier}:
    get:
      summary: Validate unique IP Allowlist config identifier
      operationId: validate-unique-ip-allowlist-config-identifier
      description: Checks whether the IP Allowlist config identifier is unique or not
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: false
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistValidateUniqueIdentifierResponse'
    parameters:
      - schema:
          type: string
        name: ip-config-identifier
        in: path
        required: true
  /v1/ip-allowlist/validate/ip-address:
    get:
      summary: Validate IP address lies in a specified range or not
      operationId: validate-ip-address-allowlisted-or-not
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistConfigValidateResponse'
      description: >-
        Checks whether the IP address is allowed or not. It also supports
        checking against a specific IP block range.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: ip_address
          description: This is the IP address that needs to be checked if allowed or not
          required: true
        - schema:
            type: string
          in: query
          name: custom_ip_address_block
          description: >-
            This is the IP address or block of IP address against which we need
            to verify if a given IP address is allowed or not. If not passed we
            do the validation against the IP configs within Harness.
        - schema:
            type: boolean
            default: false
          in: query
          name: include_disabled_configs
          description: >-
            This setting controls the visibility of IP allowlist configurations.
            When set to 'true', it displays both enabled and disabled
            configurations. When set to 'false' or left unset, it displays only
            the enabled configurations.
          allowReserved: false
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: false
    parameters: []
  /v1/ip-allowlist/allowed/ip-address:
    get:
      summary: Check if IP address is allowed or not
      operationId: allowed-ip-address
      responses:
        '200':
          $ref: '#/components/responses/IPAllowlistConfigValidateResponse'
      description: Checks whether the IP address is allowed or not.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: ip_address
          description: This is the IP address that needs to be checked if allowed or not
          required: true
      security:
        - x-api-key: []
      tags:
        - IP Allowlist
      x-internal: true
    parameters: []
  /v1/secrets:
    post:
      summary: Create a secret
      operationId: create-account-scoped-secret
      responses:
        '201':
          $ref: '#/components/responses/SecretResponse'
      description: Creates a new secret
      parameters:
        - $ref: '#/components/parameters/PrivateSecret'
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      tags:
        - Account Secret
    get:
      summary: List secrets
      operationId: get-account-scoped-secrets
      responses:
        '200':
          $ref: '#/components/responses/SecretListResponse'
      description: Retrieves the information of the secrets.
      parameters:
        - schema:
            type: array
            items:
              type: string
          in: query
          name: secret
          description: Identifier field of secrets
        - schema:
            type: array
            items:
              type: string
              enum:
                - SSHKeyPath
                - SSHKeyReference
                - SSHPassword
                - SSHKerberosTGTKeyTabFile
                - SSHKerberosTGTPassword
                - SecretFile
                - SecretText
                - WinRmTGTKeyTabFile
                - WinRmTGTPassword
                - WinRmNTLM
          in: query
          name: type
          description: Secret types on which the filter will be applied
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      tags:
        - Account Secret
      security:
        - x-api-key: []
    parameters: []
  /v1/secrets/validate-secret-ref:
    post:
      summary: Validate secret reference
      operationId: validate-account-secret-ref
      description: Validates if the secret at the secretManager path can be referenced
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Account Secret
      requestBody:
        $ref: '#/components/requestBodies/SecretValidationRequest'
      responses:
        '200':
          $ref: '#/components/responses/SecretValidationResponse'
    parameters: []
  /v1/orgs/{org}/secrets:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    post:
      summary: Create a secret
      operationId: create-org-scoped-secret
      responses:
        '201':
          $ref: '#/components/responses/SecretResponse'
      description: Creates a new secret
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      parameters:
        - $ref: '#/components/parameters/PrivateSecret'
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Secret
      security:
        - x-api-key: []
    get:
      summary: List secrets
      operationId: get-org-scoped-secrets
      responses:
        '200':
          $ref: '#/components/responses/SecretListResponse'
      description: Retrieves the information of the secrets.
      parameters:
        - schema:
            type: array
            items:
              type: string
          in: query
          name: secret
          description: Identifier field of secrets
        - schema:
            type: array
            items:
              type: string
              enum:
                - SSHKeyPath
                - SSHKeyReference
                - SSHPassword
                - SSHKerberosTGTKeyTabFile
                - SSHKerberosTGTPassword
                - SecretFile
                - SecretText
                - WinRmTGTKeyTabFile
                - WinRmTGTPassword
                - WinRmNTLM
          in: query
          name: type
          description: Secret types on which the filter will be applied
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      tags:
        - Org Secret
      security:
        - x-api-key: []
  /v1/orgs/{org}/secrets/validate-secret-ref:
    post:
      summary: Validate secret reference
      operationId: validate-org-secret-ref
      description: Validates if the secret at the secretManager path can be referenced
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/SecretValidationRequest'
      responses:
        '200':
          $ref: '#/components/responses/SecretValidationResponse'
      tags:
        - Org Secret
    parameters:
      - schema:
          type: string
        name: org
        in: path
        required: true
        description: Identifier field of the organization the resource is scoped to
  /v1/orgs/{org}/projects/{project}/secrets:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    post:
      summary: Create a secret
      operationId: create-project-scoped-secret
      responses:
        '201':
          $ref: '#/components/responses/SecretResponse'
      description: Creates a new secret
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      parameters:
        - $ref: '#/components/parameters/PrivateSecret'
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Secret
      security:
        - x-api-key: []
    get:
      summary: List secrets
      operationId: get-project-scoped-secrets
      responses:
        '200':
          $ref: '#/components/responses/SecretListResponse'
      description: Retrieves the information of the secrets.
      parameters:
        - schema:
            type: array
            items:
              type: string
          in: query
          name: secret
          description: Identifier field of secrets
        - schema:
            type: array
            items:
              type: string
              enum:
                - SSHKeyPath
                - SSHKeyReference
                - SSHPassword
                - SSHKerberosTGTKeyTabFile
                - SSHKerberosTGTPassword
                - SecretFile
                - SecretText
                - WinRmTGTKeyTabFile
                - WinRmTGTPassword
                - WinRmNTLM
          in: query
          name: type
          description: Secret types on which the filter will be applied
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      tags:
        - Project Secret
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/secrets/validate-secret-ref:
    post:
      summary: Validate secret reference
      operationId: validate-project-secret-ref
      description: Validates if the secret at the secretManager path can be referenced
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/SecretValidationRequest'
      responses:
        '200':
          $ref: '#/components/responses/SecretValidationResponse'
      tags:
        - Project Secret
    parameters:
      - schema:
          type: string
        name: org
        in: path
        required: true
        description: Identifier field of the organization the resource is scoped to
      - schema:
          type: string
        name: project
        in: path
        required: true
        description: Identifier field of the project to which the resource is scoped.
  /v1/secrets/{secret}:
    parameters:
      - schema:
          type: string
        name: secret
        in: path
        required: true
        description: Identifier field of the secret
    get:
      summary: Retrieve a secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      operationId: get-account-scoped-secret
      description: Retrieves the information of the secret.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Secret
      security:
        - x-api-key: []
    delete:
      summary: Deletes a secret
      tags:
        - Account Secret
      operationId: delete-account-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Deletes the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    put:
      summary: Update a secret
      operationId: update-account-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Secret
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      security:
        - x-api-key: []
  /v1/orgs/{org}/secrets/{secret}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: secret
        in: path
        required: true
        description: Identifier field of the secret
    get:
      summary: Retrieve a secret
      tags:
        - Org Secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      operationId: get-org-scoped-secret
      description: Retrieves the information of the secret.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    delete:
      summary: Delete a secret
      tags:
        - Org Secret
      operationId: delete-org-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Deletes the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    put:
      summary: Update a secret
      operationId: update-org-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      tags:
        - Org Secret
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/secrets/{secret}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: secret
        in: path
        required: true
        description: Identifier field of the secret
    get:
      summary: Retrieve a secret
      tags:
        - Project Secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      operationId: get-project-scoped-secret
      description: Retrieves the information of the secret.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    delete:
      summary: Delete a secret
      tags:
        - Project Secret
      operationId: delete-project-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Deletes the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
    put:
      summary: Update a secret
      operationId: update-project-scoped-secret
      responses:
        '200':
          $ref: '#/components/responses/SecretResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/SecretRequest'
      tags:
        - Project Secret
      security:
        - x-api-key: []
  /v1/favorites:
    post:
      summary: Create a favorite at account level
      operationId: create-account-favorite
      description: Creates favorite resource of a user at account level
      requestBody:
        $ref: '#/components/requestBodies/FavoriteRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      responses:
        '201':
          $ref: '#/components/responses/FavoriteResponse'
      tags:
        - Account Favorites
      x-internal: true
  /v1/favorites/{user-id}:
    parameters:
      - $ref: '#/components/parameters/UserIdPathParam'
    get:
      summary: Retrieve a favorite resources of a user at account level
      operationId: get-account-favorites
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
      description: Retrieves the favorite resource of a user at account level
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/FavoriteListResponse'
      tags:
        - Account Favorites
      x-internal: true
    delete:
      summary: Delete a account level favorite
      operationId: delete-account-favorite
      responses:
        '204':
          description: No Content
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
        - $ref: '#/components/parameters/ResourceId'
      security:
        - x-api-key: []
      tags:
        - Account Favorites
      description: Deletes the requested favorite at account level.
      x-internal: true
  /v1/orgs/{org}/favorites:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    post:
      summary: Create a favorite at org level
      operationId: create-org-favorite
      description: Creates favorite resource of a user at organisation level
      requestBody:
        $ref: '#/components/requestBodies/FavoriteRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      responses:
        '201':
          $ref: '#/components/responses/FavoriteResponse'
      tags:
        - Org Favorites
      x-internal: true
  /v1/orgs/{org}/favorites/{user-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/UserIdPathParam'
    get:
      summary: Retrieve a favorite resources of a user at organization level
      operationId: get-org-favorites
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
      description: Retrieves the favorite resource of a user at organization level
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/FavoriteListResponse'
      tags:
        - Org Favorites
      x-internal: true
    delete:
      summary: Delete a org level favorite
      operationId: delete-org-favorite
      responses:
        '204':
          description: No Content
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
        - $ref: '#/components/parameters/ResourceId'
      description: Deletes the requested favorite at organization level.
      security:
        - x-api-key: []
      tags:
        - Org Favorites
      x-internal: true
  /v1/orgs/{org}/projects/{project}/favorites:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    post:
      summary: Create a favorite at project level
      operationId: create-project-favorite
      description: Creates favorite resource of a user at project level
      requestBody:
        $ref: '#/components/requestBodies/FavoriteRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      responses:
        '201':
          $ref: '#/components/responses/FavoriteResponse'
      tags:
        - Project Favorites
      x-internal: true
  /v1/orgs/{org}/projects/{project}/favorites/{user-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/UserIdPathParam'
    get:
      summary: Retrieve a favorite resources of a user at project level
      operationId: get-project-favorites
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
      description: Retrieves the favorite resource of a user at project level
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/FavoriteListResponse'
      tags:
        - Project Favorites
      x-internal: true
    delete:
      summary: Delete a project level favorite
      operationId: delete-project-favorite
      responses:
        '204':
          description: No Content
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ResourceType'
        - $ref: '#/components/parameters/ResourceId'
      description: Deletes the requested favorite at project level.
      security:
        - x-api-key: []
      tags:
        - Project Favorites
      x-internal: true
  /v1/module-versions:
    get:
      summary: List Module Versions
      tags:
        - Module Versions
      responses:
        '200':
          $ref: '#/components/responses/ModuleVersionsListResponse'
      operationId: list-module-versions
      description: Lists Versions of different Modules.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
      x-internal: true
  /v1/rancher/connectors/{connector}/clusters:
    parameters:
      - $ref: '#/components/parameters/ConnectorPathParam'
    get:
      summary: List rancher clusters using account level connector
      tags:
        - Account Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-account-scoped-rancher-clusters-using-connector
      description: List rancher clusters using the given account level rancher connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
  /v1/orgs/{org}/rancher/connectors/{connector}/clusters:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ConnectorPathParam'
    get:
      summary: List rancher clusters using org level connector
      tags:
        - Org Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-org-scoped-rancher-clusters-using-connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: List rancher clusters using the given org level rancher connector
  /v1/orgs/{org}/projects/{project}/rancher/connectors/{connector}/clusters:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/ConnectorPathParam'
    get:
      summary: List rancher clusters using project level connector
      tags:
        - Project Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-project-scoped-rancher-clusters-using-connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: List rancher clusters using the given project level rancher connector
  /v1/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters:
    parameters:
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    get:
      summary: List rancher clusters using account level env and infra def
      tags:
        - Account Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-account-scoped-rancher-clusters-using-env-and-infra
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        List rancher clusters using the given account level environment and
        infrastructure definition.
  /v1/orgs/{org}/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    get:
      summary: List rancher clusters using org level env and infra def
      tags:
        - Org Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-org-scoped-rancher-clusters-using-env-and-infra
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        List rancher clusters using the given org level environment and
        infrastructure definition.
  /v1/orgs/{org}/projects/{project}/rancher/environments/{environment}/infrastructure-definitions/{infrastructure-definition}/clusters:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    get:
      summary: List rancher clusters using project level env and infra def
      tags:
        - Project Rancher Infrastructure
      responses:
        '200':
          $ref: '#/components/responses/RancherListClustersResponse'
      operationId: list-project-scoped-rancher-clusters-using-env-and-infra
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        List rancher clusters using the given project level environment and
        infrastructure definition.
  /v1/orgs/{org}/projects/{project}/services/{service}/primary-manifests:
    parameters:
      - $ref: '#/components/parameters/ServicePathParam'
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: List primary manifests of a project scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      operationId: get-primary-manifests
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in a project-scoped service.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Project Services
      x-internal: true
    post:
      summary: List primary manifests of a project scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in a project-scoped service.
      operationId: post-primary-manifests
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/GitEntityFindInfoRequestBody'
      security:
        - x-api-key: []
      tags:
        - Project Services
      x-internal: true
  /v1/orgs/{org}/services/{service}/primary-manifests:
    parameters:
      - $ref: '#/components/parameters/ServicePathParam'
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: List primary manifests of a org scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      operationId: get-org-scoped-primary-manifests
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in an org-scoped service.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Org Services
      x-internal: true
    post:
      summary: List primary manifests of a org scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in an org-scoped service.
      operationId: post-org-scoped-primary-manifests
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/GitEntityFindInfoRequestBody'
      security:
        - x-api-key: []
      tags:
        - Org Services
      x-internal: true
  /v1/services/{service}/primary-manifests:
    parameters:
      - $ref: '#/components/parameters/ServicePathParam'
    get:
      summary: List primary manifests of a account scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      operationId: get-account-scoped-primary-manifests
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in an account-scoped service.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Account Services
      x-internal: true
    post:
      summary: List primary manifests of a account scoped service
      responses:
        '200':
          $ref: '#/components/responses/ManifestsResponseDTO'
      description: >-
        Returns a list of eligible primary manifests from all configured
        manifest in an account-scoped service.
      operationId: post-account-scoped-primary-manifests
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/GitEntityFindInfoRequestBody'
      security:
        - x-api-key: []
      tags:
        - Account Services
      x-internal: true
  /v1/eula/sign:
    post:
      summary: Sign an End User License Agreement
      operationId: sign-eula
      responses:
        '200':
          $ref: '#/components/responses/EulaSignResponse'
      description: Sign an End User License Agreement.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/EulaSignRequest'
      tags:
        - EULA
      x-internal: false
  /v1/eula/validate-sign:
    get:
      summary: Validate specified agreement is signed or not
      operationId: validate-eula-sign
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/AgreementType'
      description: >-
        Check whether End User License Agreement has been signed for specified
        agreement type.
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EulaSignResponse'
      tags:
        - EULA
      x-internal: false
  /v1/gitx-webhooks:
    post:
      summary: Create a GitX webhook at Account level
      operationId: create-gitx-webhook
      responses:
        '201':
          $ref: '#/components/responses/CreateGitXWebhookResponse'
      description: Create GitXWebhook at account level
      security:
        - x-api-key: []
      tags:
        - GitX Webhooks
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateGitXWebhookRequest'
      x-internal: false
    get:
      summary: Lists all the GitX Webhooks at Account level
      operationId: list-gitx-webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookResponse'
      description: List GitX webhooks
      security:
        - x-api-key: []
      tags:
        - GitX Webhooks
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
      x-internal: false
  /v1/gitx-webhooks/{gitx-webhook}:
    parameters:
      - $ref: '#/components/parameters/GitXWebhookIdentifier'
    get:
      summary: Fetch GitX Webhook at Account level
      responses:
        '200':
          $ref: '#/components/responses/GetGitXWebhookResponse'
      operationId: get-gitx-webhook
      description: Fetch a gitx webhook
      x-internal: false
      security:
        - x-api-key: []
      tags:
        - GitX Webhooks
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Updates a GitX Webhook at Account level
      operationId: update-gitx-webhook
      responses:
        '200':
          $ref: '#/components/responses/UpdateGitXWebhookResponse'
      security:
        - x-api-key: []
      tags:
        - GitX Webhooks
      description: Update a Gitx webhook
      requestBody:
        $ref: '#/components/requestBodies/UpdateGitXWebhookRequest'
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    delete:
      summary: Deletes a GitX Webhook at Account level
      operationId: delete-gitx-webhook
      responses:
        '204':
          description: No Content
      description: Deletes a gitx webhooks
      security:
        - x-api-key: []
      tags:
        - GitX Webhooks
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: false
  /v1/gitx-webhook-events:
    get:
      summary: Lists all the GitX Webhooks events at Account level
      tags:
        - GitX Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookEventResponse'
      operationId: list-gitx-webhook-events
      description: List GitX webhook Events
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
        - schema:
            type: integer
            format: int64
          in: query
          name: event_start_time
        - schema:
            type: integer
            format: int64
          in: query
          name: event_end_time
        - schema:
            type: string
          in: query
          name: repo_name
        - schema:
            type: string
          in: query
          name: file_path
        - schema:
            type: string
          in: query
          name: event_identifier
        - schema:
            type: array
            items:
              type: string
              enum:
                - SKIPPED
                - FAILED
                - PROCESSING
                - SUCCESSFUL
                - QUEUED
                - WARNING
                - UNKNOWN
          in: query
          name: event_status
        - schema:
            type: string
          in: query
          name: connector_ref
        - schema:
            type: boolean
          in: query
          name: include_parent_scope
        - schema:
            type: string
          in: query
          name: commit_id
        - schema:
            type: string
          in: query
          name: branch
      x-internal: true
  /v1/kubernetes/releases/service-mapping:
    get:
      summary: List service and environment details using namespace and releasename
      tags:
        - K8s Release Service Mapping
      responses:
        '200':
          $ref: '#/components/responses/ReleaseDetailsResponse'
      operationId: get-v1-releaseDetails
      description: >-
        Return details of service and environment mapped to pods namespace and
        release-name for a given account.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/BatchReleaseDetailsRequest'
    parameters: []
  /v1/orgs/{org}/gitx-webhooks:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: Lists all the GitX Webhooks at Org level
      tags:
        - Org Gitx Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookResponse'
      operationId: list-org-gitx-webhooks
      description: List org level GitX webhooks
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
      x-internal: false
    post:
      summary: Create Org Level GitX webhook
      operationId: create-org-gitx-webhook
      responses:
        '200':
          $ref: '#/components/responses/CreateGitXWebhookResponse'
      description: Create GitXWebhook at org level
      tags:
        - Org Gitx Webhooks
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateGitXWebhookRequest'
  /v1/orgs/{org}/gitx-webhooks/{gitx-webhook}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/GitXWebhookIdentifier'
    get:
      summary: Fetch GitX Webhook at org level
      tags:
        - Org Gitx Webhooks
      responses:
        '200':
          $ref: '#/components/responses/GetGitXWebhookResponse'
      operationId: get-org-gitx-webhook
      description: Fetch a org level gitx webhook
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      x-internal: false
    put:
      summary: Updates a GitX Webhook at org level
      operationId: update-org-gitx-webhook
      responses:
        '200':
          $ref: '#/components/responses/UpdateGitXWebhookResponse'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Update a org level Gitx webhook
      requestBody:
        $ref: '#/components/requestBodies/UpdateGitXWebhookRequest'
      tags:
        - Org Gitx Webhooks
      x-internal: false
    delete:
      summary: Deletes a GitX Webhook at org level
      operationId: delete-org-gitx-webhook
      responses:
        '204':
          description: No Content
      description: Deletes a org level gitx webhooks
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Gitx Webhooks
      x-internal: false
  /v1/orgs/{org}/gitx-webhook-events:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: Lists all the GitX Webhooks events at org level
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookEventResponse'
      operationId: list-org-gitx-webhook-events
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
        - schema:
            type: integer
            format: int64
          in: query
          name: event_start_time
        - schema:
            type: integer
            format: int64
          in: query
          name: event_end_time
        - schema:
            type: string
          in: query
          name: repo_name
        - schema:
            type: string
          in: query
          name: file_path
        - schema:
            type: string
          in: query
          name: event_identifier
        - schema:
            type: array
            items:
              type: string
              enum:
                - SKIPPED
                - FAILED
                - PROCESSING
                - SUCCESSFUL
                - QUEUED
                - UNKNOWN
          in: query
          name: event_status
        - schema:
            type: string
          in: query
          name: connector_ref
        - schema:
            type: boolean
          in: query
          name: include_parent_scope
        - schema:
            type: string
          in: query
          name: commit_id
        - schema:
            type: string
          in: query
          name: branch
      tags:
        - Org Gitx Webhooks Events
      x-internal: true
      description: List GitX webhook Events at org level
  /v1/orgs/{org}/projects/{project}/gitx-webhooks:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: Lists all the GitX Webhooks at project level
      tags:
        - Project Gitx Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookResponse'
      operationId: list-project-gitx-webhook
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
      description: List project level GitX webhooks
      x-internal: false
    post:
      summary: Create Project level GitX webhook
      operationId: create-project-gitx-webhook
      responses:
        '200':
          $ref: '#/components/responses/CreateGitXWebhookResponse'
      description: Create GitXWebhook at project level
      requestBody:
        $ref: '#/components/requestBodies/CreateGitXWebhookRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Project Gitx Webhooks
  /v1/orgs/{org}/projects/{project}/gitx-webhooks/{gitx-webhook}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/GitXWebhookIdentifier'
    get:
      summary: Fetch GitX Webhook at project level
      tags:
        - Project Gitx Webhooks
      responses:
        '200':
          $ref: '#/components/responses/GetGitXWebhookResponse'
      operationId: get-project-gitx-webhook
      x-internal: false
      description: Fetch a project level gitx webhook
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Updates a GitX Webhook at project level
      operationId: update-project-gitx-webhook
      responses:
        '200':
          $ref: '#/components/responses/UpdateGitXWebhookResponse'
      description: Update a project level Gitx webhook
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateGitXWebhookRequest'
      tags:
        - Project Gitx Webhooks
      x-internal: false
    delete:
      summary: Deletes a GitX Webhook at project level
      operationId: delete-project-gitx-webhook
      responses:
        '204':
          description: No Content
      description: Deletes a project level gitx webhooks
      tags:
        - Project Gitx Webhooks
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/orgs/{org}/projects/{project}/gitx-webhook-events:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: Lists all the GitX Webhooks events at project level
      tags:
        - Project Gitx Webhooks Events
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookEventResponse'
      operationId: list-project-gitx-webhook-events
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - schema:
            type: string
          in: query
          name: webhook_identifier
        - schema:
            type: integer
            format: int64
          in: query
          name: event_start_time
        - schema:
            type: integer
            format: int64
          in: query
          name: event_end_time
        - schema:
            type: string
          in: query
          name: repo_name
        - schema:
            type: string
          in: query
          name: file_path
        - schema:
            type: string
          in: query
          name: event_identifier
        - schema:
            type: array
            items:
              type: string
              enum:
                - SKIPPED
                - FAILED
                - PROCESSING
                - SUCCESSFUL
                - QUEUED
                - UNKNOWN
          in: query
          name: event_status
        - schema:
            type: string
          in: query
          name: connector_ref
        - schema:
            type: boolean
          in: query
          name: include_parent_scope
        - schema:
            type: string
          in: query
          name: commit_id
        - schema:
            type: string
          in: query
          name: branch
      x-internal: true
      description: List GitX webhook Events at project level
  /v1/gitx-webhook-events/{gitx-webhook-event}:
    parameters:
      - schema:
          type: string
        name: gitx-webhook-event
        in: path
        required: true
        description: GitX Webhook Event Identifier
    patch:
      summary: Update the Webhook Event status
      operationId: patch-gitx-webhook-events-gitx-webhook-event
      responses:
        '200':
          $ref: '#/components/responses/UpdateGitXWebhookEventResponse'
      x-internal: true
      description: Update the webhook event Status
      tags:
        - GitX Webhook Event
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateGitXWebhookEventRequest'
  /v1/certificates/{certificate}:
    get:
      summary: Retrieves the specified Certificate in account scope
      tags:
        - Account Certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      operationId: get-account-scoped-certificate
      description: Retrieves the specified certificate in account scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    parameters:
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
    put:
      summary: Updates the specified Certificate in account scope
      operationId: update-account-scoped-certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      description: Updates the specified Certificate in account scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Certificate
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/UpdateCertificateRequest'
    delete:
      summary: Deletes the specified Certificate from account scope
      operationId: delete-account-scoped-certificate
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      description: Deletes the specified Certificate from account scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      x-internal: true
      tags:
        - Account Certificate
  /v1/orgs/{org}/certificates/{certificate}:
    get:
      summary: Retrieves the specified Certificate in organization scope
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      operationId: get-org-scoped-certificate
      description: Retrieves the specified certificate in org scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Certificate
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
    put:
      summary: Updates the specified Certificate in org scope
      operationId: update-org-scoped-certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      x-internal: true
      description: Updates the specified Certificate in org scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateCertificateRequest'
      tags:
        - Org Certificate
    delete:
      summary: Deletes the specified Certificate from org scope
      operationId: delete-org-scoped-certificate
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
      description: Deletes the specified Certificate from org scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      x-internal: true
      tags:
        - Org Certificate
  /v1/orgs/{org}/projects/{project}/certificates/{certificate}:
    get:
      summary: Retrieves the specified Certificate in project scope
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      operationId: get-project-scoped-certificate
      description: Retrieves the specified certificate in project scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Certificate
    parameters:
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    put:
      summary: Updates the specified Certificate in project scope
      operationId: update-project-scoped-certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateResponse'
      description: Updates the specified Certificate in project scope
      tags:
        - Project Certificate
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateCertificateRequest'
      x-internal: true
    delete:
      summary: Deletes the specified Certificate from project scope
      operationId: delete-project-scoped-certificate
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
      description: Deletes the specified Certificate from project scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      x-internal: true
      tags:
        - Project Certificate
  /v1/certificates/validate-unique-identifier/{certificate}:
    get:
      summary: >-
        Validate if the specified Certificate identifier is available for use in
        account scope
      tags:
        - Account Certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateValidateUniqueIdentifierResponse'
      operationId: validate-account-scoped-certificate-identifier
      description: >-
        Validate if the specified certificate identifier is available for use in
        account scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    parameters:
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
  /v1/orgs/{org}/certificates/validate-unique-identifier/{certificate}:
    get:
      summary: >-
        Validate if the specified Certificate identifier is available for use in
        organization scope
      responses:
        '200':
          $ref: '#/components/responses/CertificateValidateUniqueIdentifierResponse'
      operationId: validate-org-scoped-certificate-identifier
      description: >-
        Validate if the specified certificate identifier is available for use in
        organization scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Org Certificate
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
  /v1/orgs/{org}/projects/{project}/certificates/validate-unique-identifier/{certificate}:
    get:
      summary: >-
        Validate if the specified Certificate identifier is available for use in
        project scope
      responses:
        '200':
          $ref: '#/components/responses/CertificateValidateUniqueIdentifierResponse'
      operationId: validate-project-scoped-certificate-identifier
      description: >-
        Validate if the specified certificate identifier is available for use in
        project scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Project Certificate
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: certificate
        in: path
        required: true
        description: Identifier field of the certificate
  /v1/certificates:
    get:
      summary: Retrieves the list of Certificates in account scope
      tags:
        - Account Certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateListResponse'
      operationId: get-account-scoped-certificates
      description: Retrieves the list of certificates in account scope
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: include_all_available_at_scope
          description: Include all entities accessible at current scope
    post:
      summary: Creates a new Certificate in account scope
      operationId: create-account-scoped-certificates
      responses:
        '201':
          $ref: '#/components/responses/CertificateResponse'
      description: Creates a new certificate in account scope
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Certificate
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateCertificateRequest'
      x-internal: true
  /v1/orgs/{org}/certificates:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: Retrieves the list of Certificates in organization scope
      tags:
        - Org Certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateListResponse'
      operationId: get-org-scoped-certificates
      x-internal: true
      description: Retrieves the list of certificates in organization scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: include_all_available_at_scope
          description: Include all entities accessible at current scope
    post:
      summary: Creates a new Certificate in organization scope
      operationId: create-org-scoped-certificates
      responses:
        '201':
          $ref: '#/components/responses/CertificateResponse'
      description: Creates a new certificate in organization scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateCertificateRequest'
      x-internal: true
      tags:
        - Org Certificate
  /v1/orgs/{org}/projects/{project}/certificates:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: Retrieves the list of Certificates in project scope
      tags:
        - Project Certificate
      responses:
        '200':
          $ref: '#/components/responses/CertificateListResponse'
      operationId: get-project-scoped-certificates
      description: Retrieves the list of certificates in project scope
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: boolean
            default: 'false'
          in: query
          description: Include all entities accessible at current scope
          name: include_all_available_at_scope
      security:
        - x-api-key: []
    post:
      summary: Creates a new Certificate in project scope
      operationId: create-project-scoped-certificates
      responses:
        '201':
          $ref: '#/components/responses/CertificateResponse'
      description: Creates a new certificate in project scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateCertificateRequest'
      x-internal: true
      tags:
        - Project Certificate
  /v1/banners:
    get:
      summary: Retrieves the list of Banners in account scope
      tags:
        - Account Banner
      responses:
        '200':
          $ref: '#/components/responses/BannerListResponse'
      operationId: get-account-scoped-banners
      x-stoplight:
        id: ld5yy1r4xvhtt
      description: Retrieves the list of Banners in account scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
          in: query
          name: enabled
          description: Show banners with enabled field filtering
          allowEmptyValue: true
    post:
      summary: Creates a new Banner in account scope
      operationId: create-account-scoped-banners
      x-stoplight:
        id: 7qljrrvy7z0ha
      responses:
        '201':
          $ref: '#/components/responses/BannerResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateBannerRequest'
      description: Creates a new Banner in Account Scope.
      tags:
        - Account Banner
  /v1/banners/validate-unique-identifier/{bannerId}:
    parameters:
      - schema:
          type: string
        name: bannerId
        in: path
        required: true
        description: Identifier field of the BannerDTO
    get:
      summary: >-
        Validate if the specified Banner identifier is available for use in
        account scope
      tags:
        - Account Banner
      responses:
        '200':
          $ref: '#/components/responses/BannerBooleanResponse'
      operationId: validate-account-scoped-banner-identifier
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: >-
        Validate if the specified BannerDTO identifier is available for use in
        account scope
      security:
        - x-api-key: []
  /v1/banners/allowed:
    get:
      summary: Check for a current account max 5 banners are enabled or not
      tags:
        - Account Banner
      responses:
        '200':
          $ref: '#/components/responses/BannerBooleanResponse'
      operationId: banners-allowed
      description: Check for a current account max 5 banners are enabled or not.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/ldap-settings:
    post:
      summary: Create Account LDAP Settings
      operationId: create-ng-ldap-settings
      responses:
        '201':
          $ref: '#/components/responses/LdapSettingsResponse'
      x-stoplight:
        id: n04275yl5c0g3
      description: Create NG Ldap setttings
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/LdapSettingsRequest'
      tags:
        - Ldap Settings
    parameters: []
    get:
      summary: Get ldap settings for the account
      tags:
        - ldap-settings
      responses:
        '200':
          $ref: '#/components/responses/LdapSettingsResponse'
      operationId: get-account-ldap-settings
      x-stoplight:
        id: x58m09htlk67j
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/ldap-settings/{ldap-settings-id}:
    parameters:
      - schema:
          type: string
        name: ldap-settings-id
        in: path
        required: true
    get:
      summary: Get Account Ldap Settings by identifier
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapSettingsResponse'
      operationId: get-ldap-settings
      x-stoplight:
        id: 9655d1754op9c
      description: Get Account NG Ldap settings
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Update Account Ldap Settings
      operationId: update-ldap-settings
      responses:
        '200':
          $ref: '#/components/responses/LdapSettingsResponse'
      x-stoplight:
        id: 63u2f75vg76gz
      description: Update NG Ldap settings for the account
      requestBody:
        $ref: '#/components/requestBodies/LdapSettingsRequest'
      tags:
        - Ldap Settings
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    delete:
      summary: Delete Account Ldap Settings
      operationId: delete-ldap-settings
      responses:
        '204':
          description: No Content
      x-stoplight:
        id: hw0azqcr4ehs9
      description: 'Delete Account Ldap settings '
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Ldap Settings
  /v1/ldap-settings/validate/connection-settings:
    post:
      summary: Validate Ldap Connection Settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapValidateResponse'
      operationId: validate-connection-settings
      x-stoplight:
        id: 24rd6s9hp2b0a
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/LdapSettingsRequest'
  /v1/ldap-settings/validate/user-settings:
    post:
      summary: Validate Ldap User Settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapValidateResponse'
      operationId: validate-user-settings
      x-stoplight:
        id: 5fw3lcfs79wpo
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/LdapSettingsRequest'
  /v1/ldap-settings/validate/group-settings:
    post:
      summary: Validate Ldap Group Settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapValidateResponse'
      operationId: validate-group-settings
      x-stoplight:
        id: uvedvfpk6ldue
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/LdapSettingsRequest'
  /v1/ldap-settings/sync-groups:
    put:
      summary: Ldap Settings Sync User Groups
      operationId: ldap-settings-sync-groups
      responses:
        '200':
          description: OK
      x-stoplight:
        id: 7xnw3fstsnqe7
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Ldap Settings
  /v1/ldap-settings/sync-group/{group-id}:
    parameters:
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    get:
      summary: Ldap Sync Group with user group id
      tags:
        - Ldap Settings
      responses:
        '200':
          description: OK
      operationId: ldap-settings-sync-group-with-id
      x-stoplight:
        id: el2bfbrc5mubt
      description: Ldap Sync Group with user group id
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/ldap-settings/search-group/{group-id}:
    parameters:
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    get:
      summary: Search Ldap groups with matching name
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapGroupResponse'
      operationId: ldap-settings-search-group
      x-stoplight:
        id: xkgeu3g9n1ul2
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/ldap-settings/link/{group-id}:
    parameters:
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    post:
      summary: Link ldap settings to userGroup
      responses:
        '200':
          $ref: '#/components/responses/LinkGroupToLdapSettings'
      operationId: link-ldap-settings
      x-stoplight:
        id: 02mvlbq51owqg
      tags:
        - Ldap Settings
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/LinkSSOGroupRequest'
  /v1/ldap-settings/unlink/{group-id}:
    parameters:
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    post:
      summary: Unlink group from ldap settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/UnlinkGroupToLdapSettings'
      operationId: unlink-ldap-settings
      x-stoplight:
        id: jsug66jtmolab
      x-internal: true
      x-extension-1: null
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UnlinkSSOGroupRequest'
  /v1/ldap-settings/unlink/orgs/{org}/{group-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    post:
      summary: Unlink SSO Group from ldap-settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/UnlinkGroupToLdapSettings'
      operationId: unlink-ldap-settings-org
      x-stoplight:
        id: 2aznpzh987hr7
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/UnlinkSSOGroupRequest'
  /v1/ldap-settings/link/orgs/{org}/{group-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    get - copy:
      summary: Link ldap settings
      tags: []
      responses:
        '200':
          $ref: '#/components/responses/LinkGroupToLdapSettings'
      operationId: link-ldap-settings-proj
      x-internal: true
      x-extension-1: null
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    post:
      summary: Link dap settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LinkGroupToLdapSettings'
      operationId: link-ldap-settings-org
      x-stoplight:
        id: 86uren6k078bj
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/LinkSSOGroupRequest'
  /v1/ldap-settings/unlink/orgs/{org}/projects/{project}/{group-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    post:
      summary: Unlink SSO Group from ldap-settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/UnlinkGroupToLdapSettings'
      operationId: unlink-ldap-settings-proj
      x-stoplight:
        id: us9tp7838hrh2
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/UnlinkSSOGroupRequest'
  /v1/ldap-settings/link/orgs/{org}/projects/{project}/{group-id}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/UserGroupIdentifierPathParam'
    post:
      summary: Link ldap-settings
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LinkGroupToLdapSettings'
      operationId: link-ldap-settings-proj
      x-stoplight:
        id: dqjjk8ekm6qwl
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/LinkSSOGroupRequest'
  /v1/orgs/{org}/projects/{project}/environments:
    post:
      summary: Creates an Environment
      operationId: create-environment
      responses:
        '201':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentCreateRequest'
      description: Creates an Environment
      security:
        - x-api-key: []
      tags:
        - Project Environments
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: List Environments
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentListResponse'
      operationId: get-environments
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/EnvironmentIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list of environments that you are permitted to use in a pipeline.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the enviornments for which you have view permissions
        in the given project.
      tags:
        - Project Environments
  /v1/orgs/{org}/projects/{project}/environments/{environment}:
    get:
      summary: Retrieve a environment
      operationId: get-environment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified environment
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      tags:
        - Project Environments
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
    put:
      summary: Update Environment
      operationId: update-environment
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentUpdateRequest'
      description: Updates the specified environment
      security:
        - x-api-key: []
      tags:
        - Project Environments
    delete:
      summary: Delete a Environment
      operationId: delete-environment
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested environment
      security:
        - x-api-key: []
      tags:
        - Project Environments
  /v1/orgs/{org}/environments:
    post:
      summary: Creates an org scoped Environment
      operationId: create-org-scoped-environment
      responses:
        '201':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentCreateRequest'
      description: Creates an org scoped Environment
      security:
        - x-api-key: []
      tags:
        - Org Environments
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: List org scoped Environments
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentListResponse'
      operationId: get-org-scoped-environments
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/EnvironmentIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list org scoped of environments that you are permitted to use in a
            pipeline.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the org scoped environments for which you have view
        permissions in the given org.
      tags:
        - Org Environments
  /v1/orgs/{org}/environments/{environment}:
    get:
      summary: Retrieve an org scoped environment
      operationId: get-org-scoped-environment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified org scoped environment
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      tags:
        - Org Environments
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
    put:
      summary: Update org scoped Environment
      operationId: update-org-scoped-environment
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentUpdateRequest'
      description: Updates the specified org scoped environment
      security:
        - x-api-key: []
      tags:
        - Org Environments
    delete:
      summary: Delete an org scoped Environment
      operationId: delete-org-scoped-environment
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested org scoped environment
      security:
        - x-api-key: []
      tags:
        - Org Environments
  /v1/environments:
    post:
      summary: Creates an account scoped Environment
      operationId: create-account-scoped-environment
      responses:
        '201':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentCreateRequest'
      description: Creates an account scoped Environment
      security:
        - x-api-key: []
      tags:
        - Account Environments
      x-internal: false
    get:
      summary: List account scoped Environments
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentListResponse'
      operationId: get-account-scoped-environments
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/EnvironmentIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list account scoped of environments that you are permitted to use in
            a pipeline.
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the account scoped environments for which you have
        view permissions in the given account.
      tags:
        - Account Environments
  /v1/environments/{environment}:
    get:
      summary: Retrieve an account scoped environment
      operationId: get-account-scoped-environment
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified account scoped environment
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      tags:
        - Account Environments
    parameters:
      - $ref: '#/components/parameters/EnvironmentPathParam'
    put:
      summary: Update account scoped Environment
      operationId: update-account-scoped-environment
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentUpdateRequest'
      description: Updates the specified account scoped environment
      security:
        - x-api-key: []
      tags:
        - Account Environments
    delete:
      summary: Delete an account scoped Environment
      operationId: delete-account-scoped-environment
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested account scoped environment
      security:
        - x-api-key: []
      tags:
        - Account Environments
  /v1/orgs/{org}/projects/{project}/environments/{environment}/infrastructures:
    post:
      summary: Creates an Infrastructure
      operationId: create-infrastructure
      responses:
        '201':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureCreateRequest'
      description: Creates an Infrastructure
      security:
        - x-api-key: []
      tags:
        - Project Infrastructures
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
    get:
      summary: List Infrastructures
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureListResponse'
      operationId: get-infrastructures
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/InfraIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list of infrastructure that you are permitted to use in a pipeline.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: service_refs
          description: Specifies services to which scoped infra are to be fetched.
        - schema:
            type: string
          in: query
          name: template_identifier
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment.
        - schema:
            type: string
          in: query
          name: template_version
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment(deployment template).
        - $ref: '#/components/parameters/DeploymentType'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the infrastructure for which you have view permissions
        in the given project.
      tags:
        - Project Infrastructures
  /v1/orgs/{org}/projects/{project}/environments/{environment}/infrastructures/{infrastructure-definition}:
    get:
      summary: Retrieve a infrastructure
      operationId: get-infrastructure
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified infrastructure
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      tags:
        - Project Infrastructures
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    put:
      summary: Update Infrastructure
      operationId: update-infrastructure
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureUpdateRequest'
      description: Updates the specified infrastructure
      security:
        - x-api-key: []
      tags:
        - Project Infrastructures
    delete:
      summary: Delete a Infrastructure
      operationId: delete-infrastructure
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested environment
      security:
        - x-api-key: []
      tags:
        - Project Infrastructures
  /v1/orgs/{org}/environments/{environment}/infrastructures:
    post:
      summary: Creates an org scoped Infrastructure
      operationId: create-org-scoped-infrastructure
      responses:
        '201':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureCreateRequest'
      description: Creates an org scoped Infrastructure
      security:
        - x-api-key: []
      tags:
        - Org Infrastructures
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
    get:
      summary: List org scoped Infrastructures
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureListResponse'
      operationId: get-org-scoped-infrastructures
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/InfraIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list org scoped of infrastructure that you are permitted to use in a
            pipeline.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: service_refs
          description: Specifies services to which scoped infra are to be fetched.
        - schema:
            type: string
          in: query
          name: template_identifier
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment.
        - schema:
            type: string
          in: query
          name: template_version
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment(deployment template).
        - $ref: '#/components/parameters/DeploymentType'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the org scoped infrastructures for which you have view
        permissions in the given org.
      tags:
        - Org Infrastructures
  /v1/orgs/{org}/environments/{environment}/infrastructures/{infrastructure-definition}:
    get:
      summary: Retrieve an org scoped Infrastructure
      operationId: get-org-scoped-infrastructure
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified org scoped infrastructure
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      tags:
        - Org Infrastructures
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    put:
      summary: Update org scoped Infrastructure
      operationId: update-org-scoped-infrastructure
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureUpdateRequest'
      description: Updates the specified org scoped infrastructure
      security:
        - x-api-key: []
      tags:
        - Org Infrastructures
    delete:
      summary: Delete an org scoped Infrastructure
      operationId: delete-org-scoped-infrastructure
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested org scoped infrastructure
      security:
        - x-api-key: []
      tags:
        - Org Infrastructures
  /v1/environments/{environment}/infrastructures:
    post:
      summary: Creates an account scoped Infrastructure
      operationId: create-account-scoped-infrastructure
      responses:
        '201':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureCreateRequest'
      description: Creates an account scoped Infrastructure
      security:
        - x-api-key: []
      tags:
        - Account Infrastructures
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/EnvironmentPathParam'
    get:
      summary: List account scoped Infrastructures
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureListResponse'
      operationId: get-account-scoped-infrastructures
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/InfraIdentifiers'
        - $ref: '#/components/parameters/Sort1'
        - schema:
            type: boolean
          in: query
          name: is_access_list
          description: >-
            Specifies whether the list is an access list. An access list is a
            list account scoped of infrastructures that you are permitted to use
            in a pipeline.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: service_refs
          description: Specifies services to which scoped infra are to be fetched.
        - schema:
            type: string
          in: query
          name: template_identifier
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment.
        - schema:
            type: string
          in: query
          name: template_version
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment(deployment template).
        - $ref: '#/components/parameters/DeploymentType'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      description: >-
        Returns a list of the account scoped infrastructures for which you have
        view permissions in the given account.
      tags:
        - Account Infrastructures
  /v1/environments/{environment}/infrastructures/{infrastructure-definition}:
    get:
      summary: Retrieve an account scoped Infrastructure
      operationId: get-account-scoped-infrastructure
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Retrieves the specified account scoped infrastructure
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      tags:
        - Account Infrastructures
    parameters:
      - $ref: '#/components/parameters/EnvironmentPathParam'
      - $ref: '#/components/parameters/InfrastructureDefinitionPathParam'
    put:
      summary: Update account scoped Infrastructure
      operationId: update-account-scoped-infrastructure
      responses:
        '200':
          $ref: '#/components/responses/InfrastructureResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/InfrastructureUpdateRequest'
      description: Updates the specified account scoped infrastructure
      security:
        - x-api-key: []
      tags:
        - Account Infrastructures
    delete:
      summary: Delete an account scoped Infrastructure
      operationId: delete-account-scoped-infrastructure
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/ForceDelete'
      description: Deletes the requested account scoped infrastructure
      security:
        - x-api-key: []
      tags:
        - Account Infrastructures
  /v1/licenseUsageActivity/export/{accountIdentifier}:
    post:
      summary: Get exported License Usage Data for an account based on the filters
      tags:
        - Export License Usage Data By Account
      responses:
        '200':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      operationId: export-license-usage-activity
      x-internal: false
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          description: Start Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          description: End Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
      requestBody:
        required: true
        description: Details of the filters applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LicenseUsageActivityFilterPropertiesDTO'
  /v1/ldap-settings/iterations:
    post:
      summary: Ldap Settings iterations
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapSettingsIterationsResponse'
      operationId: ldap-settings-iterations
      x-stoplight:
        id: o0f3p82mazw6a
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CronExpressionRequest'
  /v1/ldap-settings/ldap-login-test:
    post:
      summary: Ldap login test
      tags:
        - Ldap Settings
      responses:
        '200':
          $ref: '#/components/responses/LdapTestLoginResponse'
      operationId: ldap-settings-ldap-login-test
      x-stoplight:
        id: xy60v4zxek7xz
      security:
        - x-api-key: []
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/LdapTestLoginRequest'
  /v1/gitx-webhook-events/{gitx-webhook-event}/validation-info:
    get:
      summary: Get file validations for a given event identifier
      tags:
        - GitX Webhooks Event File Validation
      responses:
        '200':
          $ref: '#/components/responses/GetGitXWebhookEventFileValidationResponse'
      operationId: gitx-webhook-event-file-validation
      x-internal: true
      description: Get file validations for a given event identifier
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: path
          name: gitx-webhook-event
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
  /v1/credits/allocation/export/{accountIdentifier}:
    get:
      summary: Get credits allocation Data for an account for a given moduleType
      tags:
        - Credits allocation by account and moduleType
      responses:
        '200':
          description: Successful response with CSV file
          content:
            text/csv: {}
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      operationId: credits-allocation-export-data
      x-internal: false
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: moduleType
          in: query
          required: true
          description: Module type for the account
          schema:
            type: string
  /v1/licenseUsageActivity/{accountIdentifier}:
    post:
      summary: Get License Usage Data for an account for a given time range
      tags:
        - License Usage Data By Account
      responses:
        '200':
          $ref: '#/components/responses/LicenseUsageActivity'
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      operationId: license-usage-activity
      x-internal: false
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          description: Start Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          description: End Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
        - name: rollup
          in: query
          required: true
          description: >-
            Rollup all credit usages in the specified timestamp to a single
            value.
          schema:
            type: boolean
      requestBody:
        required: true
        description: Details of the filters applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LicenseUsageActivityFilterPropertiesDTO'
  /v1/iro/get-sync-data-collection-result:
    post:
      summary: Retrieve data from Prometheus APM to fetch data.
      tags:
        - Prometheus Data Retrieval
      responses:
        '200':
          $ref: '#/components/responses/PrometheusMetricsResponse'
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      operationId: get-sync-data-collection-result
      security:
        - bearerAuth: []
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PrometheusQueryRequest'
  /v1/gitx-webhook-events/list-branches:
    get:
      summary: List all Branches for GitX Webhook Events.
      responses:
        '200':
          $ref: '#/components/responses/ListGitXWebhookBranchesResponse'
      operationId: list-webhook-event-branches
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - in: query
          name: org
          schema:
            type: string
        - in: query
          name: project
          schema:
            type: string
        - schema:
            type: string
          in: query
          name: webhook_identifier
        - schema:
            type: string
          in: query
          name: repo_name
        - schema:
            type: string
          in: query
          name: connector_ref
        - schema:
            type: boolean
          in: query
          name: include_parent_scope
      description: List branches for webhook events.
      security:
        - x-api-key: []
      x-internal: true
      tags:
        - GitX Events Resource
    parameters: []
  /v1/webhooks/list:
    post:
      summary: Lists all the Webhooks at Account level
      tags:
        - Account Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListWebhookResponse'
      operationId: list-account-webhooks
      x-stoplight:
        id: q959f3zrosr8j
      description: Lists webhooks
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
      requestBody:
        $ref: '#/components/requestBodies/ListWebhookRequest'
  /v1/orgs/{org}/webhooks/list:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    post:
      summary: Lists all the Webhooks at Org level
      tags:
        - Org Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListWebhookResponse'
      operationId: list-org-webhooks
      x-stoplight:
        id: xtibpkmzi48xi
      description: List org level webhooks
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
      requestBody:
        $ref: '#/components/requestBodies/ListWebhookRequest'
  /v1/orgs/{org}/projects/{project}/webhooks/list:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    post:
      summary: List all the Webhooks at Project level
      tags:
        - Project Webhooks
      responses:
        '200':
          $ref: '#/components/responses/ListWebhookResponse'
      operationId: list-project-webhooks
      x-stoplight:
        id: d0984c6o07vmf
      description: List project level webhooks
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
      requestBody:
        $ref: '#/components/requestBodies/ListWebhookRequest'
  /v1/webhooks:
    post:
      summary: Create a webhook at Account level
      responses:
        '201':
          $ref: '#/components/responses/CreateWebhookResponse'
      operationId: create-account-webhooks
      x-stoplight:
        id: 8eiwo6om8vhyx
      description: Create webhooks at account level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateWebhookRequest'
      tags:
        - Account Webhooks
  /v1/orgs/{org}/webhooks:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    post:
      summary: Create a webhook at Org level
      responses:
        '201':
          $ref: '#/components/responses/CreateWebhookResponse'
      operationId: create-org-webhooks
      x-stoplight:
        id: 218lrnqztn5db
      description: Create webhooks at org level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateWebhookRequest'
      tags:
        - Org Webhooks
  /v1/orgs/{org}/projects/{project}/webhooks:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    post:
      summary: Create a webhook at Project level
      responses:
        '201':
          $ref: '#/components/responses/CreateWebhookResponse'
      operationId: create-project-webhooks
      x-stoplight:
        id: 3hemfo8zsii5j
      description: Create webhooks at project level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateWebhookRequest'
      tags:
        - Project Webhooks
  /v1/webhooks/{webhook}:
    parameters:
      - $ref: '#/components/parameters/WebhookIdentifier'
    get:
      summary: Fetch Webhook at Account level
      responses:
        '200':
          $ref: '#/components/responses/GetWebhookResponse'
      operationId: get-account-webhook
      x-stoplight:
        id: htrbf7iw1pgbm
      description: Fetch Webhook at Account level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Webhooks
    put:
      summary: Updates a Webhook at Account level
      tags:
        - Account Webhooks
      responses:
        '200':
          $ref: '#/components/responses/UpdateWebhookResponse'
      operationId: update-account-webhook
      x-stoplight:
        id: stg0ym0cf83ms
      description: Updates a Webhook at Account level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateWebhookRequest'
    delete:
      summary: Deletes a Webhook at account level
      tags:
        - Account Webhooks
      responses:
        '204':
          description: No Content
      operationId: delete-account-webhook
      x-stoplight:
        id: hy1e8ggf1za4k
      description: Deletes a Webhook at account level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/orgs/{org}/webhooks/{webhook}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/WebhookIdentifier'
    get:
      summary: Fetch Webhook at org level
      tags:
        - Org Webhooks
      responses:
        '200':
          $ref: '#/components/responses/GetWebhookResponse'
      operationId: get-org-webhook
      x-stoplight:
        id: phxcvl7c27s2b
      description: Fetch Webhook at org level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Updates a Webhook at Org level
      tags:
        - Org Webhooks
      responses:
        '200':
          $ref: '#/components/responses/UpdateWebhookResponse'
      operationId: update-org-webhook
      x-stoplight:
        id: qnxs9xauehxf1
      description: Updates a Webhook at Org level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateWebhookRequest'
    delete:
      summary: Deletes a Webhook at org level
      tags:
        - Org Webhooks
      responses:
        '204':
          description: No Content
      operationId: delete-org-webhook
      x-stoplight:
        id: hp71yii6vje5j
      description: Deletes a Webhook at org level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/orgs/{org}/projects/{project}/webhooks/{webhook}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - $ref: '#/components/parameters/WebhookIdentifier'
    get:
      summary: Fetch Webhook at project level
      tags:
        - Project Webhooks
      responses:
        '200':
          $ref: '#/components/responses/GetWebhookResponse'
      operationId: get-project-webhook
      x-stoplight:
        id: 91vr2lhknz7e2
      description: Fetch Webhook at project level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    put:
      summary: Updates a Webhook at Project level
      tags:
        - Project Webhooks
      responses:
        '200':
          $ref: '#/components/responses/UpdateWebhookResponse'
      operationId: update-project-webhook
      x-stoplight:
        id: qkzw38ihe33sm
      description: Updates a Webhook at Project level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateWebhookRequest'
    delete:
      summary: Deletes a Webhook at project level
      tags:
        - Project Webhooks
      responses:
        '204':
          description: No Content
      operationId: delete-project-webhook
      x-stoplight:
        id: zrxeghi06sstt
      description: Deletes a Webhook at project level
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/licensedModules:
    get:
      summary: Get Licensed Modules for an account
      tags:
        - Account Licensed Modules
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LicensedModules'
        '400':
          description: Bad Request
      operationId: get-account-licensed-modules
      x-stoplight:
        id: 48ywtaz7t7c2m
      description: Get Licensed Modules for an account
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/banners/{banner}:
    parameters:
      - schema:
          type: string
        name: banner
        in: path
        required: true
        description: Identifier field of the Banner
    put:
      summary: Updates the specified Banner in account scope
      operationId: update-account-scoped-banner
      responses:
        '200':
          $ref: '#/components/responses/BannerResponse'
      description: Updates the specified Banner in account scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/UpdateBannerRequest'
      tags:
        - Account Banner
    delete:
      summary: Deletes the specified Banner in account scope
      operationId: delete-account-scoped-banner
      responses:
        '204':
          description: No Content
        '400':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      description: Deletes the specified Banner in account scope
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Account Banner
  /v1/devSubscriptions:
    get:
      summary: Get total users count by month for the provided year
      tags:
        - Total users count
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SubscriptionUsageDTO'
        '400':
          description: Bad Request
      operationId: get-v1-devSubscriptions
      x-stoplight:
        id: t2sfdg3924zq1
      description: Get subscriptions data for account
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
    parameters:
      - schema:
          type: string
        in: query
        name: year
        description: Year to get the subscriptions data for
  /v1/moduleLicenseUtilization:
    get:
      summary: utilization
      tags:
        - Module License Utilization
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ModuleUtilizationDTO'
        '400':
          description: Bad Request
      operationId: get-v1-moduleLicenseUtilization
      x-stoplight:
        id: ou43i1cdk84oz
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
  /v1/updateModuleAccess:
    put:
      summary: update
      tags:
        - Update Module Access
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
      operationId: put-v1-updateModuleAccess
      x-stoplight:
        id: xqx83k6nobtol
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                entities:
                  $ref: '#/components/schemas/UpdateAccessRequest'
  /v1/listPrincipalsWithAccess:
    get:
      summary: list
      tags:
        - Principals With Access
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  principalsWithAccess:
                    $ref: '#/components/schemas/PrincipalWithAccessResponse'
        '400':
          description: Bad Request
      operationId: get-v1-listPrincipalsWithAccess
      x-stoplight:
        id: sa5b0bfaplklt
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: moduleType
          description: Module to fetch the users for
          required: true
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
    post:
      summary: Your POST endpoint
      tags:
        - Principals With Access
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  principalsWithAccess:
                    $ref: '#/components/schemas/PrincipalWithAccessResponse'
        '400':
          description: Bad Request
      operationId: post-v1-listPrincipalsWithAccess
      x-stoplight:
        id: qdy1p2ocwewgn
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: moduleType
          description: Module to fetch the users for
          required: true
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                filter:
                  $ref: '#/components/schemas/PrincipalWithAccessFilter'
  /v1/banners/active:
    get:
      summary: Return Active Banners
      tags:
        - Account Banner
      responses:
        '200':
          $ref: '#/components/responses/BannerListResponse'
      operationId: get-account-scoped-active-banners
      description: >-
        This API endpoint will return max 5 banners as that is the enabled
        banners count.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/SearchTerm1'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit1'
        - $ref: '#/components/parameters/Sort1'
        - $ref: '#/components/parameters/Order'
  /v1/dailyModuleAccountAccess:
    get:
      summary: Your GET endpoint
      tags:
        - Daily Module Account Access
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DailyModuleAccountAccessDTO'
      operationId: get-v1-dailyModuleAccountAccess
      x-stoplight:
        id: ottg9ts46qi5m
      requestBody:
        content:
          application/json:
            schema:
              type: object
              nullable: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: integer
          in: query
          name: year
          description: Year for which the data is requested
          required: true
        - schema:
            type: integer
          in: query
          name: month
          description: Month for which the data is requested
          required: true
        - schema:
            type: string
          in: query
          name: moduleType
          description: Module for which the data is requested
          required: true
  /v1/moduleAccess:
    get:
      summary: Get module access
      tags:
        - Get Module Access
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  hasAccess:
                    type: boolean
      operationId: get-v1-moduleAccess
      x-stoplight:
        id: t1jwlv6z8sa1x
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - schema:
            type: string
          in: query
          name: moduleType
          description: Module to check user access for
        - schema:
            type: string
          in: query
          name: userId
          description: User id
  /v1/oidc-provider:
    post:
      summary: Create OIDC provider
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProviderResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: create-oidc-provider
      x-stoplight:
        id: 8j9gyvedhvef1
      requestBody:
        $ref: '#/components/requestBodies/OidcProviderRequest'
      parameters:
        - schema:
            type: string
          in: header
          name: Harness-Account
          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.
    get:
      summary: Get OIDC providers
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProvidersResponse'
        '400':
          description: Bad Request
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      operationId: list-oidc-provider
      x-stoplight:
        id: z6j7sbsuajq8k
      parameters:
        - schema:
            type: string
          in: header
          name: Harness-Account
          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.
  /v1/oidc-provider/{providerIdentifier}:
    get:
      summary: GET OIDC provider
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProvidersResponse'
        '400':
          description: Bad Request
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      operationId: get-oidc-provider
      x-stoplight:
        id: cubdvrj4itv8p
      parameters:
        - $ref: '#/components/parameters/OidcProviderId'
        - schema:
            type: string
          in: header
          name: Harness-Account
          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.
      description: ''
    put:
      summary: Update OIDC provider
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProviderResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: update-oidc-provider
      x-stoplight:
        id: wq62jc99nwlly
      requestBody:
        $ref: '#/components/requestBodies/OidcProviderRequest'
      parameters:
        - $ref: '#/components/parameters/OidcProviderId'
        - schema:
            type: string
          in: header
          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.
          name: Harness-Account
    delete:
      summary: Delete OIDC provider
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProviderResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: delete-oidc-provider
      x-stoplight:
        id: 9omza80n0xdqu
      parameters:
        - $ref: '#/components/parameters/OidcProviderId'
        - schema:
            type: string
          in: header
          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.
          name: Harness-Account
  /v1/oidc-provider/{providerIdentifier}/decrypt:
    get:
      summary: GET OIDC provider with secret
      tags:
        - Oidc Provider
      responses:
        '200':
          $ref: '#/components/responses/OidcProvidersResponse'
        '400':
          description: Bad Request
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      operationId: get-oidc-provider-internal
      x-internal: true
      x-stoplight:
        id: cubdvrj4itv8p
      parameters:
        - $ref: '#/components/parameters/OidcProviderId'
        - schema:
            type: string
          in: header
          name: Harness-Account
          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.
      description: ''
  /v1/notification-trigger/ir/slo-notification:
    post:
      summary: SLO Notification Trigger
      tags:
        - Incident Response
      responses:
        '200':
          description: OK
          content: {}
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: sloNotificationTrigger
      x-internal: true
      x-stoplight:
        id: f4xe8dn1qa6x3
      parameters:
        - schema:
            type: string
          in: header
          name: Harness-Account
          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.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SLONotificationDTO'
  /v1/oauth/zoom:
    get:
      summary: Internal API to generate OAuth Token for Zoom
      tags:
        - Zoom Utils
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  access_token:
                    type: string
                    x-stoplight:
                      id: 0pbtp82fglrgg
                  token_type:
                    type: string
                    x-stoplight:
                      id: y4rwrgipoqww3
                  refresh_token:
                    type: string
                    x-stoplight:
                      id: 6sgylqvlyinws
                  expires_in:
                    type: integer
                    x-stoplight:
                      id: mfsqxsdtfwg22
                  scope:
                    type: string
                    x-stoplight:
                      id: heagx4kr7djob
                  api_url:
                    type: string
                    x-stoplight:
                      id: s3v6t9nbleurb
      operationId: zoomOauthTokenGenerate
      x-internal: true
      x-stoplight:
        id: 3xl1gdk59jd1l
      parameters:
        - schema:
            type: string
          in: query
          name: authorization_code
  /v1/oauth/msteams:
    get:
      summary: Internal API to generate OAuth Token for MS Teams
      tags:
        - MS Teams Utils
      responses:
        '200':
          $ref: '#/components/responses/MsTeamsTokenResponse'
      operationId: msTeamsOauthTokenGenerate
      x-internal: true
      x-stoplight:
        id: avbtzt1bif7x7
      parameters:
        - schema:
            type: string
          in: query
          name: authorization_code
  /v1/oauth/confluence:
    get:
      summary: Internal API to generate OAuth Token for Confluence
      tags:
        - Confluence Utils
      responses:
        '200':
          $ref: '#/components/responses/ConfluenceTokenResponse'
      operationId: confluenceOauthTokenGenerate
      x-internal: true
      x-stoplight:
        id: avbtzt1bif8x7
      parameters:
        - schema:
            type: string
          in: query
          name: authorization_code
  /v1/oauth/slack:
    get:
      summary: Internal API to generate OAuth Token for Slack
      tags:
        - Slack Utils
      responses:
        '200':
          $ref: '#/components/responses/SlackTokenResponse'
      operationId: slackOauthTokenGenerate
      x-internal: true
      x-stoplight:
        id: avbtzt1bif2x8
      parameters:
        - schema:
            type: string
          in: query
          name: authorization_code
  /v1/connectors:
    post:
      summary: Create a Connector
      operationId: create-account-scoped-connector
      responses:
        '201':
          $ref: '#/components/responses/ConnectorResponse'
      description: Creates a new connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Account Connector
    get:
      summary: List connectors
      operationId: get-account-scoped-connectors
      responses:
        '200':
          $ref: '#/components/responses/ConnectorListResponse'
      description: Retrieves the information of the connectors.
      tags:
        - Account Connector
      parameters:
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm2'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit2'
        - $ref: '#/components/parameters/Sort2'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      x-internal: true
  /v1/connectors/{connector}:
    get:
      summary: Retrieve a connector
      operationId: get-account-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >
        Retrieves the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Account Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    put:
      summary: Update a connector
      operationId: update-account-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Account Connector
      security:
        - x-api-key: []
    parameters:
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
    delete:
      summary: Delete a connector
      operationId: delete-account-scoped-connector
      responses:
        '200':
          description: OK
      description: >-
        Deletes the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Account Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
  /v1/connectors/{connector}/test-connection:
    get:
      summary: Test a connector
      operationId: test-account-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorTestConnectionResponse'
      description: >
        Tests connection of the connector with the matching connector
        identifier.
      tags:
        - Account Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    parameters:
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
  /v1/orgs/{org}/connectors:
    post:
      summary: Create a Connector
      operationId: create-org-scoped-connector
      responses:
        '201':
          $ref: '#/components/responses/ConnectorResponse'
      description: Creates a new connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Org Connector
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: List connectors
      operationId: get-org-scoped-connectors
      responses:
        '200':
          $ref: '#/components/responses/ConnectorListResponse'
      description: Retrieves the information of the connectors.
      tags:
        - Org Connector
      parameters:
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm2'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit2'
        - $ref: '#/components/parameters/Sort2'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      x-internal: true
  /v1/orgs/{org}/connectors/{connector}:
    get:
      summary: Retrieve a connector
      operationId: get-org-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >
        Retrieves the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Org Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    put:
      summary: Update a connector
      operationId: update-org-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Org Connector
      security:
        - x-api-key: []
    delete:
      summary: Delete a connector
      operationId: delete-org-scoped-connector
      responses:
        '200':
          description: OK
      description: >-
        Deletes the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Org Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
  /v1/orgs/{org}/connectors/{connector}/test-connection:
    get:
      summary: Test a connector
      operationId: test-org-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorTestConnectionResponse'
      description: >
        Tests connection of the connector with the matching connector
        identifier.
      tags:
        - Org Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
  /v1/orgs/{org}/projects/{project}/connectors:
    post:
      summary: Create a Connector
      operationId: create-project-scoped-connector
      responses:
        '201':
          $ref: '#/components/responses/ConnectorResponse'
      description: Creates a new connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Project Connector
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: List connectors
      operationId: get-project-scoped-connectors
      responses:
        '200':
          $ref: '#/components/responses/ConnectorListResponse'
      description: Retrieves the information of the connectors.
      tags:
        - Project Connector
      parameters:
        - schema:
            type: boolean
            default: false
          in: query
          name: recursive
          description: 'Expand current scope to include all child scopes '
        - $ref: '#/components/parameters/SearchTerm2'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit2'
        - $ref: '#/components/parameters/Sort2'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
      x-internal: true
  /v1/orgs/{org}/projects/{project}/connectors/{connector}:
    get:
      summary: Retrieve a connector
      operationId: get-project-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >
        Retrieves the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Project Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    put:
      summary: Update a connector
      operationId: update-project-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorResponse'
      description: >-
        Updates the information of the secret with the matching secret
        identifier.
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      requestBody:
        $ref: '#/components/requestBodies/ConnectorRequest'
      tags:
        - Project Connector
      security:
        - x-api-key: []
    delete:
      summary: Delete a connector
      operationId: delete-project-scoped-connector
      responses:
        '200':
          description: OK
      description: >-
        Deletes the information of the connector with the matching connector
        identifier. Connector types supported are GIT, ARTIFACTORY, APP_DYNAMICS
        and AZURE.
      tags:
        - Project Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
  /v1/orgs/{org}/projects/{project}/connectors/{connector}/test-connection:
    get:
      summary: Test a connector
      operationId: test-project-scoped-connector
      responses:
        '200':
          $ref: '#/components/responses/ConnectorTestConnectionResponse'
      description: >
        Tests connection of the connector with the matching connector
        identifier.
      tags:
        - Project Connector
      parameters:
        - $ref: '#/components/parameters/AccountHeader1'
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: connector
        in: path
        required: true
        description: Connector identifier
  /v1/resource-groups:
    parameters: []
    get:
      summary: List Resource Groups
      operationId: list-resource-groups-acc
      description: Returns a list of Resource Groups present in the Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader2'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsListResponse'
      tags:
        - Account Resource Groups
    post:
      summary: Create a Resource Group
      operationId: create-resource-group-acc
      description: Creates a custom Resource Group in the Account scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      security:
        - x-api-key: []
      tags:
        - Account Resource Groups
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
      responses:
        '201':
          $ref: '#/components/responses/ResourceGroupsResponse'
  /v1/resource-groups/{resource-group}:
    parameters:
      - $ref: '#/components/parameters/ResourceGroupParam'
    get:
      summary: Retrieve a Resource Group
      operationId: get-resource-group-acc
      description: Retrieves a Resource Group from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Account Resource Groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      x-internal: false
    put:
      summary: Update a Resource Group
      operationId: update-resource-group-acc
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      description: Updates a Resource Group from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Account Resource Groups
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
    delete:
      summary: Delete a Resource Group
      operationId: delete-resource-group-acc
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      description: Deletes a custom Resource Group from Account scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Account Resource Groups
  /v1/orgs/{org}/resource-groups:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
    get:
      summary: List Resource Groups
      tags:
        - Organization Resource Groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsListResponse'
      operationId: list-resource-groups-org
      description: Returns a list of Resource Groups present in the Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader2'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
    post:
      summary: Create a Resource Group
      operationId: create-resource-group-org
      description: Creates a custom Resource Group in the Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Organization Resource Groups
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
      responses:
        '201':
          $ref: '#/components/responses/ResourceGroupsResponse'
  /v1/orgs/{org}/resource-groups/{resource-group}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ResourceGroupParam'
    get:
      summary: Retrieve a Resource Group
      operationId: get-resource-group-org
      description: Retrieves a Resource Group from Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Organization Resource Groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
    put:
      summary: Update a Resource Group
      operationId: update-resource-group-org
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      description: Updates a Resource Group from Organization scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
      tags:
        - Organization Resource Groups
    delete:
      summary: Delete a Resource Group
      operationId: delete-resource-group-org
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      description: Deletes a custom Resource Group from Organization scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      security:
        - x-api-key: []
      tags:
        - Organization Resource Groups
  /v1/orgs/{org}/projects/{project}/resource-groups:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    get:
      summary: List Resource Groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsListResponse'
      operationId: list-resource-groups-project
      description: Returns a list of Resource Groups present in the Project scope.
      parameters:
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/AccountHeader2'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      tags:
        - Project Resource Groups
    post:
      summary: Create a Resource Group
      operationId: create-resource-group-project
      description: Creates a custom Resource Group in the Project scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Project Resource Groups
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
      responses:
        '201':
          $ref: '#/components/responses/ResourceGroupsResponse'
  /v1/orgs/{org}/projects/{project}/resource-groups/{resource-group}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/ResourceGroupParam'
    get:
      summary: Retrieve a Resource Group
      operationId: get-resource-group-project
      security:
        - x-api-key: []
      description: Retrieves a Resource Group from Project scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Project Resource Groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
    put:
      summary: Update a Resource Group
      operationId: update-resource-group-project
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CreateResourceGroupRequest'
      description: Updates a Resource Group from Project scope.
      tags:
        - Project Resource Groups
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
    delete:
      summary: Delete a Resource Group
      operationId: delete-resource-group-project
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsResponse'
      description: Deletes a custom Resource Group from Project scope.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
      tags:
        - Project Resource Groups
  /v1/resource-groups/filter:
    parameters: []
    post:
      summary: Filter Resource Groups
      operationId: filter-resource-groups
      responses:
        '200':
          $ref: '#/components/responses/ResourceGroupsListResponse'
      description: Returns a list of Resource Groups based on filter criteria.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader2'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      tags:
        - Filter Resource Groups
      requestBody:
        $ref: '#/components/requestBodies/FilterResourceGroupRequest'
  /v1/streaming-destinations:
    parameters: []
    post:
      summary: Create a Streaming Destination
      operationId: create-streaming-destinations
      description: Creates a custom Streaming Destination
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
      security:
        - x-api-key: []
      responses:
        '201':
          $ref: '#/components/responses/StreamingDestinationResponse'
      requestBody:
        $ref: '#/components/requestBodies/CreateStreamingDestinationRequest'
      x-internal: true
      tags:
        - Streaming Destinations
    get:
      summary: List Streaming Destinations
      operationId: get-streaming-destinations
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationListResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/Status'
      description: Get list of Streaming Destinations
      security:
        - x-api-key: []
      tags:
        - Streaming Destinations
      x-internal: true
  /v1/streaming-destinations/aggregate:
    get:
      summary: List Streaming Destinations
      operationId: getStreamingDestinationsAggregate
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationAggregateListResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/Status'
      description: Get list of Streaming Destinations
      security:
        - x-api-key: []
      tags:
        - Streaming Destinations
      x-internal: true
  /v1/streaming-destinations/{streaming-destination}:
    parameters:
      - $ref: '#/components/parameters/StreamingDestinationParam'
    put:
      summary: Update a Streaming Destination
      operationId: update-streaming-destination
      description: Update a Streaming Destination
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
      requestBody:
        $ref: '#/components/requestBodies/CreateStreamingDestinationRequest'
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationResponse'
      security:
        - x-api-key: []
      tags:
        - Streaming Destinations
      x-internal: true
    delete:
      summary: Delete a Streaming Destination
      operationId: delete-disabled-streaming-destination
      description: Deletes an existing and disabled Streaming Destination
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
      security:
        - x-api-key: []
      responses:
        '204':
          $ref: '#/components/responses/StreamingDestinationResponse'
      x-internal: true
      tags:
        - Streaming Destinations
    get:
      summary: Get a Streaming Destination
      operationId: get-streaming-destination
      description: Get a Streaming Destination
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationResponse'
      x-internal: true
      tags:
        - Streaming Destinations
  /v1/streaming-destinations/{streaming-destination}/validate-unique-identifier:
    get:
      summary: Validate Uniqueness of Identifier
      tags:
        - Streaming Destinations
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationValidateResponse'
          headers: {}
      operationId: validateUniqueIdentifier
      description: Validate uniqueness of identifier for Streaming Destination
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
      security:
        - x-api-key: []
      x-internal: true
    parameters:
      - name: streaming-destination
        in: path
        required: true
        schema:
          type: string
        description: Streaming Destination identifier
  /v1/streaming-destinations/cards:
    get:
      summary: Your GET endpoint
      tags:
        - Streaming Destinations
      responses:
        '200':
          $ref: '#/components/responses/StreamingDestinationCardsResponse'
      operationId: get-streaming-destinations-cards
      x-internal: true
      description: Get the info for cards on streaming destination page
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
  /v1/audits:
    post:
      summary: List Audits
      operationId: post-audits
      responses:
        '200':
          $ref: '#/components/responses/AuditListResponse'
      description: Get list of Audits
      parameters:
        - $ref: '#/components/parameters/AccountHeader3'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Sort'
        - $ref: '#/components/parameters/Order'
      security:
        - x-api-key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditFilterPropertiesV1DTO'
        description: This has the filter attributes for listing Audit Events
      tags:
        - Audits
      x-internal: true
  /v1/orgs/{org}/projects/{project}/notification-channels:
    get:
      summary: List Notification channels
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelListResponse'
      operationId: list-notification-channels
      x-stoplight:
        id: 110wzj88g7je4
      description: Returns a list of notification channels for the scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/SearchTerm3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/notification_channel_type'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/IncludeParentScope'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
    post:
      summary: Create Notification channel
      operationId: create-notification-channel
      responses:
        '201':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: hnjw4i11veokz
      description: Create Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
  /v1/orgs/{org}/projects/{project}/notification-rules:
    get:
      summary: List Notification rules
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleListResponse'
      operationId: list-notification-rules
      x-stoplight:
        id: faoyjfx01yacj
      description: Get list of notification rules
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm3'
        - $ref: '#/components/parameters/Page'
        - schema:
            type: string
          in: query
          name: resource
          description: Notification entity name
        - schema:
            type: string
          in: query
          name: event
          description: Notification event name
      security:
        - x-api-key: []
      tags:
        - Notification Rules
    post:
      summary: Create Notification Rule
      operationId: create-notification-rule
      responses:
        '201':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: fy1asg68jb20y
      description: Create Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
  /v1/orgs/{org}/projects/{project}/notification-channels/{notification-channel}:
    parameters:
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
    get:
      summary: Get Notification channel
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      operationId: get-notification-channel
      x-stoplight:
        id: s152cc3xhzlg4
      description: Get Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
    delete:
      summary: Delete Notification Channel
      operationId: delete-notification-channel
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: 7wecyef99sub3
      description: Delete notification channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
    put:
      summary: Update Notification Channel
      operationId: update-notification-channel
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: kqsk5i3w0wkwr
      description: Update Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
  /v1/orgs/{org}/projects/{project}/notification-rules/{notification-rule}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: identifier
    get:
      summary: Get Notification Rule
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      operationId: get-notification-rule
      x-stoplight:
        id: k9gw1089s3jd6
      description: Get notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
    delete:
      summary: Delete Notification Rule
      operationId: delete-notification-rule
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: lsi3h5gkmxugh
      description: Delete notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
    put:
      summary: Update Notification Rule
      operationId: update-notification-rule
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: s22i78x6pwd00
      description: Update Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
  /v1/orgs/{org}/notification-channels:
    get:
      summary: List Notification channels at org level
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelListResponse'
      operationId: list-notification-channels-org
      x-stoplight:
        id: r96qavu1tdkl3
      description: Returns a list of notification channels for the scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/SearchTerm3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/notification_channel_type'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/IncludeParentScope'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    post:
      summary: Create Notification channel
      operationId: create-notification-channel-org
      responses:
        '201':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: 3c3z42mq3u5cs
      description: Create Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
  /v1/notification-channels:
    get:
      summary: List Notification channels at account level
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelListResponse'
      operationId: list-notification-channels-account
      x-stoplight:
        id: fizbxgypnkyx4
      description: Returns a list of notification channels for the scope.
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/SearchTerm3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/notification_channel_type'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/IncludeParentScope'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    post:
      summary: Create Notification channel
      operationId: create-notification-channel-account
      responses:
        '201':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: i879xsqwx95bd
      description: Create Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
  /v1/orgs/{org}/notification-rules:
    get:
      summary: List Notification rules at org level
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleListResponse'
      operationId: list-notification-rules-org
      x-stoplight:
        id: h2pjf55hgmfkq
      description: Get list of notification rules
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm3'
        - schema:
            type: string
          in: query
          name: resource
          description: Notification entity name
        - schema:
            type: string
          in: query
          name: event
          description: Notification event name
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    post:
      summary: Create Notification Rule
      operationId: create-notification-rule-org
      responses:
        '201':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: zd8fe9zq9vz65
      description: Create Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
  /v1/notification-rules:
    get:
      summary: List Notification rules at account level
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleListResponse'
      operationId: list-notification-rules-account
      x-stoplight:
        id: rpxkf8nmka63c
      description: Get list of notification rules for account
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit3'
        - $ref: '#/components/parameters/Sort3'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm3'
        - schema:
            type: string
          in: query
          name: resource
          description: Notification resource name
        - schema:
            type: string
          in: query
          name: event
          description: Notification event name
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    post:
      summary: Create Notification Rule
      operationId: create-notification-rule-account
      responses:
        '201':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: 4gde7c2oe66y1
      description: Create Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
  /v1/orgs/{org}/notification-channels/{notification-channel}:
    parameters:
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
      - $ref: '#/components/parameters/OrgPathParam'
    get:
      summary: Get Notification channel
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      operationId: get-notification-channel-org
      x-stoplight:
        id: ky2btllctnj0n
      description: Get Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    delete:
      summary: Delete Notification Channel
      operationId: delete-notification-channel-org
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: 80yugthenbxim
      description: Delete notification channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    put:
      summary: Update Notification Channel
      operationId: update-notification-channel-org
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: rdwfm4wav1fl6
      description: Update Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
  /v1/notification-channels/{notification-channel}:
    parameters:
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
    get:
      summary: Get Notification channel
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      operationId: get-notification-channel-account
      x-stoplight:
        id: 0j2ergmt8dnlo
      description: Get Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    delete:
      summary: Delete Notification Channel
      operationId: delete-notification-channel-account
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: vij0xc5vjo1hw
      description: Delete notification channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
    put:
      summary: Update Notification Channel
      operationId: update-notification-channel-account
      responses:
        '200':
          $ref: '#/components/responses/NotificationChannelResponse'
      x-stoplight:
        id: 55xmh2nbu3pxu
      description: Update Notification Channel
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationChannelRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Channels
      x-internal: true
  /v1/orgs/{org}/notification-rules/{notification-rule}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: identifier
    get:
      summary: Get Notification Rule
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      operationId: get-notification-rule-org
      x-stoplight:
        id: tixx3mc8h9lx9
      description: Get notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    delete:
      summary: Delete Notification Rule
      operationId: delete-notification-rule-org
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: ob3ocvnujbsdn
      description: Delete notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    put:
      summary: Update Notification Rule
      operationId: update-notification-rule-org
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: 27vuuzo23p92w
      description: Update Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
  /v1/notification-rules/{notification-rule}:
    parameters:
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: identifier
    get:
      summary: Get Notification Rule
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      operationId: get-notification-rule-account
      x-stoplight:
        id: n6wp9eszwjzp0
      description: Get notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    delete:
      summary: Delete Notification Rule
      operationId: delete-notification-rule-account
      responses:
        '204':
          description: No Content
        '400':
          headers: {}
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: 5dxk1ps427ia7
      description: Delete notification rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
    put:
      summary: Update Notification Rule
      operationId: update-notification-rule-account
      responses:
        '200':
          $ref: '#/components/responses/NotificationRuleResponse'
      x-stoplight:
        id: v4l0x6kyqmcut
      description: Update Notification Rule
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/NotificationRuleRequest'
      security:
        - x-api-key: []
      tags:
        - Notification Rules
      x-internal: true
  /v1/orgs/{org}/projects/{project}/notification-rules/validate-rules/{notification-rule}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: Notification Rule Identifier
    get:
      summary: Validate notification rule identifier
      tags:
        - Notification Rules
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-rule-identifier
      x-stoplight:
        id: zrupqdwqv03id
      description: Validate notification rule identifier
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
  /v1/orgs/{org}/validate-rules/{notification-rule}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: Notification Rule Identifier
    get:
      summary: Validate notification rule identifier
      tags:
        - Notification Rules
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-rule-identifier-org
      x-stoplight:
        id: 8ouru8hu0buzm
      description: Validate notification rule identifier org level
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
  /v1/validate-rules/{notification-rule}:
    parameters:
      - schema:
          type: string
        name: notification-rule
        in: path
        required: true
        description: identifier
    get:
      summary: Validate notification rule identifier
      tags:
        - Notification Rules
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-rule-identifier-account
      x-stoplight:
        id: imzpediwp0dzw
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Validate notification rule identifier
      security:
        - x-api-key: []
  /v1/notification-resource-list:
    get:
      summary: List of notification entities and events
      tags:
        - Notification Rules
      responses:
        '200':
          description: Shared Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NotificationResourceDTO'
      operationId: notification-resource-list
      x-stoplight:
        id: pdsj5o8j3jsqe
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      x-internal: true
      security:
        - x-api-key: []
  /v1/orgs/{org}/validate-channels/{notification-channel}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
    get:
      summary: Validate unique identifier for notification channel
      tags:
        - Notification Channels
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-channel-identifier-org
      x-stoplight:
        id: pa28zngw5cpyb
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/validate-channels/{notification-channel}:
    parameters:
      - $ref: '#/components/parameters/OrgPathParam'
      - $ref: '#/components/parameters/ProjectPathParam'
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
    get:
      summary: Validate Notification Channel Identifier
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-channel-identifier
      x-stoplight:
        id: 3b5yactyqx0hs
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Notification Channels
      security:
        - x-api-key: []
  /v1/validate-channels/{notification-channel}:
    parameters:
      - schema:
          type: string
        name: notification-channel
        in: path
        required: true
        description: identifier
    get:
      summary: Validate Notification channel identifier
      tags:
        - Notification Channels
      responses:
        '200':
          $ref: '#/components/responses/ValidateIdentifierResponse'
        '302':
          description: Found
      operationId: validate-notification-channel-identifier-account
      x-stoplight:
        id: 6sqcbt99vrutt
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      description: Validate Notification Channel Indetifier
      security:
        - x-api-key: []
  /v1/attachments:
    post:
      summary: Save Notification Attachment
      operationId: create-attachment
      responses:
        '200':
          $ref: '#/components/responses/SaveAttachmentResponse'
      description: Save Notification Attachment
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/SaveAttachmentRequest'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
      tags:
        - Notification Attachments
    parameters: []
  /v1/notification-rules/notifications-simulate:
    post:
      summary: Simulate Notifications
      tags:
        - Notification Rules
      operationId: simulateNotifications
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationsSimulateDTO'
      responses:
        '200':
          description: Simulated notifications generated successfully.
      x-stoplight:
        id: 6zdzbe9bf4ggf
      security:
        - x-api-key: []
      x-internal: true
  /v1/orgs/{org}/projects/{project}/pipelines:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    get:
      summary: List Pipelines
      operationId: list-pipelines
      description: Returns a list of Pipelines.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/Sort4'
        - $ref: '#/components/parameters/Order'
        - schema:
            type: string
            enum:
              - CD
              - CI
              - CV
              - CF
              - CE
              - STO
          in: query
          name: module
          description: Harness module which is part of the Pipeline.
        - schema:
            type: string
          in: query
          name: filter_identifier
          description: Identifier of a saved Filter.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: pipeline_identifiers
          description: >-
            List of Pipeline identifiers on the basis of which the Pipelines are
            filtered.
        - schema:
            type: string
            pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
            minLength: 1
            maxLength: 128
          in: query
          name: name
          description: Pipeline Name on the basis of which the Pipelines are filtered.
        - schema:
            type: string
            maxLength: 1024
          in: query
          name: description
          description: >-
            Pipeline Description on the basis of which the Pipelines are
            filtered.
        - schema:
            type: array
            items:
              type: string
            maxItems: 128
            example: key:value
          examples:
            key_and_value:
              value: key:value
              summary: Tag having both Key and Value.
            key_only:
              value: key
              summary: Tag having only Key.
          in: query
          name: tags
          description: Filter tags as a key:value pair.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: service_names
          description: Service names on the basis of which the Pipelines are filtered. [CD]
        - schema:
            type: array
            items:
              type: string
          in: query
          name: env_names
          description: >-
            Names of Environments on the basis of which the Pipelines are
            filtered. [CD]
        - schema:
            type: string
          in: query
          name: deployment_type
          description: >-
            Deployment type on the basis of which the Pipelines are filtered.
            [CD]
        - schema:
            type: string
          in: query
          name: repository
          description: >-
            Repository name on the basis of which the Pipelines are filtered.
            [CI]
      security:
        - x-api-key: []
      tags:
        - Pipelines
      responses:
        '200':
          $ref: '#/components/responses/PipelineListResponseBody'
      x-stoplight:
        id: 30zs16zs1jnaq
    post:
      summary: Create a Pipeline
      operationId: create-pipeline
      description: Creates a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Pipelines
      requestBody:
        $ref: '#/components/requestBodies/PipelineCreateRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/PipelineCreateResponseBody'
      x-stoplight:
        id: mdxs0qz4oh0dc
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/triggers:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
      - $ref: '#/components/parameters/IgnoreError'
    post:
      summary: Create a Trigger
      operationId: create-trigger
      description: Create a Trigger.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Triggers
      requestBody:
        $ref: '#/components/requestBodies/TriggerRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/TriggerResponseBody'
      x-stoplight:
        id: uegqlh7uxc0dh
      x-internal: true
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/triggers/{trigger}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
      - $ref: '#/components/parameters/TriggerParam'
    get:
      summary: Retrieve a Trigger
      operationId: get-trigger
      description: Retrieve a Trigger.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Triggers
      responses:
        '200':
          $ref: '#/components/responses/TriggerGetResponseBody'
      x-internal: true
    put:
      summary: Update a Trigger
      operationId: update-trigger
      security:
        - x-api-key: []
      description: Updates a Trigger.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/IgnoreError'
      tags:
        - Triggers
      requestBody:
        $ref: '#/components/requestBodies/TriggerRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/TriggerResponseBody'
      x-internal: true
    delete:
      summary: Delete a Trigger
      operationId: delete-trigger
      description: Deletes a Trigger.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Triggers
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      x-internal: true
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    get:
      summary: Retrieve a Pipeline
      operationId: get-pipeline
      security:
        - x-api-key: []
      description: Retrieves a Pipeline.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: boolean
            default: false
          in: query
          name: template_applied
          description: If true, returns Pipeline YAML with Templates applied on it.
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
        - schema:
            type: string
            default: 'false'
          in: header
          name: Load-From-Cache
          description: Flag to enable loading the remote pipeline from git or git cache
        - schema:
            type: boolean
            default: false
          in: query
          name: load_from_fallback_branch
          description: Flag to load the pipeline from the created non default branch
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: validate_async
          description: >-
            Flag to tell whether to start an asynchronous validation process or
            not
      tags:
        - Pipelines
      responses:
        '200':
          $ref: '#/components/responses/PipelineGetResponseBody'
      x-stoplight:
        id: rn41qzdjn8lh1
    put:
      summary: Update a Pipeline
      operationId: update-pipeline
      security:
        - x-api-key: []
      description: Updates a Pipeline.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Pipelines
      requestBody:
        $ref: '#/components/requestBodies/PipelineUpdateRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/PipelineCreateResponseBody'
      x-stoplight:
        id: 9gbauax4g8mkt
    delete:
      summary: Delete a Pipeline
      operationId: delete-pipeline
      description: Deletes a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Pipelines
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      x-stoplight:
        id: 4jx8uy7y3r44p
    patch:
      summary: Patch API for pipeline
      operationId: patch-pipeline
      responses:
        '200':
          $ref: '#/components/responses/PipelineCreateResponseBody'
      description: Patch API for pipeline
      tags:
        - Pipelines
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      requestBody:
        $ref: '#/components/requestBodies/PipelinePatchRequestBody'
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/validate:
    parameters:
      - name: org
        in: path
        required: true
        schema:
          type: string
        description: Organization identifier
      - name: project
        in: path
        required: true
        schema:
          type: string
        description: Project identifier
      - name: pipeline
        in: path
        required: true
        schema:
          type: string
        description: Pipeline identifier
    post:
      summary: Start a Pipeline Validation Event
      operationId: start-pipeline-validation-event
      security:
        - x-api-key: []
      description: >-
        Starts a Pipeline Validation Event and returns the UUID of the Event
        created
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
        - schema:
            type: boolean
            default: 'false'
          in: header
          name: Load-From-Cache
          description: Flag to enable loading the remote pipeline from git or git cache
        - schema:
            type: boolean
          in: query
          name: load_from_fallback_branch
          description: Flag to load the pipeline from the created non default branch
      tags:
        - Pipelines
      responses:
        '200':
          $ref: '#/components/responses/PipelineValidationUUIDResponseBody'
      x-stoplight:
        id: sw5u2qvvrztc1
  /v1/orgs/{org}/projects/{project}/pipelines/validate/{uuid}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/UuidParam'
    get:
      summary: Get Pipeline Validation Result
      operationId: get-pipeline-validate-result
      security:
        - x-api-key: []
      description: Get Pipeline Validation Result for given UUID
      x-internal: true
      tags:
        - Pipelines
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      responses:
        '200':
          $ref: '#/components/responses/PipelineValidationResponseBody'
      x-stoplight:
        id: 7oq9a7yzeq62m
  /v1/orgs/{org}/projects/{project}/input-sets:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    post:
      summary: Create an Input Set
      operationId: create-input-set
      responses:
        '201':
          $ref: '#/components/responses/InputSetResponseBody'
      tags:
        - Input Sets
      description: Creates an Input Set for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
      requestBody:
        $ref: '#/components/requestBodies/InputSetCreateRequestBody'
      x-stoplight:
        id: rs93jxpccd461
    get:
      summary: List Input Sets
      operationId: list-input-sets
      responses:
        '200':
          $ref: '#/components/responses/InputSetListResponseBody'
      tags:
        - Input Sets
      description: Returns a List of Input Sets for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
        - $ref: '#/components/parameters/PageIndex'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/SearchTerm'
        - $ref: '#/components/parameters/Sort4'
        - $ref: '#/components/parameters/Order'
      x-stoplight:
        id: r1m5r04ew0edo
  /v1/orgs/{org}/projects/{project}/input-sets/{input-set}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/InputSetParam'
    get:
      summary: Retrieve an Input Set
      tags:
        - Input Sets
      responses:
        '200':
          $ref: '#/components/responses/InputSetResponseBody'
      operationId: get-input-set
      description: Retrieves an Input Set for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: parent_entity_connector_ref
          description: Connector reference for Parent Entity (Pipeline).
        - schema:
            type: string
          in: query
          name: parent_entity_repo_name
          description: Repository name for Parent Entity (Pipeline).
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: load_from_fallback_branch
          description: Flag to load the pipeline from the created non default branch
        - schema:
            type: string
            default: 'false'
          in: header
          description: >-
            Specifies whether the remote pipeline should be loaded from Git or
            Git cache.
          name: Load-From-Cache
      x-stoplight:
        id: cghityrhzn3qi
    put:
      summary: Update an Input Set
      operationId: update-input-set
      responses:
        '200':
          $ref: '#/components/responses/InputSetResponseBody'
      description: Updates an Input Set for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
      tags:
        - Input Sets
      requestBody:
        $ref: '#/components/requestBodies/InputSetUpdateRequestBody'
      x-stoplight:
        id: yngruwctpu1nf
    delete:
      summary: Delete an Input Set
      operationId: delete-input-set
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      tags:
        - Input Sets
      description: Deletes an Input Set for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
      x-stoplight:
        id: mgc4ka4g4nczv
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/inputs:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    get:
      summary: Get Pipeline Inputs
      operationId: get-pipeline-inputs
      responses:
        '200':
          $ref: '#/components/responses/InputsResponseBody'
      description: Return Inputs for a Pipeline.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: query
          name: branch_name
          description: Name of the branch (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
      tags:
        - Inputs
      x-internal: true
      x-stoplight:
        id: 7ylrtcm85ki3c
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/move-config:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    post:
      summary: Move Pipeline YAML from inline to remote
      operationId: moveConfig
      description: Creates a remote entity by fetching pipeline YAML from Harness.
      responses:
        '200':
          $ref: '#/components/responses/PipelineMoveConfigResponseBody'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      requestBody:
        $ref: '#/components/requestBodies/PipelineMoveConfigRequestBody'
      tags:
        - Pipelines
      x-internal: false
      x-stoplight:
        id: qw42s90zscen1
  /v1/orgs/{org}/projects/{project}/input-sets/{input-set}/move-config:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/InputSetParam'
    post:
      summary: Move InputSet YAML from inline to remote
      operationId: inputSetsMoveConfig
      description: Creates a remote entity by fetching the input set YAML from Harness.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/InputSetMoveConfigRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/InputSetMoveConfigResponseBody'
      tags:
        - Input Sets
      x-internal: false
      x-stoplight:
        id: z1803ifds8q83
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/import:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    post:
      summary: Get Pipeline YAML from Git Repository
      operationId: importPipelineFromGit
      responses:
        '200':
          $ref: '#/components/responses/PipelineSaveResponseBody'
      description: >-
        Fetches Pipeline YAML from Git Repository and saves a record for it in
        Harness
      tags:
        - Pipelines
      requestBody:
        $ref: '#/components/requestBodies/PipelineImportRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      x-stoplight:
        id: 1zb3cae63roiy
  /v1/orgs/{org}/projects/{project}/input-sets/{input-set}/import:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/InputSetParam'
    post:
      summary: Get Input Set YAML from Git Repository
      operationId: importInputSetFromGit
      responses:
        '200':
          $ref: '#/components/responses/InputSetImportResponseBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
      requestBody:
        $ref: '#/components/requestBodies/InputSetImportRequestBody'
      description: >-
        Fetches InputSet YAML from Git Repository and saves a record for it in
        Harness
      tags:
        - Input Sets
      x-stoplight:
        id: qa15eqrayvc6f
  /v1/orgs/{org}/projects/{project}/approvals/execution/{execution-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/ExecutionIdParam'
    get:
      summary: Gets Approval Instances by Execution Id
      operationId: getApprovalInstancesByExecutionId
      responses:
        '200':
          $ref: '#/components/responses/ApprovalInstanceListResponseBody'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
      description: Gets Approval Instances by Execution Id [Beta]
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - name: approval_status
          in: query
          description: This filters approval instances based on status
          schema:
            type: string
            enum:
              - WAITING
              - APPROVED
              - REJECTED
              - FAILED
              - ABORTED
              - EXPIRED
        - name: approval_type
          in: query
          description: This filters approval instances based on type
          schema:
            type: string
            enum:
              - HarnessApproval
              - JiraApproval
              - CustomApproval
              - ServiceNowApproval
        - name: node_execution_id
          in: query
          description: >-
            This filters approval instances based on runtime identifier of the
            step
          schema:
            type: string
      tags:
        - Approvals
      x-stoplight:
        id: wb59o71f1bds4
    post:
      summary: Approve or Reject an Execution by Pipeline Execution ID
      operationId: addHarnessApprovalActivityByPipelineExecutionId
      responses:
        '200':
          $ref: '#/components/responses/ApprovalInstanceResponseBody'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
      x-stoplight:
        id: vea4t933wijxl
      description: Approve or Reject an Execution by Pipeline Execution ID [Beta]
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: query
          name: callback_id
          description: >-
            This filters approval instances based on callback id given in the
            step parameters
      tags:
        - Approvals
      requestBody:
        $ref: '#/components/requestBodies/HarnessApprovalActivityRequestBody'
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/git-metadata:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    put:
      summary: Update GitMetadata for Remote Pipelines
      operationId: update-pipeline-git-metadata
      responses:
        '200':
          $ref: '#/components/responses/GitMetadataUpdateResponseBody'
      requestBody:
        $ref: '#/components/requestBodies/GitMetadataUpdateRequestBody'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      tags:
        - Pipelines
      description: Update git-metadata in remote pipeline
      x-stoplight:
        id: i92x28iwkosxx
  /v1/orgs/{org}/projects/{project}/input-sets/{input-set}/git-metadata:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/InputSetParam'
    put:
      summary: Update GitMetadata for Remote InputSet
      operationId: update-input-set-git-metadata
      responses:
        '200':
          $ref: '#/components/responses/GitMetadataUpdateResponseBody'
      requestBody:
        $ref: '#/components/requestBodies/GitMetadataUpdateRequestBody'
      security:
        - x-api-key: []
      tags:
        - Input Sets
      description: Update git-metadata in remote inputSet and return the updated inputSet
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/PipelineInputSetParam'
      x-stoplight:
        id: 27vwjxn4ddjd9
  /v1/pipeline-schema/individual-schema:
    parameters: []
    get:
      summary: Get Individual Static Schema
      operationId: get-individual-static-schema
      responses:
        '200':
          $ref: '#/components/responses/IndividualSchemaResponseBody'
      x-stoplight:
        id: 0k8ms0d67bib3
      description: get individual schema for any step/stage/strategy/stepgroup.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
            enum:
              - step
              - stage
              - pipeline
              - strategy
              - step_group
              - trigger
          in: query
          name: node_group
        - schema:
            type: string
          in: query
          name: node_type
        - schema:
            type: string
            enum:
              - iacm
              - cd
              - ci
              - security
              - approval
              - custom
              - cf
              - template
          in: query
          name: node_group_differentiator
        - schema:
            type: string
            default: v0
            enum:
              - v0
              - v1
          in: query
          name: version
      security:
        - x-api-key: []
      tags:
        - Schemas
      x-internal: true
  /v1/pipeline-schema/inputs-schema:
    parameters: []
    post:
      summary: Get Inputs Schema
      operationId: get-inputs-schema
      responses:
        '200':
          $ref: '#/components/responses/PipelineInputSchemaDetailsResponseBody'
      x-stoplight:
        id: ep4bfvpcvsdfl
      tags:
        - Schemas
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/PipelineInputsSchemaRequestBody'
      x-internal: true
  /v1/step-pallete:
    parameters: []
    post:
      summary: Get steps for the steps-pallete
      operationId: get-steps
      responses:
        '200':
          $ref: '#/components/responses/StepsDataResponseBody'
      tags:
        - Steps
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/StepPalleteFilterRequestBody'
      x-internal: true
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    post:
      summary: Execute Pipeline
      operationId: execute-pipeline
      responses:
        '200':
          $ref: '#/components/responses/PipelineExecuteResponseBody'
      x-stoplight:
        id: 1afpa0a08cfyg
      requestBody:
        $ref: '#/components/requestBodies/PipelineExecuteRequestBody'
      parameters:
        - schema:
            type: string
          in: query
          name: module
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: use_fqn_if_error_response
          description: Use FQN in error response.
        - schema:
            type: boolean
            default: 'false'
          in: query
          name: notify_only_user
        - schema:
            type: string
          in: query
          name: notes
          description: Notes of a pipeline execution
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
      description: Pipeline Execution API
      tags:
        - Pipeline Execution
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/inputs-schema:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    get:
      summary: Get inputs schema details
      tags:
        - Pipelines
      responses:
        '200':
          $ref: '#/components/responses/PipelineInputSchemaDetailsResponseBody'
      operationId: get-inputs-schema-details
      x-stoplight:
        id: hdedvdslufq8m
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
      description: ''
      x-internal: true
  /v1/orgs/{org}/projects/{project}/input-sets/merge:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
    post:
      summary: ''
      operationId: merged-input-sets
      responses:
        '200':
          $ref: '#/components/responses/MergeInputSetResponseBody'
      x-stoplight:
        id: ljg2bbzoqmc07
      description: Gets merged input sets
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: header
          name: Load-From-Cache
          description: Flag to enable loading the remote Pipeline from git or git cache
        - $ref: '#/components/parameters/PipelineInputSetParam'
        - $ref: '#/components/parameters/PipelineRepoID'
        - $ref: '#/components/parameters/PipelineBranch'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: parent_entity_connector_ref
          description: Connector reference for Parent Entity (Pipeline).
        - schema:
            type: string
          in: query
          name: parent_entity_repo_name
          description: Repository name for Parent Entity (Pipeline).
      requestBody:
        $ref: '#/components/requestBodies/MergeInputSetRequestBody'
      x-internal: true
      tags:
        - Input Sets
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/rerun/{execution-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
      - $ref: '#/components/parameters/ExecutionIdParam'
    post:
      summary: Rerun Pipeline
      operationId: rerun-pipeline
      responses:
        '200':
          $ref: '#/components/responses/PipelineExecuteResponseBody'
      x-stoplight:
        id: 8rms04nwjz7uq
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: query
          name: module
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI.
        - schema:
            type: boolean
            default: false
          in: query
          name: use_fqn_if_error
        - schema:
            type: string
          in: query
          name: notes
          description: Notes of a pipeline execution
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
      requestBody:
        $ref: '#/components/requestBodies/RerunPipelineRequestBody'
      description: Rerun Pipeline Execution
      tags:
        - Pipeline Execution
      x-internal: true
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/retry/{execution-id}:
    post:
      summary: Retry Pipeline
      operationId: retry-pipeline-with-inputset-pipeline-yaml
      responses:
        '200':
          $ref: '#/components/responses/PipelineExecuteResponseBody'
      x-stoplight:
        id: s6t1sk8tjrzpj
      description: Retry a executed Pipeline with inputSet Pipeline yaml.
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: query
          name: module
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI.
        - schema:
            type: array
            items:
              type: string
          in: query
          name: retry_stages
          allowEmptyValue: false
          description: >-
            This param contains the identifier of stages from where to resume.
            It will be a list if we want to retry from parallel group.
        - schema:
            type: boolean
            default: true
          in: query
          name: run_all_stages
          description: >-
            This param provides an option to run only the failed stages when
            Pipeline fails at parallel group. By default, it will run all the
            stages in the failed parallel group.
        - schema:
            type: string
          in: query
          name: notes
          description: Notes of a Pipeline execution.
      requestBody:
        $ref: '#/components/requestBodies/RerunPipelineRequestBody'
      x-internal: true
      tags:
        - Pipeline Execution
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
      - $ref: '#/components/parameters/ExecutionIdParam'
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/stages-execution-list:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    get:
      summary: Get Stages execution List for a given Pipeline execution.
      tags:
        - Pipeline Execution
      responses:
        '200':
          $ref: '#/components/responses/StageExecutionResponseList'
      operationId: get-stages-execution-list
      x-stoplight:
        id: aixvxgt5qd21j
      description: >-
        Returns list of Stage identifiers with their names and stage
        dependencies
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
            default: 'false'
          in: header
          name: Load-From-Cache
          description: Flag to enable loading the remote Pipeline from git or git cache
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/rerun/{execution-id}/stages:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
      - $ref: '#/components/parameters/ExecutionIdParam'
    post:
      summary: Re-run Stages Execution of a Pipeline
      tags:
        - Pipeline Execution
      responses:
        '200':
          $ref: '#/components/responses/PipelineExecuteResponseBody'
      operationId: rerun-stages-execution-of-pipeline
      x-stoplight:
        id: fiduvh2471by2
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience)
        - schema:
            type: boolean
            default: false
          in: query
          name: use_fqn_if_error
          description: Use FQN in error response
        - schema:
            type: string
          in: query
          name: module
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI.
        - schema:
            type: string
          in: query
          name: notes
          description: Notes of a pipeline execution
      requestBody:
        $ref: '#/components/requestBodies/RunStageRequestBody'
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/execute/stages:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineParam'
    post:
      summary: Execute given Stages of a Pipeline
      tags:
        - Pipeline Execution
      responses:
        '200':
          $ref: '#/components/responses/PipelineExecuteResponseBody'
      operationId: execute-stages-with-input-yaml
      x-stoplight:
        id: gp30uxkm66ijj
      description: Execute given Stages of a Pipeline with Input Yaml
      parameters:
        - $ref: '#/components/parameters/AccountHeader4'
        - schema:
            type: string
          in: query
          name: module
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI.
        - schema:
            type: string
            default: 'false'
          in: query
          name: use_fqn_if_error
          description: Use FQN in error response.
        - schema:
            type: string
          in: query
          name: notes
          description: Notes of a Pipeline execution.
        - $ref: '#/components/parameters/Branch'
        - schema:
            type: string
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
      requestBody:
        $ref: '#/components/requestBodies/RunStageRequestBody'
  /v1/templates:
    post:
      summary: Create Template
      operationId: create-templates-acc
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      requestBody:
        $ref: '#/components/requestBodies/TemplateCreateBody'
      responses:
        '201':
          $ref: '#/components/responses/TemplateResponse'
      tags:
        - Account Template
      description: Creates a Template in the Account scope.
    get:
      summary: Get Templates List
      operationId: get-templates-list-acc
      responses:
        '200':
          $ref: '#/components/responses/TemplateMetaDataList'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit4'
        - $ref: '#/components/parameters/Sort5'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm4'
        - $ref: '#/components/parameters/TemplateListType'
        - $ref: '#/components/parameters/IncludeAllTemplatesAccessibleAtScope'
        - $ref: '#/components/parameters/TemplateNames'
        - $ref: '#/components/parameters/TemplateIds'
        - $ref: '#/components/parameters/Description'
        - $ref: '#/components/parameters/EntityType'
        - $ref: '#/components/parameters/TemplateChildTypes'
      tags:
        - Account Template
      description: Retrieves list of Template with meta-data at Account scope.
    parameters: []
  /v1/templates/git-metadata/{template}:
    put:
      summary: Update Git details
      operationId: update-git-metadata-details
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateGitMetadataRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateGitMetadataResponse'
      tags:
        - Account Template
      description: Update Git details for multiple version.
      x-stoplight:
        id: tog1x9p2m2dy5
    parameters:
      - $ref: '#/components/parameters/Template'
  /v1/templates/{template}:
    parameters:
      - $ref: '#/components/parameters/Template'
    get:
      summary: Get Stable Template
      tags:
        - Account Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      operationId: get-template-stable-acc
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      description: Retrieves stable version of Template at Account scope.
  /v1/templates/{template}/versions/{version}:
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Retrieve a Template
      tags:
        - Account Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      operationId: get-template-acc
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      description: Retrieves particular version of Template at Account scope.
    put:
      summary: Update Template
      operationId: update-template-acc
      responses:
        '200':
          $ref: '#/components/responses/TemplateResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Account Template
      description: Updates particular version of Template at Account scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateBody'
    delete:
      summary: Delete Template
      operationId: delete-template-acc
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Comments'
        - $ref: '#/components/parameters/ForceDelete1'
      tags:
        - Account Template
      description: Deletes particular version of Template at Account scope.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
  /v1/templates/{template}/versions/{version}/stable:
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    put:
      summary: Update Stable Template
      operationId: update-template-stable-acc
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateStableResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Account Template
      description: Updates the stable version of Template at Account scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateFetchBody'
  /v1/orgs/{org}/templates/git-metadata/{template}:
    put:
      summary: Update Git details
      operationId: update-git-metadata-details-org
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateGitMetadataRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateGitMetadataResponse'
      tags:
        - Org Template
      description: Update Git details for multiple version.
      x-stoplight:
        id: xu5qlm73hydwx
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Org'
  /v1/orgs/{org}/templates:
    parameters:
      - $ref: '#/components/parameters/Org'
    post:
      summary: Create Template
      operationId: create-templates-org
      responses:
        '201':
          $ref: '#/components/responses/TemplateResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Org Template
      description: Creates a Template in the Organization scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateCreateBody'
    get:
      summary: Get Templates List
      operationId: get-templates-list-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateMetaDataList'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit4'
        - $ref: '#/components/parameters/Sort5'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm4'
        - $ref: '#/components/parameters/TemplateListType'
        - $ref: '#/components/parameters/IncludeAllTemplatesAccessibleAtScope'
        - $ref: '#/components/parameters/TemplateNames'
        - $ref: '#/components/parameters/TemplateIds'
        - $ref: '#/components/parameters/Description'
        - $ref: '#/components/parameters/EntityType'
        - $ref: '#/components/parameters/TemplateChildTypes'
      tags:
        - Org Template
      description: Retrieves list of Template with meta-data at Organization scope.
  /v1/orgs/{org}/templates/{template}:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Template'
    get:
      summary: Get Stable Template
      operationId: get-template-stable-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      tags:
        - Org Template
      description: Retrieves stable version of Template at Organization scope.
  /v1/orgs/{org}/templates/{template}/versions/{version}:
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Retrieve a Template
      operationId: get-template-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      tags:
        - Org Template
      description: Retrieves particular version of Template at Organization scope.
    put:
      summary: Update Template
      operationId: update-template-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Org Template
      description: Updates particular version of Template at Organization scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateBody'
    delete:
      summary: Delete Template
      operationId: delete-template-org
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Comments'
        - $ref: '#/components/parameters/ForceDelete1'
      tags:
        - Org Template
      description: Deletes particular version of Template at Organization scope.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
  /v1/orgs/{org}/templates/{template}/versions/{version}/stable:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    put:
      summary: Update Stable Template
      operationId: update-template-stable-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateStableResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Org Template
      description: Updates the stable version of Template at Organization scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateFetchBody'
  /v1/orgs/{org}/projects/{project}/templates/git-metadata/{template}:
    put:
      summary: Update Git details
      operationId: update-git-metadata-details-project
      parameters:
        - $ref: '#/components/parameters/Org'
        - $ref: '#/components/parameters/Project'
        - $ref: '#/components/parameters/AccountHeaderParam'
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateGitMetadataRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateGitMetadataResponse'
      tags:
        - Project Template
      description: Update Git details for multiple version.
      x-stoplight:
        id: 9ta5osrcrp83u
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
  /v1/orgs/{org}/projects/{project}/templates:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
    post:
      summary: Create Template
      operationId: create-templates-project
      responses:
        '201':
          $ref: '#/components/responses/TemplateResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Project Template
      description: Creates a Template in the Project scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateCreateBody'
    get:
      summary: Get Templates List
      operationId: get-templates-list-project
      responses:
        '200':
          $ref: '#/components/responses/TemplateMetaDataList'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/Limit4'
        - $ref: '#/components/parameters/Sort5'
        - $ref: '#/components/parameters/Order'
        - $ref: '#/components/parameters/SearchTerm4'
        - $ref: '#/components/parameters/TemplateListType'
        - $ref: '#/components/parameters/IncludeAllTemplatesAccessibleAtScope'
        - $ref: '#/components/parameters/TemplateNames'
        - $ref: '#/components/parameters/TemplateIds'
        - $ref: '#/components/parameters/Description'
        - $ref: '#/components/parameters/EntityType'
        - $ref: '#/components/parameters/TemplateChildTypes'
      tags:
        - Project Template
      description: Retrieves list of Template with meta-data at Project scope.
  /v1/orgs/{org}/projects/{project}/templates/{template}:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
      - $ref: '#/components/parameters/Template'
    get:
      summary: Get Stable Template
      tags:
        - Project Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      operationId: get-template-stable-project
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      description: Retrieves stable version of Template at Project scope.
  /v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}:
    parameters:
      - $ref: '#/components/parameters/Project'
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Retrieve a Template
      tags:
        - Project Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateWithInputsResponse'
      operationId: get-template-project
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/GetTemplateInputYaml'
        - $ref: '#/components/parameters/Branch1'
        - $ref: '#/components/parameters/ParentConnectorRef'
        - $ref: '#/components/parameters/ParentRepoName'
        - $ref: '#/components/parameters/ParentAccountId'
        - $ref: '#/components/parameters/ParentOrgId'
        - $ref: '#/components/parameters/ParentProjectId'
      description: Retrieves particular version of Template at Project scope.
    put:
      summary: Update Template
      operationId: update-template-project
      responses:
        '200':
          $ref: '#/components/responses/TemplateResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Project Template
      description: Updates particular version of Template at Project scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateUpdateBody'
    delete:
      summary: Delete Template
      operationId: delete-template-project
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - $ref: '#/components/parameters/Comments'
        - $ref: '#/components/parameters/ForceDelete1'
      tags:
        - Project Template
      description: Deletes particular version of Template at Project scope.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: {}
            application/yaml:
              schema:
                type: object
                properties: {}
              examples:
                example-resp:
                  value: |
                    {}
  /v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}/stable:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    put:
      summary: Update Stable Template
      operationId: update-template-stable-project
      responses:
        '200':
          $ref: '#/components/responses/TemplateUpdateStableResponse'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      tags:
        - Project Template
      description: Updates the stable version of Template at Project scope.
      requestBody:
        $ref: '#/components/requestBodies/TemplateFetchBody'
  /v1/templates/{template}/import:
    post:
      summary: Import Template
      operationId: import-template-acc
      responses:
        '200':
          $ref: '#/components/responses/TemplateImportResponseBody'
      requestBody:
        $ref: '#/components/requestBodies/TemplateImportRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      description: Import template at account level
      tags:
        - Account Template
    parameters:
      - $ref: '#/components/parameters/Template'
  /v1/orgs/{org}/templates/{template}/import:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Template'
    post:
      summary: Import template
      operationId: import-template-org
      responses:
        '200':
          $ref: '#/components/responses/TemplateImportResponseBody'
      description: Import template at org level
      tags:
        - Org Template
      requestBody:
        $ref: '#/components/requestBodies/TemplateImportRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
  /v1/orgs/{org}/projects/{project}/templates/{template}/import:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
      - $ref: '#/components/parameters/Template'
    post:
      summary: Import Template
      operationId: import-template-project
      responses:
        '200':
          $ref: '#/components/responses/TemplateImportResponseBody'
      description: Import template at a project level
      tags:
        - Project Template
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      requestBody:
        $ref: '#/components/requestBodies/TemplateImportRequestBody'
  /v1/template-schema/individual-schema:
    get:
      summary: Your GET endpoint
      tags:
        - Schemas
      responses:
        '200':
          $ref: '#/components/responses/TemplateSchemaResponse'
      operationId: get-template-schema
      x-stoplight:
        id: h6h9r4i2dcor0
      description: Gets Templates Schema
      parameters:
        - schema:
            type: string
            enum:
              - artifactsourcetemplate
              - customdeployment
              - monitoredservice
              - secretmanager
              - stage
              - pipeline
              - step
              - stepgroup
              - template
          in: query
          name: node_group
        - schema:
            type: string
          in: query
          name: node_type
        - $ref: '#/components/parameters/AccountHeaderParam'
        - schema:
            type: string
            enum:
              - v0
              - v1
            default: v0
          in: query
          name: version
      x-internal: true
    parameters: []
  /v1/template-schema/inputs-schema:
    post:
      summary: get inputs-schema api
      tags:
        - Schemas
      responses:
        '200':
          $ref: '#/components/responses/TemplateInputSchemaDetailsResponseBody'
      operationId: get-inputs-schema1
      x-stoplight:
        id: pqgesg6op1rb1
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
        - schema:
            type: string
          in: query
          name: org_id
          description: Org Identifier
        - schema:
            type: string
          in: query
          name: project_id
          description: Project Identifier
      description: ''
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/TemplateInputsSchemaRequestBody'
  /v1/templates/{template}/versions/{version}/inputs-schema:
    parameters:
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Get inputs schema for account level templates
      tags:
        - Account Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateInputSchemaDetailsResponseBody'
      operationId: get-acc-templates-inputs-schema
      x-stoplight:
        id: 21m2y3edtnhla
      description: get inputs schema for account level templates
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      x-internal: true
  /v1/orgs/{org}/templates/{template}/versions/{version}/inputs-schema:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Get inputs schema for org level templates
      tags:
        - Org Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateInputSchemaDetailsResponseBody'
      operationId: get-org-templates-inputs-schema
      x-stoplight:
        id: w181v2ceicvz6
      x-internal: true
      description: get inputs schema for org level templates
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
  /v1/orgs/{org}/projects/{project}/templates/{template}/versions/{version}/inputs-schema:
    parameters:
      - $ref: '#/components/parameters/Org'
      - $ref: '#/components/parameters/Project'
      - $ref: '#/components/parameters/Template'
      - $ref: '#/components/parameters/Version'
    get:
      summary: Get inputs schema for project level templates
      tags:
        - Project Template
      responses:
        '200':
          $ref: '#/components/responses/TemplateInputSchemaDetailsResponseBody'
      operationId: get-project-templates-inputs-schema
      x-stoplight:
        id: 9lff7z2spnh4w
      parameters:
        - $ref: '#/components/parameters/AccountHeaderParam'
      description: get inputs schema for project level templates
      x-internal: true
  /v1/backstage-env-variables:
    get:
      summary: List Backstage Env Variables
      responses:
        '200':
          $ref: '#/components/responses/BackstageEnvVariableResponseList'
      operationId: get-backstage-env-variables
      description: Get all backsage env variables mapping for a given account
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/Limit5'
        - $ref: '#/components/parameters/Sort6'
      security:
        - x-api-key: []
      x-internal: true
      tags:
        - BackstageEnvVariable
    post:
      summary: Create Backstage Environment Variable
      operationId: create-backstage-env-variable
      responses:
        '201':
          $ref: '#/components/responses/BackstageEnvVariableResponse'
      description: Creates an backstage environment variable
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/BackstageEnvVariableRequest'
      x-internal: true
      tags:
        - BackstageEnvVariable
  /v1/backstage-env-variables/sync:
    put:
      summary: Sync Backstage Environment Variables
      operationId: sync-backstage-env-variables
      description: >-
        Synchronize all backstage environment variables mapping for a given
        account
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      responses:
        '204':
          description: No Content
      tags:
        - BackstageEnvVariable
  /v1/backstage-env-variables/{backstage-env-variable}:
    parameters:
      - $ref: '#/components/parameters/BackstageEnvVariable'
    get:
      summary: Get Backstage Environment Variable
      responses:
        '200':
          $ref: '#/components/responses/BackstageEnvVariableResponse'
      operationId: get-backstage-env-variable
      description: >-
        Get backstage environment variable mapping for a given backstage env
        variable
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      tags:
        - BackstageEnvVariable
    put:
      summary: Updates a backstage env variable
      operationId: update-backstage-env-variable
      responses:
        '200':
          $ref: '#/components/responses/BackstageEnvVariableResponse'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/BackstageEnvVariableRequest'
      description: Updates the specified backstage env variable
      x-internal: true
      tags:
        - BackstageEnvVariable
    delete:
      summary: Deletes a backstage env variable
      operationId: delete-backstage-env-variable
      description: Deletes the requested backstage env variable
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      responses:
        '204':
          description: No Content
      tags:
        - BackstageEnvVariable
  /v1/backstage-env-variables/batch:
    post:
      summary: Creates Multiple backstage env variables
      operationId: create-backstage-env-variables
      responses:
        '201':
          $ref: '#/components/responses/BackstageEnvVariableResponseList'
      description: Creates multiple backstage env variables
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/BackstageEnvVariableBatchRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      tags:
        - BackstageEnvVariable
    put:
      summary: Updates Multiple backstage env variables
      operationId: update-backstage-env-variables
      responses:
        '200':
          $ref: '#/components/responses/BackstageEnvVariableResponseList'
      description: Updates the multiple backstage env variables specified in the request
      x-internal: true
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/BackstageEnvVariableBatchRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - BackstageEnvVariable
    delete:
      summary: Deletes Multiple backstage env variables
      operationId: delete-backstage-env-variables
      responses:
        '204':
          description: No Content
      description: Deletes the multiple backstage env variables specified in the request
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - schema:
            type: array
            default: null
            items:
              type: string
          in: query
          name: backstage-env-variable
          description: Identifier field of backstage env variable
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - BackstageEnvVariable
  /v1/backstage-env-variables/resolve:
    get:
      summary: Resolve Backstage Environment Variables
      tags:
        - BackstageEnvVariable
      responses:
        '200':
          $ref: '#/components/responses/ResolvedEnvVariableResponse'
      operationId: resolve-backstage-env-variables
      description: >-
        Returns a list of backstage env variables with their decrypted values
        for the given account
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Namespace'
      security:
        - x-api-key: []
  /v1/backstage-env-variables/reload/{namespace}:
    put:
      summary: Reload backstage env variables
      operationId: reload-backstage-env-variables
      responses:
        '204':
          description: No Content
      x-stoplight:
        id: 2atylhkq79myt
      description: Reload backstage env variables
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      tags:
        - BackstageEnvVariable
    parameters:
      - $ref: '#/components/parameters/NamespacePathParam'
  /v1/backstage-permissions:
    get:
      summary: Get Backstage Permissions
      responses:
        '200':
          $ref: '#/components/responses/BackstagePermissionsResponse'
      operationId: get-backstage-permissions
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      description: Get all backstage permissions for a given account
      security:
        - x-api-key: []
      x-internal: true
      tags:
        - BackstagePermissions
    post:
      summary: Create backstage Permissions
      operationId: create-backstage-permissions
      responses:
        '201':
          $ref: '#/components/responses/BackstagePermissionsResponse'
      description: Creates backstage Permissions for a given account
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/BackstagePermissionsRequest'
      x-internal: true
      tags:
        - BackstagePermissions
    put:
      summary: Updates Backstage Permission
      operationId: update-backstage-permissions
      responses:
        '200':
          $ref: '#/components/responses/BackstagePermissionsResponse'
      description: Update Backstage Permission
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/BackstagePermissionsRequest'
      tags:
        - BackstagePermissions
  /v1/status-info/{type}:
    parameters:
      - $ref: '#/components/parameters/StatusType'
    get:
      summary: Gets Status Info by type
      tags:
        - StatusInfo
      operationId: get-status-info-by-type
      description: Get status info for the given type
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/StatusInfoResponse'
      x-internal: true
    post:
      summary: Saves Status Info by type
      tags:
        - StatusInfo
      operationId: save-status-info-by-type
      responses:
        '201':
          $ref: '#/components/responses/StatusInfoResponse'
      description: Saves status info for the given type
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/StatusInfoRequest'
      x-internal: true
  /v2/status-info/{type}:
    get:
      summary: Get Status Info by type
      description: Get Status Info for the given type
      tags:
        - StatusInfoV2
      responses:
        '200':
          $ref: '#/components/responses/StatusInfoResponseV2'
      operationId: get-status-info-type-v2
      x-stoplight:
        id: g2rre6x1jk36w
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/StatusType'
      security:
        - x-api-key: []
      x-internal: true
  /v1/namespace-info:
    get:
      summary: Get Namespace Info
      responses:
        '200':
          $ref: '#/components/responses/NamespaceResponse'
      operationId: get-namespace-info
      description: Get the corresponding customer namepsace using account id.
      x-internal: true
      security:
        - x-api-key: []
      tags:
        - Namespace
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
    post:
      summary: Create Namespace
      operationId: create-namespace
      description: Create Namespace from accountId
      security:
        - x-api-key: []
      x-internal: true
      responses:
        '200':
          $ref: '#/components/responses/NamespaceResponse'
      tags:
        - Namespace
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/account-info/{namespace}:
    get:
      summary: Get Account Info
      responses:
        '200':
          $ref: '#/components/responses/NamespaceResponse'
      operationId: get-account-for-namespace
      description: Get account information for given namespace
      security:
        - x-api-key: []
      tags:
        - AccountInfo
      x-internal: true
    parameters:
      - schema:
          type: string
        name: namespace
        description: Backstage Namespace
        in: path
        required: true
  /v1/provision-idp:
    post:
      summary: Provision IDP
      operationId: provision-idp
      responses:
        '200':
          $ref: '#/components/responses/NamespaceResponse'
      tags:
        - Provision
      description: Provision IDP for given account
      security:
        - x-api-key: []
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/onboarding/harness-entities:
    get:
      summary: Get Harness Entities
      operationId: get-harness-entities
      responses:
        '200':
          $ref: '#/components/responses/HarnessEntitiesResponse'
      tags:
        - OnboardingResource
      x-internal: true
      description: Get Harness Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/Limit5'
        - $ref: '#/components/parameters/Sort6'
        - $ref: '#/components/parameters/Order1'
        - $ref: '#/components/parameters/SearchTerm5'
        - schema:
            type: string
            default: null
          in: query
          name: project_to_filter
          description: >-
            This would be used to filter resources having attributes matching
            the project filter.
  /v1/onboarding/harness-entities-count:
    get:
      summary: Get Harness Entities Count
      operationId: get-harness-entities-count
      responses:
        '200':
          $ref: '#/components/responses/HarnessEntitiesCountResponse'
      description: Get Harness Entities Count
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - OnboardingResource
      x-internal: true
  /v1/onboarding/import-harness-entities:
    post:
      summary: Import Harness Entities to IDP
      operationId: import-harness-entities
      description: Import Harness Entities to IDP
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/ImportHarnessEntitiesRequest'
      tags:
        - OnboardingResource
      responses:
        '200':
          $ref: '#/components/responses/ImportEntitiesResponse'
      x-internal: true
  /v1/layout:
    get:
      summary: List Layouts
      responses:
        '200':
          $ref: '#/components/responses/LayoutResponse'
      operationId: get-all-layouts
      x-internal: true
      description: Get all layouts
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LayoutProxy
    post:
      summary: Create layout
      operationId: create-layout
      responses:
        '200':
          $ref: '#/components/responses/LayoutResponse'
      description: Create layout
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LayoutProxy
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LayoutRequest'
    delete:
      summary: Delete layout
      operationId: delete-layout
      responses:
        '204':
          description: No Content
      description: Delete layout
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LayoutProxy
      requestBody:
        $ref: '#/components/requestBodies/LayoutRequest'
  /v1/layout/{layout-identifier}:
    get:
      summary: Get layout
      responses:
        '200':
          $ref: '#/components/responses/LayoutResponse'
      operationId: get-layout
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LayoutProxy
      description: Get Layout
      x-internal: true
    parameters:
      - $ref: '#/components/parameters/LayoutIdentifier'
  /v1/layout/health:
    get:
      summary: Get Layout Health
      responses:
        '200':
          $ref: '#/components/responses/LayoutResponse'
      operationId: get-layout-health
      description: Get Layout Health
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LayoutProxy
  /v1/plugin-toggle/{plugin-id}:
    post:
      summary: Toggle Plugin
      operationId: toggle-plugin-for-account
      description: Toggle Backstage Plugin
      responses:
        '200':
          $ref: '#/components/responses/AppConfigResponse'
      parameters:
        - schema:
            type: string
          in: header
          name: Harness-Account
          description: Identifier field of the account the resource is scoped to.
        - $ref: '#/components/parameters/PluginName'
        - $ref: '#/components/parameters/Enabled'
      security:
        - x-api-key: []
      tags:
        - AppConfig
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/PluginId'
  /v1/plugins-info:
    get:
      summary: List Available Plugins
      tags:
        - PluginInfo
      responses:
        '200':
          $ref: '#/components/responses/PluginInfoResponseList'
      operationId: get-plugins
      description: Get all plugins available
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: false
    post:
      summary: Save custom plugin info
      operationId: save-custom-plugins-info
      responses:
        '201':
          $ref: '#/components/responses/CustomPluginInfoResponse'
      x-stoplight:
        id: t4vsvfeuf169r
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      requestBody:
        $ref: '#/components/requestBodies/CustomPluginCreateRequest'
      tags:
        - PluginInfo
  /v1/plugins-info/{plugin-id}:
    get:
      summary: Get Plugin
      tags:
        - PluginInfo
      responses:
        '200':
          $ref: '#/components/responses/PluginDetailedInfoResponse'
      operationId: get-plugins-info-plugin-id
      description: Get plugin details for given pluginId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Meta'
      x-internal: false
    put:
      summary: Update custom plugin info
      operationId: update-custom-plugins-info
      responses:
        '200':
          $ref: '#/components/responses/CustomPluginInfoResponse'
      x-stoplight:
        id: jt3xnyhpgnfe9
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CustomPluginInfoRequest'
      tags:
        - PluginInfo
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
    parameters:
      - $ref: '#/components/parameters/PluginId'
    delete:
      summary: Delete custom plugin info
      operationId: delete-custom-plugin-info
      responses:
        '204':
          description: No Content
      x-stoplight:
        id: 1brpcp6chep0j
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/PluginName'
      tags:
        - PluginInfo
  /v1/app-config:
    post:
      summary: Save Or Update Plugin Config
      operationId: save-or-update-plugin-app-config
      description: Save or Update Plugin Config
      responses:
        '200':
          $ref: '#/components/responses/AppConfigResponse'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/AppConfigRequest'
      x-internal: false
      tags:
        - AppConfig
  /v1/connectors-info:
    get:
      summary: List Connectors Info
      tags:
        - ConnectorInfo
      responses:
        '200':
          $ref: '#/components/responses/ConnectorInfoResponseList'
      operationId: get-connectors-info
      description: Get all connectors info
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
  /v1/connector-info:
    get:
      summary: Get Connector Info
      tags:
        - ConnectorInfo
      operationId: get-connector-info
      responses:
        '200':
          $ref: '#/components/responses/ConnectorInfoResponse'
      description: Get Connector Info
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: false
    post:
      summary: Create or Update Connector Info
      tags:
        - ConnectorInfo
      operationId: save-connector-info
      responses:
        '201':
          $ref: '#/components/responses/ConnectorInfoResponse'
      description: Create or update connector info
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConnectorInfoRequest'
      x-internal: false
  /v1/connector-info/{provider-type}:
    get:
      summary: Get Connector Info by Provider Type
      tags:
        - ConnectorInfo
      responses:
        '200':
          $ref: '#/components/responses/ConnectorInfoResponse'
      operationId: get-connector-info-by-providerType
      description: Get connector info by connector provider type
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/ProviderType'
      x-internal: false
  /v1/merged-plugins-config:
    get:
      summary: Retrieve Merged Config for Enabled Plugins.
      responses:
        '200':
          $ref: '#/components/responses/MergedPluginConfigResponse'
      operationId: get-merged-plugins-config
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      description: API for retriving merged configs for enabled plugin of account.
      tags:
        - MergedPluginsConfig
  /v1/backstage-plugins-info:
    get:
      summary: List Available Backstage Plugins
      tags:
        - PluginInfo
      responses:
        '200':
          $ref: '#/components/responses/PluginInfoResponseList'
      operationId: get-backstage-plugins
      description: Get all backstage plugins available
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
  /v1/plugin/request:
    post:
      summary: Request for a Plugin
      operationId: post-plugin-request
      responses:
        '201':
          description: Created
      tags:
        - PluginInfo
      description: Request for a Plugin
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/RequestPluginRequest'
    get:
      summary: Get all plugin requests for an account
      operationId: get-plugin-request
      responses:
        '200':
          $ref: '#/components/responses/PluginRequestResponseList'
      tags:
        - PluginInfo
      x-internal: false
      description: Get all plugin requests for an account
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/Limit5'
  /v1/layout/ingest:
    post:
      summary: Ingest plugin layout
      operationId: layout-ingest
      responses:
        '200':
          $ref: '#/components/responses/LayoutResponse'
      tags:
        - LayoutProxy
      description: Ingest plugin layout
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LayoutIngestRequest'
  /v1/sync-app-config:
    put:
      summary: Sync merged app-config for a given account
      operationId: sync-app-config
      responses:
        '204':
          description: No Content
      description: >-
        API to sync app-config for a given account. This API can be accessed by
        Support User only.
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - schema:
            type: boolean
            default: false
          in: query
          name: base_config
          description: Set true to sync base app-config too
      tags:
        - MergedPluginsConfig
  /v1/onboarding/generate-yaml:
    post:
      summary: Generate YAML Definition for entity
      operationId: onboarding-generate-yaml
      responses:
        '200':
          $ref: '#/components/responses/GenerateYamlResponse'
      tags:
        - OnboardingResource
      x-internal: true
      description: Generate YAML Definition for entity
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/GenerateYamlRequest'
  /v1/auth-info/{auth-id}:
    get:
      summary: Get Auth Info
      tags:
        - AuthInfo
      responses:
        '200':
          $ref: '#/components/responses/AuthInfoResponse'
      operationId: get-auth-info-auth-id
      description: Get auth details for given authId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/AuthId'
      x-internal: true
    post:
      summary: Save Auth Info
      tags:
        - AuthInfo
      operationId: save-auth-info-auth-id
      responses:
        '201':
          $ref: '#/components/responses/BackstageEnvVariableResponseList'
      description: Save auth details for given authId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/AuthId'
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BackstageEnvVariableBatchRequest'
  /v1/allow-list:
    get:
      summary: Get backend url allow list
      tags:
        - AllowList
      responses:
        '200':
          $ref: '#/components/responses/AllowListResponse'
      operationId: get-allow-list
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      description: Get backend url allow list
    post:
      summary: Save backend url allow list
      description: Save backend url allow list
      tags:
        - AllowList
      operationId: save-allow-list
      responses:
        '201':
          $ref: '#/components/responses/AllowListResponse'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AllowListRequest'
        description: Save backend url allow list
  /v1/configuration-entities:
    put:
      summary: Updates entities present in the configuration screen
      operationId: update-configuration-entities
      responses:
        '200':
          $ref: '#/components/responses/ConfigurationEntitiesResponse'
      description: Updates entities present in the configuration screen
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/ConfigurationEntitiesRequest'
      x-internal: true
      tags:
        - MergedPluginsConfig
      x-stoplight:
        id: 67gwj4u4mz6nb
  /v1/data-sources:
    get:
      summary: Get Datasources Present In Account
      tags:
        - DataSource
      responses:
        '200':
          $ref: '#/components/responses/DataSourcesResponse'
      operationId: get-all-datasources-for-account
      x-stoplight:
        id: vdsu1dzt8t3tz
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      description: API for getting all the datasources present in account.
      x-internal: false
      security:
        - x-api-key: []
  /v1/data-sources/{data-source}/datapoints:
    parameters:
      - schema:
          type: string
        name: data-source
        in: path
        required: true
        description: Identifier for datasource
    get:
      summary: Get DataPoints present in DataSources for an account
      tags:
        - DataSource
      responses:
        '200':
          $ref: '#/components/responses/DatapointResponse'
      operationId: get-data-points-for-data-source
      x-stoplight:
        id: aogrjef7pusxj
      description: Get DataPoints Present in DataSources
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/scores/summary:
    get:
      summary: Get Score Summary for Scorecards
      responses:
        '200':
          $ref: '#/components/responses/ScorecardSummaryInfoResponse'
      operationId: get-all-scorecard-summary
      x-stoplight:
        id: 6hoo6kwpvy1p8
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/EntityIdentifier'
      x-internal: false
      tags:
        - Scores
    parameters: []
  /v1/scores:
    get:
      summary: Get Scores for Scorecards
      responses:
        '200':
          $ref: '#/components/responses/ScorecardScoreResponse'
      operationId: get-scorecards-scores-overview
      x-stoplight:
        id: lpnl6xzlj655z
      security:
        - x-api-key: []
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/EntityIdentifier'
      tags:
        - Scores
    parameters: []
  /v1/scores/aggregate:
    post:
      summary: Get Aggregated Scores for Catalog entities
      responses:
        '200':
          $ref: '#/components/responses/EntityScoresResponseList'
      operationId: get-aggregated-scores
      x-stoplight:
        id: i14tbedz1cc8u
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScorecardFilter'
      x-internal: false
      tags:
        - Scores
  /v1/scores/graph:
    get:
      summary: Get Data for check status for graph
      responses:
        '200':
          $ref: '#/components/responses/ScorecardGraphSummaryResponse'
      operationId: get-scorecards-graphs-score-summary
      x-stoplight:
        id: 8pd67sxvs7wwe
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/EntityIdentifier'
        - schema:
            type: string
            default: null
          in: query
          name: scorecard_identifier
          description: 'Identifier for scorecard '
      security:
        - x-api-key: []
      tags:
        - Scores
    parameters: []
  /v1/scores/recalibrate:
    parameters: []
    post:
      summary: Trigger recalibration of scores for a scorecard
      operationId: scorecard-recalibrate
      responses:
        '200':
          $ref: '#/components/responses/ScorecardRecalibrateResponse'
      x-stoplight:
        id: 3px6djmawemwv
      description: API for Recalibrating the score for scorecard of entity
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ScorecardRecalibrateRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: true
      tags:
        - Scores
  /v1/checks:
    get:
      summary: Get all checks available
      parameters:
        - $ref: '#/components/parameters/CheckType'
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/Limit5'
        - $ref: '#/components/parameters/Sort6'
        - $ref: '#/components/parameters/SearchTerm5'
      tags:
        - Checks
      x-stoplight:
        id: fybtgv0otf34d
      operationId: get-checks
      description: Get all checks available
      x-internal: false
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/CheckResponseList'
    post:
      summary: Create a custom check
      tags:
        - Checks
      operationId: create-check
      responses:
        '201':
          $ref: '#/components/responses/DefaultSaveResponse'
      x-stoplight:
        id: pzk9h0n0suta2
      description: Create a custom check
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CheckDetailsRequest'
      x-internal: false
  /v1/checks/{check-id}:
    get:
      summary: Get check details for given checkId
      tags:
        - Checks
      responses:
        '200':
          $ref: '#/components/responses/CheckDetailsResponse'
      operationId: get-check
      x-stoplight:
        id: 7n0j23984d2ep
      description: Get check details for given checkId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CheckIdentifier'
        - $ref: '#/components/parameters/CheckType'
      x-internal: false
    put:
      summary: Update check details for given checkId
      tags:
        - Checks
      operationId: update-check
      responses:
        '200':
          $ref: '#/components/responses/DefaultSaveResponse'
      x-stoplight:
        id: e6w24mxeru0p6
      description: Update check details for given checkId
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CheckIdentifier'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CheckDetailsRequest'
    delete:
      summary: Delete check details for given checkId
      operationId: delete-check
      description: Delete check details for given checkId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CheckIdentifier'
        - $ref: '#/components/parameters/ForceDelete2'
      x-internal: false
      responses:
        '204':
          description: No Content
      tags:
        - Checks
      x-stoplight:
        id: pgtm5cqq7zqmt
  /v1/checks/{check-id}/stats:
    get:
      summary: Get check stats for given checkId
      tags:
        - Checks
      responses:
        '200':
          $ref: '#/components/responses/CheckStatsResponse'
      operationId: get-check-stats
      x-stoplight:
        id: x6f6yi2hkheeh
      description: Get check stats for given checkId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CheckIdentifier'
        - $ref: '#/components/parameters/CheckType'
  /v1/checks/{check-id}/graph:
    get:
      summary: Get check graph data for given checkId
      tags:
        - Checks
      responses:
        '200':
          $ref: '#/components/responses/CheckGraphResponse'
      operationId: get-check-graph
      x-stoplight:
        id: x6f6yi2hkheeh
      description: Get check graph data for given checkId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CheckIdentifier'
        - $ref: '#/components/parameters/CheckType'
  /v1/scorecards:
    get:
      summary: Get all scorecards available
      tags:
        - Scorecards
      responses:
        '200':
          $ref: '#/components/responses/ScorecardResponseList'
      operationId: get-scorecards
      x-stoplight:
        id: sd1pqx1g9pu0o
      description: Get all scorecards available
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
    post:
      summary: Create scorecard
      tags:
        - Scorecards
      operationId: create-scorecard
      responses:
        '201':
          $ref: '#/components/responses/DefaultSaveResponse'
      x-stoplight:
        id: 7ky7v205witp4
      description: Create scorecard
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScorecardDetailsRequest'
      x-internal: false
  /v1/scorecards/{scorecard-id}:
    get:
      summary: Get scorecard details for given scorecardId
      tags:
        - Scorecards
      responses:
        '200':
          $ref: '#/components/responses/ScorecardDetailsResponse'
      operationId: get-scorecard
      description: Get scorecard details for given scorecardId
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/ScorecardIdentifier'
      x-stoplight:
        id: 7q992jg8e5lre
    put:
      summary: Update scorecard details for given scorecardId
      tags:
        - Scorecards
      operationId: update-scorecard
      responses:
        '200':
          $ref: '#/components/responses/DefaultSaveResponse'
      x-stoplight:
        id: zfrmn6vx8zk2x
      description: Update scorecard details for given scorecardId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/ScorecardIdentifier'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScorecardDetailsRequest'
      x-internal: false
    delete:
      summary: Delete scorecard details for given scorecardId
      operationId: delete-scorecard
      description: Delete scorecard details for given scorecardId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/ScorecardIdentifier'
      x-internal: false
      responses:
        '204':
          description: No Content
      tags:
        - Scorecards
      x-stoplight:
        id: t4gtsw95rgoh8
  /v1/scorecards/{scorecard-id}/stats:
    get:
      summary: Get scorecard stats for given scorecardId
      tags:
        - Scorecards
      responses:
        '200':
          $ref: '#/components/responses/ScorecardStatsResponse'
      operationId: get-scorecard-stats
      x-stoplight:
        id: y6e6yo2hkheeh
      description: Get scorecard stats for given scorecardId
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/ScorecardIdentifier'
  /v1/entity-facets:
    get:
      summary: Get all entity facets for given kind
      tags:
        - Scorecards
      responses:
        '200':
          $ref: '#/components/responses/FacetsResponse'
      operationId: get-entity-facets
      x-stoplight:
        id: 8fjdnw2gtfpr7
      description: Get all entity facets for given kind
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/CatalogKind'
  /v1/data-sources/harness/data-point/values:
    parameters: []
    post:
      summary: Get data points data for harness data source
      operationId: get-harness-data-point-values
      responses:
        '200':
          $ref: '#/components/responses/DataSourceDataPointInfoResponse'
      x-stoplight:
        id: fv69lcewj02rp
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/DataSourceDataPointInfoRequest'
      x-internal: true
      tags:
        - HarnessDataPoints
  /v1/data-sources/data-points/map:
    get:
      summary: Get Data Sources and Data Points Map for Account
      tags:
        - DataSource
      responses:
        '200':
          $ref: '#/components/responses/DataSourceDataPointsMapResponse'
      operationId: get-data-sources-data-points-map
      x-stoplight:
        id: hxskmevkt524r
      description: API for getting the map of data sources and data points for account
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/data-sources/kubernetes/data-point/values:
    post:
      summary: Get data points data for kubernetes data source
      operationId: get-k8s-data-point-values
      tags:
        - KubernetesDataPoints
      responses:
        '200':
          $ref: '#/components/responses/DataSourceDataPointInfoResponse'
      x-stoplight:
        id: 9fg71j8suvpxn
      requestBody:
        $ref: '#/components/requestBodies/KubernetesConfigRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
  /v1/data-sources/scm/data-point/values:
    post:
      summary: Get data points data for scm data source
      operationId: get-scm-data-point-values
      tags:
        - ScmDataPoints
      responses:
        '200':
          $ref: '#/components/responses/DataSourceDataPointInfoResponse'
      x-stoplight:
        id: 9fi72j8suwpyn
      requestBody:
        $ref: '#/components/requestBodies/ScmConfigRequest'
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      security:
        - x-api-key: []
  /v1/license/usage/save:
    post:
      summary: Save IDP module license usage
      operationId: idp-license-usage-save
      responses:
        '200':
          $ref: '#/components/responses/LicenseUsageSaveResponse'
      x-stoplight:
        id: 7ptx9noskc4vz
      x-internal: true
      description: Save IDP module license usage
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - LicenseUsageResource
      requestBody:
        $ref: '#/components/requestBodies/LicenseUsageSaveRequest'
  /v2/scores/recalibrate:
    post:
      summary: Trigger recalibration of scores for a scorecard
      operationId: scorecard-recalibrate-v2
      responses:
        '202':
          $ref: '#/components/responses/ScorecardRecalibrateResponseV2'
      x-stoplight:
        id: 7bibsplzghpox
      description: API for triggering score recalibration for a scorecard
      tags:
        - ScoresV2
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/ScorecardRecalibrateRequest'
      x-internal: true
  /v1/scores/recalibrate/status:
    get:
      summary: Get score recalibration status
      tags:
        - Scores
      responses:
        '200':
          $ref: '#/components/responses/ScorecardRecalibrateResponseV2'
      operationId: get-scores-recalibrate-status
      x-stoplight:
        id: 2qlp5rle9cmv8
      description: Get status of score computation request
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/ScorecardRecalibrateRequest'
      x-internal: true
    parameters: []
  /v1/backstage-harness/sync:
    post:
      summary: Sync Backstage Entities as Harness Entities for all IDP enabled accounts
      tags:
        - BackstageHarness
      responses:
        '200':
          $ref: '#/components/responses/BackstageHarnessSyncEntitiesResponse'
      operationId: backstage-harness-sync-all-accounts
      description: >-
        Syncs Backstage Entities as Harness Entities for all IDP enabled
        accounts
      x-internal: true
      security:
        - x-api-key: []
  /v1/backstage-harness/sync/for-account:
    post:
      summary: Sync Backstage Entities as Harness Entities for given account
      tags:
        - BackstageHarness
      responses:
        '200':
          $ref: '#/components/responses/BackstageHarnessSyncEntitiesResponse'
      operationId: backstage-harness-sync-for-account
      description: Syncs Backstage Entities as Harness Entities for given account
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/backstage-harness/sync/for-entity:
    post:
      summary: >-
        Sync Backstage entity as Harness entity for given account and entity
        with specified action and sync mode
      tags:
        - BackstageHarness
      requestBody:
        $ref: '#/components/requestBodies/BackstageHarnessSyncRequest'
      responses:
        '200':
          $ref: '#/components/responses/BackstageHarnessSyncEntitiesResponse'
      operationId: backstage-harness-sync-for-account-entity
      description: >-
        Sync Backstage entity as Harness entity for given account and entity
        with specified action and sync mode
      x-internal: true
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/catalog/custom-properties:
    post:
      summary: Ingest catalog custom properties
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyByFieldResponse'
      operationId: ingest-catalog-custom-properties
      x-stoplight:
        id: 3eczjage6lz9a
      x-internal: false
      description: Ingest catalog custom properties
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyFilterRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyFilterRequest'
    parameters: []
    delete:
      summary: Delete catalog custom properties
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyDeleteByFieldResponse'
      operationId: delete-catalog-custom-properties
      x-stoplight:
        id: vb71p39cmv358
      description: Delete catalog custom properties
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyFilterDeleteRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyFilterDeleteRequest'
  /v1/catalog/custom-properties/entity:
    get:
      summary: Get catalog custom properties for given entity
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyByEntityGetResponse'
      operationId: get-catalog-custom-properties-by-entity
      x-stoplight:
        id: 3edqlaqe8lz9b
      x-internal: false
      description: Get catalog custom properties for given entity
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/EntityRef'
    post:
      summary: Ingest catalog custom properties for given entity
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyResponse'
      operationId: ingest-catalog-custom-properties-by-entity
      x-stoplight:
        id: 3eczoaje6lz0g
      x-internal: false
      description: Ingest catalog custom properties for given entity
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyByEntityRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyByEntityRequest'
    delete:
      summary: Delete catalog custom properties for given entity
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyResponse'
      operationId: delete-catalog-custom-properties-by-entity
      x-stoplight:
        id: vb71p39dmz358
      description: Delete catalog custom properties for given entity
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyByEntityDeleteRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyByEntityDeleteRequest'
  /v1/catalog/custom-properties/property:
    get:
      summary: Get entities for given custom property
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyByFieldGetResponse'
      operationId: get-entities-by-catalog-custom-property
      x-stoplight:
        id: 3edljble6lz9a
      x-internal: false
      description: Get entities for given custom property
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Property'
    post:
      summary: Ingest entities for given custom property
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyResponse'
      operationId: ingest-entities-by-catalog-custom-property
      x-stoplight:
        id: 3eczoaje6lz0g
      x-internal: false
      description: Ingest entities for given custom property
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyByFieldRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyByFieldRequest'
    delete:
      summary: Delete entities for given custom property
      tags:
        - CatalogCustomProperties
      responses:
        '200':
          $ref: '#/components/responses/CustomPropertyResponse'
      operationId: delete-entities-by-catalog-custom-property
      x-stoplight:
        id: vb71p39dmz358
      description: Delete entities for given custom property
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/DryRunCatalogCustomProperties'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomPropertyByFieldDeleteRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomPropertyByFieldDeleteRequest'
  /v1/groups/{group-identifier}:
    get:
      summary: Get Group Details
      responses:
        '200':
          $ref: '#/components/responses/GroupResponse'
      operationId: get-group-details
      x-stoplight:
        id: nby8lq3g0vg27
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: false
      tags:
        - Groups
      security:
        - x-api-key: []
    parameters:
      - schema:
          type: string
        name: group-identifier
        in: path
        required: true
    delete:
      summary: Delete a group
      responses:
        '204':
          description: No Content
      operationId: delete-group
      x-stoplight:
        id: up9xj9134iolf
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      x-internal: false
      tags:
        - Groups
      security:
        - x-api-key: []
  /v1/groups:
    get:
      summary: Get all groups for account
      responses:
        '200':
          $ref: '#/components/responses/GroupResponseList'
      operationId: get-all-groups-for-account
      x-stoplight:
        id: qi2aylcdl7t09
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - Groups
      security:
        - x-api-key: []
    post:
      summary: Save a group
      responses:
        '200':
          $ref: '#/components/responses/GroupResponse'
      operationId: save-group
      x-stoplight:
        id: c6hf0g9o84pnc
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/GroupRequest'
      x-internal: false
      tags:
        - Groups
      security:
        - x-api-key: []
    put:
      summary: Update Groups
      responses:
        '200':
          $ref: '#/components/responses/GroupResponseList'
      operationId: update-groups
      x-stoplight:
        id: eaxiri07lz2kj
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/GroupRequestList'
      tags:
        - Groups
      security:
        - x-api-key: []
    parameters: []
  /v1/groups/yaml:
    get:
      summary: Get Groups Yaml
      responses:
        '200':
          $ref: '#/components/responses/GroupsYamlResponse'
      operationId: get-groups-yaml
      x-stoplight:
        id: wbu7fk4liwa52
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - Groups
      security:
        - x-api-key: []
    parameters: []
  /v1/groups/workflows:
    get:
      summary: Get workflows for account
      tags:
        - Groups
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/WorkflowsInfoResponse'
      operationId: get-workflows-for-account
      x-stoplight:
        id: czv3pmqlvtng4
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/Limit5'
    parameters: []
  /v1/home-page-layout:
    get:
      summary: Get Home Page Layout Details
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/HomePageLayoutResponse'
      operationId: get-home-page-layout-info
      x-stoplight:
        id: 5qz0to5vb79zr
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
    post:
      summary: Save Home Page Layout Details
      responses:
        '200':
          $ref: '#/components/responses/HomePageLayoutResponse'
      operationId: save-home-page-layout-info
      x-stoplight:
        id: n3iaiocyjv0kh
      x-internal: false
      requestBody:
        $ref: '#/components/requestBodies/HomePageLayoutRequest'
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/home-page-layout/yaml:
    get:
      summary: Get yaml for home page layout
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/HomePageLayoutYamlResponse'
      operationId: get-yaml-for-home-page-layout
      x-stoplight:
        id: 1zne0xmh0mj6o
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/home-page-layout/custom-card/{card-identifier}/quick-links/{quick-link-identifier}/icon:
    parameters:
      - schema:
          type: string
        name: card-identifier
        in: path
        required: true
      - schema:
          type: string
        name: quick-link-identifier
        in: path
        required: true
    delete:
      summary: Delete custom link card quick links icon
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '204':
          description: No Content
      operationId: delete-custom-link-card-quick-links
      x-stoplight:
        id: hovwmpqwogep9
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/home-page-layout/header/quick-links/{quick-link-identifier}/icon:
    parameters:
      - schema:
          type: string
        name: quick-link-identifier
        in: path
        required: true
    delete:
      summary: Delete header quick links icon
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '204':
          description: No Content
      operationId: delete-headers-quick-links-icon
      x-stoplight:
        id: 12si1vwf5qnvv
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/home-page-layout/card/{card-identifier}/icon:
    parameters:
      - schema:
          type: string
        name: card-identifier
        in: path
        required: true
    delete:
      summary: Delete card icon
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '204':
          description: No Content
      operationId: delete-home-page-layout-cards-icon
      x-stoplight:
        id: wgvh8oyencivj
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
  /v1/home-page-layout/icon:
    delete:
      summary: Delete homepage layout icon
      tags:
        - HomePageLayout
      security:
        - x-api-key: []
      responses:
        '204':
          description: No Content
      operationId: delete-home-page-layout-icon
      x-stoplight:
        id: f7kbixtn6dju0
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/DeleteHomePageLayoutIconRequest'
  /v1/entities:
    post:
      operationId: create-entity
      summary: Create an Entity
      description: >-
        Creates a new Entity in the specified scope (Account, Organization, or
        Project).  Entities are the core components of the catalog system and
        can represent various  resources such as services, APIs, user groups,
        and more. Each entity has a specific  kind and type that defines its
        purpose in the system.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
        - $ref: '#/components/parameters/AccountHeader5'
        - name: convert
          in: query
          required: false
          schema:
            type: boolean
            default: false
          description: >-
            When set to true, converts Backstage style YAML to Harness entity
            YAML format
        - name: dry_run
          in: query
          required: false
          schema:
            type: boolean
            default: false
          description: >-
            When set to true, validates the entity creation without actually
            creating it
      requestBody:
        $ref: '#/components/requestBodies/EntityCreateRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/EntityResponseBody'
          description: Entity successfully created
    get:
      operationId: get-entities
      summary: Get Entities
      description: >-
        Retrieves a paginated list of Entities based on the provided filters. 
        This endpoint supports comprehensive filtering options to help you find 
        specific entities across different scopes, kinds, and other properties.
        The response includes pagination metadata and counts for owned and
        favorite entities.

        When a search returns no matching entities, the API returns a 200 status
        code with an empty data array. This is the expected behavior for this
        list API. Note that 400 status codes are only returned when a specific
        entity is requested and not found (e.g., in the Get Entity Details
        endpoint).
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/LimitWithRestriction'
        - $ref: '#/components/parameters/Sort6'
        - $ref: '#/components/parameters/SearchTerm5'
        - name: scopes
          description: >-
            Filter entities by specific scopes (account.\*, account,
            account.org, account.org.project, account.orgId,
            account.orgId.projectId, account.orgId.\*)
          in: query
          schema:
            type: string
            default: null
        - name: entity_refs
          description: >-
            Filter entities by their entity references (comma-separated list in
            the format of kind:scope/identifier)
          in: query
          schema:
            type: string
            default: null
        - name: owned_by_me
          description: >-
            When true, returns only entities owned by the current user or their
            groups
          in: query
          schema:
            type: boolean
            default: false
        - name: favorites
          description: >-
            When true, returns only entities marked as favorites by the current
            user
          in: query
          schema:
            type: boolean
            default: false
        - $ref: '#/components/parameters/KindQueryParam'
        - name: type
          description: Filter entities by their type (e.g., Service, Website)
          in: query
          schema:
            type: string
            default: null
        - name: owner
          description: Filter entities by their owner references
          in: query
          schema:
            type: string
            default: null
        - name: lifecycle
          description: >-
            Filter entities by their lifecycle stage (e.g., experimental,
            production)
          in: query
          schema:
            type: string
            default: null
        - name: tags
          description: Filter entities by their associated tags (comma-separated list)
          in: query
          schema:
            type: string
            default: null
      responses:
        '200':
          $ref: '#/components/responses/EntityResponseBodyList'
          description: >-
            Paginated list of entities matching the filter criteria with
            pagination metadata in headers (X-Total-Elements, X-Page-Number,
            X-Page-Size) and ownership counts (Total-Owned, Total-Starred)
  /v1/entities/by-refs:
    post:
      summary: Get entities by refs
      description: >-
        Fetches entities matching the entity references specified in the request
        body, in conjunction with other provided filters.
      tags:
        - Entities
      responses:
        '200':
          $ref: '#/components/responses/EntityResponseBodyList'
      operationId: get-entities-by-refs
      x-stoplight:
        id: yztu80rla7s8m
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - $ref: '#/components/parameters/Page1'
        - $ref: '#/components/parameters/LimitWithRestriction'
        - $ref: '#/components/parameters/Sort6'
        - $ref: '#/components/parameters/SearchTerm5'
        - name: scopes
          description: Filter entities on the scopes
          in: query
          schema:
            type: string
            default: null
        - name: owned_by_me
          description: >-
            Filter entities owned by the user and the groups that the user is
            part of.
          in: query
          schema:
            type: boolean
            default: false
        - name: favorites
          description: Filter entities that are marked as favorites for the user.
          in: query
          schema:
            type: boolean
            default: false
        - $ref: '#/components/parameters/KindQueryParam'
        - name: type
          description: Types on which the Entities are filtered.
          in: query
          schema:
            type: string
            default: null
        - name: owner
          description: Owners on which the Entities are filtered.
          in: query
          schema:
            type: string
            default: null
        - name: lifecycle
          description: Lifecycles on which the Entities are filtered.
          in: query
          schema:
            type: string
            default: null
        - name: tags
          description: Tags on which the Entities are filtered.
          in: query
          schema:
            type: string
            default: null
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/EntitesByRefsRequest'
  /v1/entities/import:
    post:
      operationId: import-entity
      summary: Import an Entity from Git
      description: >-
        Imports a new Entity from Git in the specified scope (Account,
        Organization, or Project).
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/GitImportRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/EntityResponseBody'
  /v1/entities/groups:
    get:
      operationId: get-entities-groups
      x-internal: true
      summary: Get Entities Groups
      description: >-
        Retrieves entities organized in hierarchical groups based on account,
        organization,  and project. This endpoint is useful for displaying
        entities in a structured UI view where entities need to be presented in
        their organizational context. The response contains both grouped and
        ungrouped entities at each level.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - name: search_on_entities
          in: query
          required: false
          schema:
            type: string
            default: null
          description: Filter entities by a search term across entity attributes
        - name: search_on_groups
          in: query
          required: false
          schema:
            type: string
            default: null
          description: Filter groups by a search term across group attributes
        - name: scopes
          description: >-
            Filter entities by specific scopes (account.\*, account,
            account.org, account.org.project, account.orgId,
            account.orgId.projectId, account.orgId.\*)
          in: query
          schema:
            type: string
            default: null
        - $ref: '#/components/parameters/KindQueryParam'
        - name: owned_by_me
          description: >-
            When true, returns only entities owned by the current user and their
            groups
          in: query
          schema:
            type: boolean
            default: false
        - name: favorites
          description: >-
            When true, returns only entities marked as favorites by the current
            user
          in: query
          schema:
            type: boolean
            default: false
        - name: type
          description: Filter entities by their type
          in: query
          schema:
            type: string
            default: null
        - name: owner
          description: Filter entities by their owner references
          in: query
          schema:
            type: string
            default: null
        - name: lifecycle
          description: Filter entities by their lifecycle stage
          in: query
          schema:
            type: string
            default: null
        - name: tags
          description: Filter entities by their associated tags
          in: query
          schema:
            type: string
            default: null
      responses:
        '200':
          $ref: '#/components/responses/EntitiesGroupsResponseBody'
          description: Entities grouped by organization and project
  /v1/entities/move/{scope}/{kind}/{identifier}:
    post:
      operationId: move-entity
      summary: Move an Entity
      description: Move an existing Inline entity to Remote.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
        - $ref: '#/components/parameters/ScopeParam'
        - $ref: '#/components/parameters/KindParam'
        - $ref: '#/components/parameters/IdentifierParam'
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/EntityMoveRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/DefaultSaveResponse'
  /v1/entities/git-metadata/{scope}/{kind}/{identifier}:
    put:
      summary: Update GitMetadata for Remote Entities
      operationId: update-git-metadata
      description: Update GitMetadata for Remote Entities
      responses:
        '200':
          $ref: '#/components/responses/DefaultSaveResponse'
      requestBody:
        $ref: '#/components/requestBodies/GitMetadataUpdateRequestBody1'
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
        - $ref: '#/components/parameters/ScopeParam'
        - $ref: '#/components/parameters/KindParam'
        - $ref: '#/components/parameters/IdentifierParam'
        - $ref: '#/components/parameters/AccountHeader5'
      tags:
        - Entities
      x-stoplight:
        id: 2uv1mspdrbzvj
  /v1/entities/convert/{option}:
    post:
      operationId: convert-entity
      summary: Convert Entity Format
      description: >-
        Converts entity YAML between Backstage and Harness formats. This is
        useful when  migrating entities between systems or when standardizing
        entity definitions across different platforms. The conversion preserves
        all semantic information while adapting to the target format
        conventions.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - name: option
          in: path
          required: true
          schema:
            type: string
            enum:
              - backstage-to-harness
              - harness-to-backstage
          description: >-
            Conversion direction - either convert from Backstage to Harness
            format or vice versa
      requestBody:
        $ref: '#/components/requestBodies/EntityRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/EntityConvertResponseBody'
          description: Entity YAML successfully converted to the target format
  /v1/entities/{scope}/{kind}/{identifier}:
    parameters:
      - $ref: '#/components/parameters/OrgIdentifierQueryParam'
      - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
      - $ref: '#/components/parameters/ScopeParam'
      - $ref: '#/components/parameters/KindParam'
      - $ref: '#/components/parameters/IdentifierParam'
    put:
      operationId: update-entity
      summary: Update an Entity
      description: >-
        Updates an existing Entity identified by its scope, kind, and
        identifier. All fields in the entity definition will be replaced with
        the new values provided in the request. This operation is idempotent and
        will create the entity if it doesn't already exist.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/EntityUpdateRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/EntityResponseBody'
          description: Entity successfully updated
    delete:
      operationId: delete-entity
      summary: Delete an Entity
      description: >-
        Permanently removes an Entity identified by its scope, kind, and
        identifier from the system. This operation cannot be undone, so use it
        with caution. Any references to the deleted entity from other entities
        will become invalid.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      responses:
        '204':
          description: Entity successfully deleted with no content returned
    get:
      operationId: get-entity
      summary: Get Entity Details
      description: >-
        Retrieves the complete details of an Entity identified by its scope,
        kind, and identifier, including its YAML definition, metadata, and
        relationships with other entities. This endpoint provides the most
        comprehensive view of a specific entity.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
        - schema:
            type: string
            default: null
          in: query
          name: branch_name
          description: Name of the branch (for Git Experience).
        - schema:
            type: string
            default: null
          in: query
          name: connector_ref
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        - schema:
            type: string
            default: null
          in: query
          name: repo_name
          description: Name of the repository (for Git Experience).
        - schema:
            type: string
            default: 'false'
          in: header
          name: Load-From-Cache
          description: Flag to enable loading the remote entity from git or git cache
        - schema:
            type: boolean
            default: false
          in: query
          name: load_from_fallback_branch
          description: Flag to load the entity from the created non default branch
      responses:
        '200':
          $ref: '#/components/responses/EntityResponseBody'
          description: Complete entity details successfully retrieved
  /v1/entities/kinds:
    parameters:
      - $ref: '#/components/parameters/AccountIdentifierQueryParam'
      - $ref: '#/components/parameters/OrgIdentifierQueryParam'
      - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
    get:
      operationId: get-entities-kinds
      summary: Get Entity Kinds
      description: >-
        Returns a list of all supported Entity Kinds along with their display
        names,  descriptions, and counts. This is useful for populating filter
        dropdowns in UIs and for understanding what kinds of entities are
        available in the system.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      responses:
        '200':
          $ref: '#/components/responses/EntityKindsResponseBody'
          description: List of available entity kinds with their metadata and counts
  /v1/entities/filters:
    parameters:
      - $ref: '#/components/parameters/AccountIdentifierQueryParam'
      - $ref: '#/components/parameters/KindQueryParam'
      - name: scopes
        description: >-
          Filter entities by specific scopes (account.\*, account, account.org,
          account.org.project, account.orgId, account.orgId.projectId,
          account.orgId.\*)
        in: query
        schema:
          type: string
          default: null
    get:
      operationId: get-entities-filters
      summary: Get Entity Filter Options
      description: >-
        Returns the available filter options that can be used when querying
        entities. This helps in building dynamic filter UIs for entity
        exploration and discovery. The response includes filter names and their
        possible values based on the current entities in the system.
      tags:
        - Entities
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      responses:
        '200':
          $ref: '#/components/responses/EntityFiltersResponseBodyList'
          description: List of available filter options and their possible values
    post:
      summary: Get Entities Filters By Query
      description: >-
        Returns the available filter options that can be used when querying
        entities  based on the provided query.This helps in building dynamic
        filter UIs for entity  exploration and discovery.The response includes
        filter names and their possible  values based on the current entities in
        the system.
      tags:
        - Entities
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EntityFiltersResponseBodyList'
      operationId: get-entities-filters-by-query
      x-stoplight:
        id: 34d8rd6couqo6
      parameters:
        - $ref: '#/components/parameters/AccountHeader5'
      requestBody:
        $ref: '#/components/requestBodies/EntityFilterQueryRequest'
  /v1/entities/json-schema:
    parameters:
      - $ref: '#/components/parameters/KindQueryParam'
    get:
      operationId: get-json-schema
      summary: Get Entity JSON Schema
      description: >-
        Returns the JSON Schema for validating Entity definitions. This is
        useful for client-side validation before submitting entity creation or
        update requests. The schema can be filtered by entity kind to get
        specific validation rules.
      tags:
        - Entities
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/EntityJsonSchemaResponseBody'
          description: JSON Schema for entity validation successfully retrieved
  /api/environments/compile:
    post:
      tags:
        - Environment
      summary: Compile Environment
      description: >-
        Endpoint for compiling an environment and a target state to a valid
        infrastructure
      operationId: Environment#Compile
      parameters:
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompileRequestBody'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompileResponseBody'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/environments/schemas:
    get:
      tags:
        - Environment
      summary: Schemas Environment
      description: >-
        Endpoint for retrieving the environment and environment blueprint
        schemas
      operationId: Environment#Schemas
      parameters:
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SchemasRequestBody'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SchemasResponseBody'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures:
    get:
      tags:
        - Infrastructure
      summary: List Infrastructure
      description: Endpoint for listing all infrastructures.
      operationId: Infrastructure#List
      parameters:
        - name: offset
          in: query
          description: Offset for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Offset for pagination
            format: int64
        - name: limit
          in: query
          description: Limit for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit for pagination
            format: int64
        - name: desc
          in: query
          description: Order by descending order
          allowEmptyValue: true
          schema:
            type: boolean
            description: Order by descending order
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfrastructureList'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/{executionID}/abort:
    post:
      tags:
        - Infrastructure
      summary: Abort Infrastructure
      description: Endpoint for aborting an infrastructure execution.
      operationId: Infrastructure#Abort
      parameters:
        - name: executionID
          in: path
          description: ID of the execution to abort
          required: true
          schema:
            type: string
            description: ID of the execution to abort
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SchemasRequestBody'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/{id}:
    delete:
      tags:
        - Infrastructure
      summary: Delete Infrastructure
      description: Endpoint for deleting a specific infrastructure.
      operationId: Infrastructure#Delete
      parameters:
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the infrastructure
          required: true
          schema:
            type: string
            description: ID of the infrastructure
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
    get:
      tags:
        - Infrastructure
      summary: Get Infrastructure
      description: Endpoint for retrieving a specific infrastructure.
      operationId: Infrastructure#Get
      parameters:
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the infrastructure
          required: true
          schema:
            type: string
            description: ID of the infrastructure
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfrastructureOutput'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/{id}/executions:
    get:
      tags:
        - Infrastructure
      summary: ListExecutions Infrastructure
      description: Endpoint for listing executions for a specific infrastructure.
      operationId: Infrastructure#ListExecutions
      parameters:
        - name: offset
          in: query
          description: Offset for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Offset for pagination
            format: int64
        - name: limit
          in: query
          description: Limit for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit for pagination
            format: int64
        - name: desc
          in: query
          description: Order by descending order
          allowEmptyValue: true
          schema:
            type: boolean
            description: Order by descending order
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the infrastructure
          required: true
          schema:
            type: string
            description: ID of the infrastructure
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfrastructureExecutionList'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/{id}/specs:
    get:
      tags:
        - Infrastructure
      summary: ListSpecs Infrastructure
      description: Endpoint for listing specs for a specific infrastructure.
      operationId: Infrastructure#ListSpecs
      parameters:
        - name: offset
          in: query
          description: Offset for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Offset for pagination
            format: int64
        - name: limit
          in: query
          description: Limit for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit for pagination
            format: int64
        - name: desc
          in: query
          description: Order by descending order
          allowEmptyValue: true
          schema:
            type: boolean
            description: Order by descending order
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the infrastructure
          required: true
          schema:
            type: string
            description: ID of the infrastructure
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfrastructureSpecList'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/approve:
    post:
      tags:
        - Infrastructure
      summary: ApprovePipelineExecution Infrastructure
      description: Endpoint for approving a pipeline approval step.
      operationId: Infrastructure#ApprovePipelineExecution
      parameters:
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApprovePipelineExecutionRequestBody'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/execute:
    post:
      tags:
        - Infrastructure
      summary: Execute Infrastructure
      description: >-
        Endpoint for executing an infrastructure, with the options of either
        dryrunning this process, or forcing it.
      operationId: Infrastructure#Execute
      parameters:
        - name: dryRun
          in: query
          description: Dry run the infrastructure
          allowEmptyValue: true
          schema:
            type: boolean
            description: Dry run the infrastructure
        - name: force
          in: query
          description: Force updates to all instances in the infrastructure
          allowEmptyValue: true
          schema:
            type: boolean
            description: Force updates to all instances in the infrastructure
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExecuteRequestBody'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/infrastructures/executions/{id}:
    get:
      tags:
        - Infrastructure
      summary: GetExecution Infrastructure
      description: >-
        Endpoint for retrieving a specific execution for a specific
        infrastructure.
      operationId: Infrastructure#GetExecution
      parameters:
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the event to fetch
          required: true
          schema:
            type: string
            description: ID of the event to fetch
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfrastructureExecution'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/instances:
    get:
      tags:
        - Instance
      summary: List Instance
      description: >-
        Endpoint for listing instances, with the option of filtering for a
        specific infrastructure.
      operationId: Instance#List
      parameters:
        - name: infrastructureID
          in: query
          description: ID of an Infrastructure to filter by
          allowEmptyValue: true
          schema:
            type: string
            description: ID of an Infrastructure to filter by
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: offset
          in: query
          description: Offset for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Offset for pagination
            format: int64
        - name: limit
          in: query
          description: Limit for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit for pagination
            format: int64
        - name: desc
          in: query
          description: Order by descending order
          allowEmptyValue: true
          schema:
            type: boolean
            description: Order by descending order
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstanceList'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/instances/{id}:
    get:
      tags:
        - Instance
      summary: Get Instance
      description: Endpoint for retrieving a specific instance.
      operationId: Instance#Get
      parameters:
        - name: infrastructureID
          in: query
          description: ID of the infrastructure
          allowEmptyValue: true
          schema:
            type: string
            description: ID of the infrastructure
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the instance
          required: true
          schema:
            type: string
            description: ID of the instance
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Instance'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/instances/{instanceID}/force-state:
    post:
      tags:
        - Instance
      summary: ForceState Instance
      description: Endpoint for forcing a specific instance to a specific state.
      operationId: Instance#ForceState
      parameters:
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: instanceID
          in: path
          description: ID of the instance to force status for
          required: true
          schema:
            type: string
            description: ID of the instance to force status for
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ForceStateRequestBody'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/instances/events:
    get:
      tags:
        - Instance
      summary: ListEvents Instance
      description: Endpoint for listing events for a specific instance.
      operationId: Instance#ListEvents
      parameters:
        - name: instanceID
          in: query
          description: ID of an instance to filter by
          allowEmptyValue: true
          schema:
            type: string
            description: ID of an instance to filter by
        - name: infrastructureID
          in: query
          description: ID of an infrastructure to filter by
          allowEmptyValue: true
          schema:
            type: string
            description: ID of an infrastructure to filter by
        - name: infrastructureRevision
          in: query
          description: Revision of the infrastructure to filter by
          allowEmptyValue: true
          schema:
            type: integer
            description: Revision of the infrastructure to filter by
            format: int64
        - name: offset
          in: query
          description: Offset for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Offset for pagination
            format: int64
        - name: limit
          in: query
          description: Limit for pagination
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit for pagination
            format: int64
        - name: desc
          in: query
          description: Order by descending order
          allowEmptyValue: true
          schema:
            type: boolean
            description: Order by descending order
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstanceEventList'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /api/instances/events/{id}:
    get:
      tags:
        - Instance
      summary: GetEvent Instance
      description: Endpoint for retrieving a specific instance event.
      operationId: Instance#GetEvent
      parameters:
        - name: orgIdentifier
          in: query
          description: Org is the organization identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Org is the organization identifier.
        - name: projectIdentifier
          in: query
          description: Project is the project identifier.
          allowEmptyValue: true
          schema:
            type: string
            description: Project is the project identifier.
        - name: id
          in: path
          description: ID of the event to fetch
          required: true
          schema:
            type: string
            description: ID of the event to fetch
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            minLength: 1
            maxLength: 128
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstanceEvent'
        '400':
          description: 'bad_request: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'not_found: Not Found'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'already_exists: Already Exists'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: 'internal_error: Internal Server Error'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: 'unimplemented: Not Implemented'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - x-api-key: []
  /ng/api/accounts/{accountIdentifier}:
    get:
      tags:
        - Accounts
      summary: Gets an account
      operationId: getAccountNG
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccount'
  /ng/api/accounts/{accountIdentifier}/immutable-delegate-enabled:
    get:
      tags:
        - Accounts
      summary: Checks if immutable delegate is enabled for account
      operationId: isImmutableDelegateEnabled
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if immutable delegate is enabled for account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/accounts/license/update/{accountIdentifier}:
    put:
      tags:
        - Accounts
      summary: License update from UI
      operationId: licenseUpdateFromUING
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountStatus
          in: query
          description: Account License Status for the Entity.
          required: true
          schema:
            type: string
        - name: accountType
          in: query
          description: Account License Type for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns an boolean
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/accounts/{accountIdentifier}/name:
    put:
      tags:
        - Accounts
      summary: Update Account Name
      operationId: updateAccountNameNG
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: This is details of the Account. Name is mandatory.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Account'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccount'
  /ng/api/accounts/{accountIdentifier}/default-experience:
    put:
      tags:
        - Accounts
      summary: Update Default Experience
      operationId: updateAccountDefaultExperienceNG
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: This is details of the Account. DefaultExperience is mandatory
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Account'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccount'
  /ng/api/environmentGroup:
    post:
      tags:
        - EnvironmentGroup
      summary: Create an Environment Group
      operationId: postEnvironmentGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      requestBody:
        description: Details of the Environment Group to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentGroupRequest'
            examples:
              Create:
                summary: Sample Environment Group create payload
                description: Sample Environment Group payload
                value:
                  name: environmentGroup
                  identifier: environmentGroupId
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  yaml: |
                    environmentGroup:
                      name: environmentGroup
                      identifier: environmentGroupId
                      description: ""
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      envIdentifiers:
                        - EnvironmentId1
                        - EnvironmentId2
          application/yaml:
            schema:
              $ref: '#/components/schemas/EnvironmentGroupRequest'
            examples:
              Create:
                summary: Sample Environment Group create payload
                description: Sample Environment Group payload
                value:
                  name: environmentGroup
                  identifier: environmentGroupId
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  yaml: |
                    environmentGroup:
                      name: environmentGroup
                      identifier: environmentGroupId
                      description: ""
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      envIdentifiers:
                        - EnvironmentId1
                        - EnvironmentId2
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            If the YAML is valid, returns created Environment Group. If not, it
            sends what is wrong with the YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
  /ng/api/environmentGroup/{envGroupIdentifier}:
    get:
      tags:
        - EnvironmentGroup
      summary: Gets an Environment Group by identifier
      operationId: getEnvironmentGroup
      parameters:
        - name: envGroupIdentifier
          in: path
          description: Environment Group Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: deleted
          in: query
          description: Specify whether environment group is deleted or not
          schema:
            type: boolean
            default: false
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Environment Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
    put:
      tags:
        - EnvironmentGroup
      summary: Update an Environment Group by Identifier
      operationId: updateEnvironmentGroup
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: envGroupIdentifier
          in: path
          description: Environment Group Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: Details of the Environment Group to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentGroupRequest'
            examples:
              Update:
                summary: Sample Environment Group update payload
                description: Sample Environment Group payload
                value:
                  name: environmentGroup
                  identifier: environmentGroupId
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  yaml: |
                    environmentGroup:
                      name: environmentGroup
                      identifier: environmentGroupId
                      description: ""
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      envIdentifiers:
                        - EnvironmentId1
                        - EnvironmentId2
          application/yaml:
            schema:
              $ref: '#/components/schemas/EnvironmentGroupRequest'
            examples:
              Update:
                summary: Sample Environment Group update payload
                description: Sample Environment Group payload
                value:
                  name: environmentGroup
                  identifier: environmentGroupId
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  yaml: |
                    environmentGroup:
                      name: environmentGroup
                      identifier: environmentGroupId
                      description: ""
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      envIdentifiers:
                        - EnvironmentId1
                        - EnvironmentId2
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Environment Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroup'
    delete:
      tags:
        - EnvironmentGroup
      summary: Delete en Environment Group by Identifier
      operationId: deleteEnvironmentGroup
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: envGroupIdentifier
          in: path
          description: Environment Group Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: Last Object Id
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Environment Group is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroupDelete'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGroupDelete'
  /ng/api/environmentGroup/list:
    post:
      tags:
        - EnvironmentGroup
      summary: Gets Environment Group list
      operationId: getEnvironmentGroupList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: envGroupIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 25
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: filterIdentifier
          in: query
          description: Filter identifier
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: includeAllEnvGroupsAccessibleAtScope
          in: query
          description: Specify true if all accessible environment groups are to be included
          schema:
            type: boolean
            default: false
      requestBody:
        description: >-
          This is the body for the filter properties for listing Environment
          Groups
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/FilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Environment Groups
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseEnvironmentGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseEnvironmentGroup'
  /ng/api/license-usage-cd/v2/{usageType}/csv/download:
    get:
      tags:
        - Usage
      summary: Download CD Usage CSV report
      operationId: downloadCDUsageCSVReport
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: usageType
          in: path
          required: true
          schema:
            type: string
            enum:
              - ServiceDeployment
              - Gitops
              - PipelineExecution
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Download CSV Active Services report
  /ng/api/connectors/ccmK8sList:
    post:
      tags:
        - Connectors
      summary: >-
        Fetches the list of CCM K8S Connectors corresponding to the request's
        filter criteria.
      operationId: getCCMK8SConnectorList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Connectors. Any Connector having the
            specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: filterIdentifier
          in: query
          schema:
            type: string
        - name: includeAllConnectorsAvailableAtScope
          in: query
          description: >-
            Specify whether or not to include all the Connectors accessible at
            the scope. For eg if set as true, at the Project scope we will get
            org and account Connector also in the response
          schema:
            type: boolean
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: getDistinctFromBranches
          in: query
          description: >-
            This when set to true along with GitSync enabled for the Connector,
            you can get one connector entity from each identifier. The connector
            entity can belong to any branch
          schema:
            type: boolean
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: Details of the filters applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/yaml:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/html:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/plain:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Connectors
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse
            text/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse
            text/html:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseCcmK8sConnectorResponse
  /ng/api/connectors:
    get:
      tags:
        - Connectors
      summary: List all Connectors using filters
      description: Lists all the Connectors matching the specified filters.
      operationId: getConnectorList
      parameters:
        - name: pageIndex
          in: query
          description: Page number of navigation. By default, it is set to 0.
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page.The default number of entries per page is
            100, while the maximum number allowed is 1000.
          schema:
            maximum: 1000
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Connectors. Any Connector having the
            specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: type
          in: query
          description: Filter Connectors by type
          schema:
            type: string
            enum:
              - K8sCluster
              - Git
              - Splunk
              - AppDynamics
              - Prometheus
              - OpsGenie
              - Dynatrace
              - Vault
              - AzureKeyVault
              - DockerRegistry
              - Local
              - AwsKms
              - GcpKms
              - AwsSecretManager
              - Gcp
              - Aws
              - Azure
              - Artifactory
              - Jira
              - Nexus
              - Github
              - Gitlab
              - Bitbucket
              - Codecommit
              - CEAws
              - CEAzure
              - GcpCloudCost
              - CEK8sCluster
              - HttpHelmRepo
              - NewRelic
              - Datadog
              - SumoLogic
              - PagerDuty
              - CustomHealth
              - ServiceNow
              - ErrorTracking
              - Pdc
              - AzureRepo
              - Jenkins
              - OciHelmRepo
              - CustomSecretManager
              - ElasticSearch
              - GcpSecretManager
              - AzureArtifacts
              - Tas
              - Spot
              - Bamboo
              - TerraformCloud
              - SignalFX
              - Harness
              - Rancher
              - JDBC
              - Zoom
              - MsTeams
              - Confluence
              - Slack
              - Salesforce
              - LangSmith
              - MLFlow
        - name: category
          in: query
          description: Filter Connectors by category
          schema:
            type: string
            enum:
              - CLOUD_PROVIDER
              - SECRET_MANAGER
              - CLOUD_COST
              - ARTIFACTORY
              - CODE_REPO
              - MONITORING
              - TICKETING
              - DATABASE
              - COMMUNICATION
              - DOCUMENTATION
              - ML_OPS
        - name: source_category
          in: query
          description: >-
            Filter Connectors by Source Category. Available Source Categories
            are CLOUD_PROVIDER, SECRET_MANAGER, CLOUD_COST, ARTIFACTORY,
            CODE_REPO,  MONITORING and TICKETING
          schema:
            type: string
            enum:
              - CLOUD_PROVIDER
              - SECRET_MANAGER
              - CLOUD_COST
              - ARTIFACTORY
              - CODE_REPO
              - MONITORING
              - TICKETING
              - DATABASE
              - COMMUNICATION
              - DOCUMENTATION
              - ML_OPS
        - name: version
          in: query
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Connectors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
      deprecated: true
    put:
      tags:
        - Connectors
      summary: Update a Connector
      description: Updates a Connector for the given ID.
      operationId: updateConnector
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: >-
          This is the updated Connector. Please provide values for all fields,
          not just the fields you are updating
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/html:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/plain:
            schema:
              $ref: '#/components/schemas/Connector2'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Connector
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
    post:
      tags:
        - Connectors
      summary: Create a Connector
      description: Creates a new Harness Connector.
      operationId: createConnector
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: Details of the Connector to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/html:
            schema:
              $ref: '#/components/schemas/Connector2'
          text/plain:
            schema:
              $ref: '#/components/schemas/Connector2'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Connector
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
  /ng/api/connectors/{identifier}:
    get:
      tags:
        - Connectors
      summary: Return Connector details
      description: Returns the Connector's details for the given Account and Connector ID.
      operationId: getConnector
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Connector Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the connector with the requested accountIdentifier and
            connectorIdentifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorResponse'
    delete:
      tags:
        - Connectors
      summary: Delete a Connector
      description: Deletes a Connector for the given ID.
      operationId: deleteConnector
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Connector ID
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: Last Object Id
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Connector is deleted successfully and false
            if the Connector is not deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/connectors/fieldValues:
    get:
      tags:
        - Connectors
      summary: List all the configured field values for the given Connector type.
      description: >-
        Returns all the configured field values for the given Connector type,
        which can be used during connector creation.
      operationId: getAllAllowedFieldValues
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: connectorType
          in: query
          description: Connector type
          required: true
          schema:
            type: string
            enum:
              - K8sCluster
              - Git
              - Splunk
              - AppDynamics
              - Prometheus
              - OpsGenie
              - Dynatrace
              - Vault
              - AzureKeyVault
              - DockerRegistry
              - Local
              - AwsKms
              - GcpKms
              - AwsSecretManager
              - Gcp
              - Aws
              - Azure
              - Artifactory
              - Jira
              - Nexus
              - Github
              - Gitlab
              - Bitbucket
              - Codecommit
              - CEAws
              - CEAzure
              - GcpCloudCost
              - CEK8sCluster
              - HttpHelmRepo
              - NewRelic
              - Datadog
              - SumoLogic
              - PagerDuty
              - CustomHealth
              - ServiceNow
              - ErrorTracking
              - Pdc
              - AzureRepo
              - Jenkins
              - OciHelmRepo
              - CustomSecretManager
              - ElasticSearch
              - GcpSecretManager
              - AzureArtifacts
              - Tas
              - Spot
              - Bamboo
              - TerraformCloud
              - SignalFX
              - Harness
              - Rancher
              - JDBC
              - Zoom
              - MsTeams
              - Confluence
              - Slack
              - Salesforce
              - LangSmith
              - MLFlow
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns all the configured field values for the given Connector
            type, which can be used during connector creation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFieldValues'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFieldValues'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFieldValues'
  /ng/api/connectors/getceawstemplateurl:
    post:
      tags:
        - Connectors
      summary: Get the Template URL of connector
      operationId: getCEAwsTemplate
      parameters:
        - name: eventsEnabled
          in: query
          description: Specify whether or not to enable events
          schema:
            type: boolean
        - name: curEnabled
          in: query
          description: Specify whether or not to enable CUR
          schema:
            type: boolean
        - name: optimizationEnabled
          in: query
          description: Specify whether or not to enable optimization
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the cloud formation template URL to configure the Cloud Cost
            AWS Connector
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
      deprecated: true
  /ng/api/connectors/catalogue:
    get:
      tags:
        - Connectors
      summary: Lists all Connectors for an account
      description: Lists all the Connectors for the given Account ID.
      operationId: getConnectorCatalogue
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Connector catalogue response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorCatalogueResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorCatalogueResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorCatalogueResponse'
  /ng/api/connectors/stats:
    get:
      tags:
        - Connectors
      summary: >-
        Gets the connector's statistics by Account Identifier, Project
        Identifier and Organization Identifier
      operationId: getConnectorStatistics
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Connector's statistics
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorStatistics'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorStatistics'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorStatistics'
  /ng/api/connectors/listV2:
    post:
      tags:
        - Connectors
      summary: >-
        Fetches the list of Connectors corresponding to the request's filter
        criteria.
      operationId: getConnectorListV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Connectors. Any Connector having the
            specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: filterIdentifier
          in: query
          schema:
            type: string
        - name: includeAllConnectorsAvailableAtScope
          in: query
          description: >-
            Specify whether or not to include all the Connectors accessible at
            the scope. For eg if set as true, at the Project scope we will get
            org and account Connector also in the response
          schema:
            type: boolean
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: getDistinctFromBranches
          in: query
          description: >-
            This when set to true along with GitSync enabled for the Connector,
            you can get one connector entity from each identifier. The connector
            entity can belong to any branch
          schema:
            type: boolean
        - name: version
          in: query
          schema:
            type: string
        - name: onlyFavorites
          in: query
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: Details of the filters applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/yaml:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/html:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
          text/plain:
            schema:
              $ref: '#/components/schemas/ConnectorFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Connectors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseConnectorResponse'
  /ng/api/connectors/listbyfqn:
    post:
      tags:
        - Connectors
      summary: Get list of Connectors by FQN
      description: >-
        Lists all Connectors for an Account by Fully Qualified Name (FQN) with a
        limit of max 1000 FQNs per request.
      operationId: listConnectorByFQN
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          A list of connectors' FQNs as strings. A maximum of 1000 FQNs are
          allowed.
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
          text/yaml:
            schema:
              type: array
              items:
                type: string
          text/html:
            schema:
              type: array
              items:
                type: string
          text/plain:
            schema:
              type: array
              items:
                type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Connectors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListConnectorResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListConnectorResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOListConnectorResponse'
  /ng/api/connectors/testConnection/{identifier}:
    post:
      tags:
        - Connectors
      summary: Test Harness Connector connection with third-party tool
      description: >-
        Tests if a Harness Connector can successfully connect Harness to a
        third-party tool.
      operationId: getTestConnectionResult
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Connector ID
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Connector validation result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
  /ng/api/connectors/testGitRepoConnection/{identifier}:
    post:
      tags:
        - Connectors
      summary: Test Git Connector sync with repo
      description: >-
        Tests if a Git Repo Connector can successfully connect Harness to a Git
        provider.
      operationId: getTestGitRepoConnectionResult
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: repoURL
          in: query
          description: >-
            URL of the repository, specify only in the case of Account Type Git
            Connector
          schema:
            type: string
        - name: identifier
          in: path
          description: Connector ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Connector validation result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOConnectorValidationResult'
  /ng/api/connectors/validateUniqueIdentifier:
    get:
      tags:
        - Connectors
      summary: Test a Harness Connector
      description: >-
        Tests if a Connector can successfully connect Harness to a third-party
        tool using the an Account and Connector ID.
      operationId: validateTheIdentifierIsUnique
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Connector ID
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Identifier is unique and false if the
            Identifier is not unique
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/google-secret-manager-connector/gcp-regions:
    get:
      tags:
        - GoogleSecretManagerConnector
      summary: Get list of GCP Regions
      description: Lists all GCP Regions
      operationId: getGcpRegions
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of GCP Regions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ng/api/file-store:
    get:
      tags:
        - File Store
      summary: List Files and Folders metadata
      operationId: listFilesAndFolders
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of File IDs. Details specific to these IDs would be
            fetched.
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          description: >-
            This will be used to filter files or folders. Any file or folder
            having the specified search term in its Name or Identifier will be
            filtered
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: List Files and Folders metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageFile'
    post:
      tags:
        - File Store
      summary: Create Folder or File including content
      operationId: create
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              required:
                - name
                - parentIdentifier
                - type
              type: object
              properties:
                tags:
                  type: string
                  description: The File or Folder tags. (See example for expected format)
                content:
                  type: object
                  description: The content of the File as InputStream
                identifier:
                  type: string
                  description: Identifier of the File or Folder
                name:
                  type: string
                  description: Name of the File or Folder
                fileUsage:
                  type: string
                  description: This specifies the file usage
                type:
                  type: string
                  description: This specifies the type of the File
                  enum:
                    - FILE
                    - FOLDER
                parentIdentifier:
                  type: string
                  description: >-
                    This specifies parent directory identifier. The value of
                    Root directory identifier is Root.
                description:
                  type: string
                  description: Description of the File or Folder
                mimeType:
                  type: string
                  description: Mime type of the File
                path:
                  type: string
                  description: The path of the File or Folder
                createdBy:
                  $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
                lastModifiedBy:
                  $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
                lastModifiedAt:
                  type: integer
                  description: Last modified time for the File or Folder
                  format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns create response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
  /ng/api/file-store/yaml:
    post:
      tags:
        - File Store
      summary: Creates File or Folder metadata via YAML
      operationId: createViaYAML
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: YAML definition of File or Folder
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/FileStoreRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns create response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
  /ng/api/file-store/{identifier}:
    get:
      tags:
        - File Store
      summary: Get the Folder or File metadata
      operationId: getFile
      parameters:
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Get the Folder or File metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
    put:
      tags:
        - File Store
      summary: Update Folder or File including content
      operationId: update
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              required:
                - name
                - parentIdentifier
                - type
              type: object
              properties:
                tags:
                  type: string
                  description: The File or Folder tags. (See example for expected format)
                identifier:
                  type: string
                  description: Identifier of the File or Folder
                name:
                  type: string
                  description: Name of the File or Folder
                fileUsage:
                  type: string
                  description: This specifies the file usage
                type:
                  type: string
                  description: This specifies the type of the File
                  enum:
                    - FILE
                    - FOLDER
                parentIdentifier:
                  type: string
                  description: >-
                    This specifies parent directory identifier. The value of
                    Root directory identifier is Root.
                description:
                  type: string
                  description: Description of the File or Folder
                mimeType:
                  type: string
                  description: Mime type of the File
                path:
                  type: string
                  description: The path of the File or Folder
                createdBy:
                  $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
                lastModifiedBy:
                  $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
                lastModifiedAt:
                  type: integer
                  description: Last modified time for the File or Folder
                  format: int64
                content:
                  type: object
                  description: The content of the File as InputStream
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns update response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
    delete:
      tags:
        - File Store
      summary: Delete File or Folder by identifier
      operationId: deleteFile
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if deletion was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/file-store/files/{identifier}/download:
    get:
      tags:
        - File Store
      summary: Download File
      operationId: downloadFile
      parameters:
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Download File content
  /ng/api/file-store/files/createdBy:
    get:
      tags:
        - File Store
      summary: Get list of created by user details
      operationId: getCreatedByList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of created by user details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetEmbeddedUserDetailsDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetEmbeddedUserDetailsDTO'
  /ng/api/file-store/files/{scopedFilePath}/content:
    get:
      tags:
        - File Store
      summary: Get file content of scopedFilePath
      operationId: getFileContentUsingScopedFilePath
      parameters:
        - name: scopedFilePath
          in: path
          description: The scoped file path reference
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the file content of scopedFilePath
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
      deprecated: true
  /ng/api/file-store/files/content:
    post:
      tags:
        - File Store
      summary: Get file content of scopedFilePathV2
      operationId: getFileContentUsingScopedFilePathV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: The scoped file path reference
        content:
          application/json:
            schema:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the file content of scopedFilePath
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/file-store/{identifier}/referenced-by:
    get:
      tags:
        - File Store
      summary: Get list of entities where file is referenced by queried entity type
      operationId: getReferencedBy
      parameters:
        - name: pageIndex
          in: query
          description: Page number of navigation. The default value is 0
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Number of entries per page. The default value is 100
          schema:
            maximum: 1000
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
        - name: entityType
          in: query
          description: Entity type
          schema:
            type: string
            enum:
              - CreatePR
              - MergePR
              - Projects
              - Pipelines
              - PipelineSteps
              - Http
              - Email
              - JiraCreate
              - JiraUpdate
              - JiraApproval
              - HarnessApproval
              - CustomApproval
              - Barrier
              - Queue
              - FlagConfiguration
              - ShellScript
              - K8sCanaryDeploy
              - K8sApply
              - K8sBlueGreenDeploy
              - K8sRollingDeploy
              - K8sRollingRollback
              - K8sScale
              - K8sDelete
              - K8sBGSwapServices
              - K8sCanaryDelete
              - TerraformApply
              - TerraformPlan
              - TerraformDestroy
              - TerraformRollback
              - HelmDeploy
              - HelmRollback
              - Connectors
              - Secrets
              - Files
              - Service
              - Environment
              - EnvironmentGroup
              - InputSets
              - CvConfig
              - Verify
              - Delegates
              - DelegateConfigurations
              - CvVerificationJob
              - IntegrationStage
              - IntegrationSteps
              - SecurityStage
              - SecuritySteps
              - CvKubernetesActivitySource
              - DeploymentSteps
              - DeploymentStage
              - ApprovalStage
              - PipelineStage
              - FeatureFlagStage
              - Template
              - TemplateStage
              - CustomDeployment
              - Triggers
              - MonitoredService
              - GitRepositories
              - FeatureFlags
              - ServiceNowApproval
              - ServiceNowCreate
              - ServiceNowUpdate
              - ServiceNowImportSet
              - GovernancePolicies
              - Policy
              - Run
              - RunTests
              - Plugin
              - RestoreCacheGCS
              - RestoreCacheS3
              - SaveCacheGCS
              - SaveCacheS3
              - Security
              - AquaTrivy
              - AWSECR
              - Bandit
              - BlackDuck
              - Brakeman
              - Burp
              - Checkmarx
              - Clair
              - DataTheorem
              - DockerContentTrust
              - External
              - FortifyOnDemand
              - Grype
              - JfrogXray
              - Mend
              - Metasploit
              - Nessus
              - NexusIQ
              - Nikto
              - Nmap
              - Openvas
              - Owasp
              - PrismaCloud
              - Prowler
              - Qualys
              - Reapsaw
              - ShiftLeft
              - Sniper
              - Snyk
              - Sonarqube
              - Sysdig
              - Tenable
              - Veracode
              - Zap
              - GitClone
              - ArtifactoryUpload
              - GCSUpload
              - S3Upload
              - BuildAndPushGCR
              - BuildAndPushGAR
              - BuildAndPushECR
              - BuildAndPushDockerRegistry
              - CreateStack
              - DeleteStack
              - ServerlessAwsLambdaDeploy
              - ServerlessAwsLambdaRollback
              - CustomStage
              - RollbackStack
              - Infrastructure
              - Command
              - StrategyNode
              - AzureSlotDeployment
              - AzureTrafficShift
              - FetchInstanceScript
              - AzureSwapSlot
              - AzureWebAppRollback
              - JenkinsBuild
              - EcsRollingDeploy
              - EcsRollingRollback
              - EcsCanaryDeploy
              - EcsCanaryDelete
              - AzureCreateARMResource
              - BuildAndPushACR
              - AzureCreateBPResource
              - AzureARMRollback
              - Background
              - Wait
              - ArtifactSource
              - EcsBlueGreenCreateService
              - EcsBlueGreenSwapTargetGroups
              - EcsBlueGreenRollback
              - ShellScriptProvision
              - Freeze
              - GitOpsUpdateReleaseRepo
              - GitOpsFetchLinkedApps
              - EcsRunTask
              - Chaos
              - ElastigroupDeploy
              - ElastigroupRollback
              - Action
              - ElastigroupSetup
              - Bitrise
              - TerragruntPlan
              - TerragruntApply
              - TerragruntDestroy
              - TerragruntRollback
              - IACMStage
              - IACMStep
              - IACM
              - Container
              - IACMTerraformPlugin
              - IACMApproval
              - ElastigroupBGStageSetup
              - ElastigroupSwapRoute
              - AsgCanaryDeploy
              - AsgCanaryDelete
              - SwapRoutes
              - SwapRollback
              - AppResize
              - AppRollback
              - CanaryAppSetup
              - BGAppSetup
              - BasicAppSetup
              - TanzuCommand
              - AsgRollingDeploy
              - AsgRollingRollback
              - GovernanceRuleAWS
              - TasRollingDeploy
              - TasRollingRollback
              - K8sDryRun
              - AsgBlueGreenSwapService
              - AsgBlueGreenDeploy
              - AsgBlueGreenRollback
              - TerraformCloudRun
              - TerraformCloudRollback
              - DeployCloudFunction
              - DeployCloudFunctionWithNoTraffic
              - CloudFunctionTrafficShift
              - CloudFunctionRollback
              - AwsLambdaDeploy
              - AwsSamDeploy
              - AwsSamRollback
              - SscaOrchestration
              - AwsLambdaRollback
              - GitOpsSync
              - BambooBuild
              - CdSscaOrchestration
              - RouteMapping
              - AWSSecurityHub
              - CustomIngest
              - BackstageEnvironmentVariable
              - Fossa
              - CodeQL
              - Gitleaks
              - DeployCloudFunctionGenOne
              - RollbackCloudFunctionGenOne
              - K8sBlueGreenStageScaleDown
              - AwsSamBuild
              - Semgrep
              - SscaEnforcement
              - IdpConnector
              - CdSscaEnforcement
              - DownloadManifests
              - ServerlessAwsLambdaPrepareRollbackV2
              - ServerlessAwsLambdaRollbackV2
              - Coverity
              - ServerlessAwsLambdaDeployV2
              - AnalyzeDeploymentImpact
              - ServerlessAwsLambdaPackageV2
              - RevertPR
              - AwsCdkBootstrap
              - AwsCdkSynth
              - AwsCdkDiff
              - AwsCdkDeploy
              - AwsCdkDestroy
              - IdpScorecard
              - IdpCheck
              - AwsCdkRollback
              - SlsaVerification
              - UpdateGitOpsApp
              - EcsServiceSetup
              - EcsUpgradeContainer
              - EcsBasicRollback
              - ChaosInfrastructure
              - Anchore
              - Overrides
              - AsgShiftTraffic
              - AquaSecurity
              - IDPStage
              - ChaosHub
              - CookieCutter
              - CreateRepo
              - DownloadAwsS3
              - DirectPush
              - RegisterCatalog
              - K8sTrafficRouting
              - DownloadHarnessStore
              - CreateCatalog
              - SlackNotify
              - OsvScaner
              - IACMOpenTofuPlugin
              - AsgPhasedDeploy
              - AsgSetup
              - AsgRollback
              - Test
              - Wiz
              - Certificates
              - IACMCheckov
              - IACMTFCompliance
              - IACMTFLint
              - IACMTFSec
              - NotificationRule
              - NotificationChannel
              - K8sPatch
              - CreateOrganisation
              - CreateProject
              - DBSchemaApply
              - IACMPrepareExecution
              - DBSchemaRollback
              - K8sRollout
              - CreateResource
              - Checkov
              - ServiceDiscoveryAgent
              - ChaosInfrastructureV2
              - Traceable
              - AzureFunctionDeploy
              - AzureFunctionRollback
              - GoogleCloudRunDeploy
              - GoogleCloudRunPrepareRollbackData
              - GoogleCloudRunTrafficShift
              - GoogleCloudRunRollback
              - GoogleCloudRunJob
              - UpdateCatalogProperty
              - IACMWorkspace
              - IACMModuleTestPlugin
              - CheckmarxOne
              - AsgSteadyState
              - SscaArtifactVerification
              - GitOpsApplication
              - HelmDelete
              - EcsBlueGreenTrafficShift
              - StandAloneTrafficShiftRollback
              - ElastigroupBlueGreenTrafficShift
              - IdpCatalog
              - IACMTerragruntPlugin
              - IACMAnsiblePlugin
              - GitHubAdvancedSecurity
              - AiVerify
              - AIExperiment
              - ModelScan
              - SaveCache
              - RestoreCache
        - name: searchTerm
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of entities where file is referenced by
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseEntitySetupUsage'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseEntitySetupUsage'
  /ng/api/file-store/supported-entity-types:
    get:
      tags:
        - File Store
      summary: Get the list of supported entity types for files
      operationId: getEntityTypes
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of supported entity types for file
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEntityType'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEntityType'
  /ng/api/file-store/files/filter:
    post:
      tags:
        - File Store
      summary: Get filtered list of Files or Folders
      operationId: listFilesWithFilter
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: filterIdentifier
          in: query
          description: Filter identifier
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This will be used to filter files or folders. Any file or folder
            having the specified search term in its Name or Identifier will be
            filtered
          schema:
            type: string
      requestBody:
        description: Details of the File filter properties to be applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilesFilterPropertiesDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns filtered list of Files or Folder
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageFile'
  /ng/api/file-store/folder:
    post:
      tags:
        - File Store
      summary: Get folder nodes at first level, not including sub-nodes
      operationId: getFolderNodes
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: fileUsage
          in: query
          description: The file usage
          schema:
            type: string
            enum:
              - MANIFEST_FILE
              - CONFIG
              - SCRIPT
      requestBody:
        description: Folder node for which to return the list of nodes
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FolderNode'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the folder populated with file store nodes as children
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFolderNode'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFolderNode'
  /ng/api/file-store/yaml/{identifier}:
    put:
      tags:
        - File Store
      summary: Update File or Folder metadata via YAML
      operationId: updateViaYAML
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: The file identifier
          required: true
          schema:
            type: string
      requestBody:
        description: YAML definition of File or Folder
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/FileStoreRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns update response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFile'
  /ng/api/filters:
    get:
      tags:
        - Filter
      summary: List Filters
      description: Lists Filters for the given criteria.
      operationId: getFilterList
      parameters:
        - name: pageIndex
          in: query
          description: >-
            Page number of navigation. If left empty, default value of 0 is
            assumed.
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page. If left empty, default value of 100 is
            assumed
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
        - name: searchTerm
          in: query
          description: Text to search/filter the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
    put:
      tags:
        - Filter
      summary: Update a Filter
      description: Updates the filter for the given ID.
      operationId: updateFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Filter. This should have all the fields not just
          the updated ones
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    post:
      tags:
        - Filter
      summary: Create a Filter
      description: Creates a Filter.
      operationId: postFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Connector to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
  /ng/api/filters/{identifier}:
    get:
      tags:
        - Filter
      summary: Return Filter Details
      description: Returns the settings of a filter for the given ID.
      operationId: getFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns Filter having filterIdentifier as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    delete:
      tags:
        - Filter
      summary: Delete a Filter
      description: Deletes a filter for the given ID.
      operationId: deleteFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/git-sync-branch/sync:
    post:
      tags:
        - Git Branches
      summary: Sync the content of new Git Branch into harness with Git Sync Config Id
      operationId: syncGitBranch
      parameters:
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns True if the new Git Branch is successfully synced into
            Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/git-sync-branch/listBranchesWithStatus:
    get:
      tags:
        - Git Branches
      summary: >-
        Lists branches with their status(Synced, Unsynced) by Git Sync Config Id
        for the given scope
      operationId: getListOfBranchesWithStatus
      parameters:
        - name: yamlGitConfigIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            maximum: 100
            type: integer
            format: int32
        - name: searchTerm
          in: query
          description: Search Term.
          schema:
            type: string
            default: ''
        - name: branchSyncStatus
          in: query
          description: Used to filter out Synced and Unsynced branches
          schema:
            type: string
            enum:
              - SYNCED
              - SYNCING
              - UNSYNCED
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns a list of branches along with their status within the given
            scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitBranchList'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitBranchList'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitBranchList'
  /ng/api/git-full-sync/config:
    get:
      tags:
        - Git Full Sync
      summary: Fetch Configuration for Git Full Sync for the provided scope
      operationId: getGitFullSyncConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the saved Git Full Sync Configuration for the provided
            scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
    put:
      tags:
        - Git Full Sync
      summary: Update Configuration for Git Full Sync for the provided scope
      operationId: updateGitFullSyncConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Details of the Git Full sync Configuration
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
          text/html:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the updated Git Full Sync Configuration for the provided
            scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
    post:
      tags:
        - Git Full Sync
      summary: Create Configuration for Git Full Sync for the provided scope
      operationId: createGitFullSyncConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Details of the Git Full sync Configuration
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
          text/html:
            schema:
              $ref: '#/components/schemas/GitFullSyncConfigRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the saved Configuration details for Git Full Sync.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitFullSyncConfig'
  /ng/api/git-full-sync/files:
    post:
      tags:
        - Git Full Sync
      summary: List files in full sync along with their status
      operationId: listFullSyncFiles
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search Term.
          schema:
            type: string
      requestBody:
        description: Entity Type and Sync Status
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitFullSyncEntityInfoFilter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitFullSyncEntityInfoFilter'
          text/html:
            schema:
              $ref: '#/components/schemas/GitFullSyncEntityInfoFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the List of Files for Git Full sync.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo
            text/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo
            text/html:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitFullSyncEntityInfo
  /ng/api/git-full-sync:
    post:
      tags:
        - Git Full Sync
      summary: Trigger Full Sync
      operationId: triggerFullSync
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully Triggered Full Sync.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTriggerGitFullSyncResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTriggerGitFullSyncResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOTriggerGitFullSyncResponse'
  /ng/api/git-sync-settings:
    get:
      tags:
        - Git Sync Settings
      summary: Get Git Sync Setting for the given scope
      operationId: getGitSyncSettings
      parameters:
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Git Sync Setting of the given scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
    put:
      tags:
        - Git Sync Settings
      summary: >-
        This updates the existing Git Sync settings within the scope. Only
        changing Connectivity Mode is allowed
      operationId: updateGitSyncSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: This contains details of Git Sync Settings
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
          text/html:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Updated Git Sync Setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
    post:
      tags:
        - Git Sync Settings
      summary: Creates Git Sync Setting in a scope
      operationId: createGitSyncSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This contains details of Git Sync settings like - (scope,
          executionOnDelegate)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
          text/html:
            schema:
              $ref: '#/components/schemas/GitSyncSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully created Git Sync Setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncSettings'
  /ng/api/git-sync:
    get:
      tags:
        - Git Sync
      summary: Lists Git Sync Config for the given scope
      operationId: getGitSyncConfigList
      parameters:
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: List of Git Sync Config for the given scope
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GitSyncConfig'
            text/yaml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GitSyncConfig'
            text/html:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GitSyncConfig'
    put:
      tags:
        - Git Sync
      summary: Update existing Git Sync Config by Identifier
      operationId: updateGitSyncConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of Git Sync Config
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/html:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/plain:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Updated Git Sync Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
    post:
      tags:
        - Git Sync
      summary: Creates Git Sync Config in given scope
      operationId: createGitSyncConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of Git Sync Config
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/yaml:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/html:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
          text/plain:
            schema:
              $ref: '#/components/schemas/GitSyncConfig'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully created Git Sync Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
  /ng/api/git-sync/git-sync-enabled:
    get:
      tags:
        - Git Sync
      summary: Check whether Git Sync is enabled for given scope or not
      operationId: isGitSyncEnabled
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Result of whether Git Sync is enabled for the scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GitEnabled'
            text/yaml:
              schema:
                $ref: '#/components/schemas/GitEnabled'
            text/html:
              schema:
                $ref: '#/components/schemas/GitEnabled'
  /ng/api/git-sync/{identifier}/folder/{folderIdentifier}/default:
    put:
      tags:
        - Git Sync
      summary: Update existing Git Sync Config default root folder by Identifier
      operationId: updateDefaultFolder
      parameters:
        - name: projectId
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: organizationId
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          required: true
          schema:
            type: string
        - name: folderIdentifier
          in: path
          description: Folder Id
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Updated Git Sync Config default root folder
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/yaml:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
            text/html:
              schema:
                $ref: '#/components/schemas/GitSyncConfig'
  /ng/api/git-sync-errors/count:
    get:
      tags:
        - Git Sync Errors
      summary: Get Errors Count for the given scope, Repo and Branch
      operationId: getGitSyncErrorsCount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search Term.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Count of both Git to Harness Errors and Connectivity Errors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncErrorCount'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncErrorCount'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOGitSyncErrorCount'
  /ng/api/git-sync-errors:
    get:
      tags:
        - Git Sync Errors
      summary: >-
        Lists Git to Harness Errors by file or connectivity errors for the given
        scope, Repo and Branch
      operationId: listGitSyncErrors
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search Term.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: gitToHarness
          in: query
          description: >-
            This specifies which errors to show - (Git to Harness or
            Connectivity), Put true to show Git to Harness Errors
          schema:
            type: boolean
            default: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Paginated list of Git to Harness Errors by file or connectivity
            errors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
  /ng/api/git-sync-errors/commits/{commitId}:
    get:
      tags:
        - Git Sync Errors
      summary: Lists Git to Harness Errors for the given Commit Id
      operationId: listGitToHarnessErrorForCommit
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: commitId
          in: path
          description: Commit Id
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Git to Harness Errors for given Commit Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseGitSyncError'
  /ng/api/git-sync-errors/aggregate:
    get:
      tags:
        - Git Sync Errors
      summary: >-
        Lists Git to Harness Errors grouped by Commits for the given scope, Repo
        and Branch
      operationId: listGitToHarnessErrorsGroupedByCommits
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search Term.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: numberOfErrorsInSummary
          in: query
          description: Number of errors that will be displayed in the summary
          schema:
            maximum: 5
            type: integer
            format: int32
            default: 5
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Git to Harness Errors grouped by Commit
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit
            text/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit
            text/html:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseGitSyncErrorAggregateByCommit
  /ng/api/ldap/ngLdapSettings:
    get:
      tags:
        - Nextgen Ldap
      summary: Get the NgLdap Setting
      description: For the given accountId fetch and return the ng ldap settings
      operationId: getNgLdapSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Get the NgLdap Setting
          content:
            application/x-kryo:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTONGLdapSettingsWithEncryptedDataDetails
  /ng/api/ldap/ldap-login-test:
    post:
      tags:
        - Nextgen Ldap
      summary: Test LDAP authentication
      description: >-
        Tests LDAP authentication for the given Account ID, with a valid test
        email and password
      operationId: postLdapAuthenticationTest
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                  description: This should be a valid test email
                password:
                  type: string
                  description: This should be a valid password for the test email
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns authentication status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLdapResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseLdapResponse'
  /ng/api/ldap/{ldapId}/search/group:
    get:
      tags:
        - Nextgen Ldap
      summary: Return Ldap groups matching name
      description: >-
        Returns all userGroups for the configured Ldap in the account matching a
        given name.
      operationId: searchLdapGroups
      parameters:
        - name: ldapId
          in: path
          description: Ldap setting id
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: name
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns ldap groups matching a given name
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseCollectionLdapGroupResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseCollectionLdapGroupResponse'
  /ng/api/usage/cd/active-services/csv/download:
    get:
      tags:
        - Usage
      summary: Download CSV Active Services report
      operationId: downloadActiveServiceCSVReport
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Download CSV Active Services report
  /ng/api/usage/CD/serviceInstancesLicense:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: getCDLicenseUsageForServiceInstances
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceInstanceUsageDTO'
  /ng/api/usage/CD/servicesLicense:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: getCDLicenseUsageForServices
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceUsageDTO'
  /ng/api/usage/{module}:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: getLicenseUsage
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: module
          in: path
          description: A Harness platform module.
          required: true
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
        - name: CDLicenseType
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOLicenseUsage'
  /ng/api/authentication-settings/ldap/settings:
    get:
      tags:
        - Authentication Settings
      summary: Return configured Ldap settings for the account
      description: Returns configured Ldap settings and its details for the account.
      operationId: getLdapSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns ldap setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLDAPSettings'
    put:
      tags:
        - Authentication Settings
      summary: Updates Ldap setting
      description: Updates configured Ldap settings along with the user, group queries.
      operationId: updateLdapSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated LdapSettings. Values for all fields is needed, not
          just the fields you are updating
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LDAPSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Updated Ldap settings along with the user, group settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLDAPSettings'
    post:
      tags:
        - Authentication Settings
      summary: Create Ldap setting
      description: Creates Ldap settings along with the user, group queries.
      operationId: createLdapSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Create LdapSettings request body. Values for connection settings are
          needed, user and group settings can also be provided
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LDAPSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Creates Ldap settings along with the user, group queries
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLDAPSettings'
    delete:
      tags:
        - Authentication Settings
      summary: Delete Ldap settings
      description: Delete configured Ldap settings on this account.
      operationId: deleteLdapSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully deleted Ldap settings configured on account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/delete-saml-metadata:
    delete:
      tags:
        - Authentication Settings
      summary: Delete SAML meta data
      description: Deletes SAML metadata for the given Account ID.
      operationId: deleteSamlMetaData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully deleted SAML meta associated with a SAML setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSSOConfig'
  /ng/api/authentication-settings/saml-metadata/{samlSSOId}/delete:
    delete:
      tags:
        - Authentication Settings
      summary: Delete SAML meta data for given SAML sso id
      description: Deletes SAML metadata for the given Account and SAML sso id
      operationId: deleteSamlMetaDataForSamlSSOId
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: samlSSOId
          in: path
          description: Saml Settings Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully deleted SAML meta associated with a SAML SSO setting id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSSOConfig'
  /ng/api/authentication-settings/saml-metadata-upload/{samlSSOId}/authentication:
    put:
      tags:
        - Authentication Settings
      summary: Update authentication enabled or not for given SAML setting
      description: >-
        Updates if authentication is enabled or not for given SAML setting in
        Account ID.
      operationId: enableDisableAuthenticationForSAMLSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enable
          in: query
          required: true
          schema:
            type: boolean
            default: true
        - name: samlSSOId
          in: path
          description: Saml Settings Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully updated login allowed status for SAML setting in
            account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings:
    get:
      tags:
        - Authentication Settings
      summary: Gets authentication settings for the given Account ID
      description: Gets authentication settings for the given Account ID.
      operationId: getAuthenticationSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully returns authentication settings of an Account
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponseAuthenticationSettingsResponse
  /ng/api/authentication-settings/v2:
    get:
      tags:
        - Authentication Settings
      summary: Gets authentication settings version 2 for the given Account ID
      description: Gets authentication settings version 2 for the given Account ID.
      operationId: getAuthenticationSettingsV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully returns authentication settings of an Account
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponseAuthenticationSettingsResponse
  /ng/api/authentication-settings/login-settings/password-strength:
    get:
      tags:
        - Authentication Settings
      summary: Get password strength
      description: Gets password strength for the given Account ID.
      operationId: getPasswordStrengthSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns password strength of an Account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponsePasswordStrengthPolicy'
  /ng/api/authentication-settings/saml-login-test:
    get:
      tags:
        - Authentication Settings
      summary: Test SAML connectivity
      description: Tests SAML connectivity for the given Account ID.
      operationId: getSamlLoginTest
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns connectivity status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLoginTypeResponse'
  /ng/api/authentication-settings/saml-login-test/{samlSSOId}:
    get:
      tags:
        - Authentication Settings
      summary: Test SAML connectivity
      description: Tests SAML connectivity for the given Account ID and SAML setting.
      operationId: getSamlLoginTestV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: samlSSOId
          in: path
          description: Saml Settings Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns connectivity status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseLoginTypeResponse'
  /ng/api/authentication-settings/oauth/remove-mechanism:
    delete:
      tags:
        - Authentication Settings
      summary: Delete OAuth Setting
      description: Deletes OAuth settings for a given Account ID.
      operationId: removeOauthMechanism
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully removed OAuth settings configured to an account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/public-access:
    put:
      tags:
        - Authentication Settings
      summary: Enable/disable public access at account level
      description: Enable/disable public access for the given Account ID.
      operationId: setPublicAccess
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Information about the session timeout for all users of this account in
          minutes.
        content:
          application/json:
            schema:
              type: boolean
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully configured public access for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/session-timeout-account-level:
    put:
      tags:
        - Authentication Settings
      summary: Set session timeout at account level
      description: Sets session timeout of all users for the given Account ID.
      operationId: setSessionTimeoutAtAccountLevel
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Information about the session timeout for all users of this account in
          minutes.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SessionTimeoutSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully configured session timeout for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/two-factor-admin-override-settings:
    put:
      tags:
        - Authentication Settings
      summary: Set two factor authorization
      description: Sets Two-Factor authorization for the given Account ID.
      operationId: setTwoFactorAuthAtAccountLevel
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Boolean that specify whether or not to override two factor enabled
          setting
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/TwoFactorAdminOverrideSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully configured two factor authorization for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/update-auth-mechanism:
    put:
      tags:
        - Authentication Settings
      summary: Update Auth mechanism
      description: Updates the authentication mechanism for the given Account ID.
      operationId: updateAuthMechanism
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: authenticationMechanism
          in: query
          description: Type of Authentication Mechanism SSO or NON_SSO
          schema:
            type: string
            enum:
              - USER_PASSWORD
              - SAML
              - LDAP
              - OAUTH
              - OIDC
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully updated Auth mechanism for an account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/oauth/update-providers:
    put:
      tags:
        - Authentication Settings
      summary: Update Oauth providers
      description: Updates OAuth providers for the given Account ID.
      operationId: updateOauthProviders
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated OAuthSettings. Please provide values for all
          fields, not just the fields you are updating
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/OAuthSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully updated the Oauth providers for the account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/saml-metadata-upload:
    put:
      tags:
        - Authentication Settings
      summary: Update SAML metadata
      description: >-
        Updates SAML metadata of the SAML configuration configured for an
        account
      operationId: updateSamlMetaData
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: object
                  description: SAML Metadata input file
                fileMetadata:
                  $ref: '#/components/schemas/FormDataContentDisposition'
                displayName:
                  type: string
                  description: Display Name of the SAML
                groupMembershipAttr:
                  type: string
                  description: Group membership attribute
                authorizationEnabled:
                  type: boolean
                  description: Specify whether or not to enable authorization
                logoutUrl:
                  type: string
                  description: Logout URL
                entityIdentifier:
                  type: string
                  description: SAML metadata Identifier
                samlProviderType:
                  type: string
                  description: SAML provider type
                clientId:
                  type: string
                  description: Optional SAML clientId for Azure SSO
                clientSecret:
                  type: string
                  description: Optional SAML clientSecret reference string for Azure SSO
                jitEnabled:
                  type: boolean
                  description: Enable Just in time user provision
                  default: false
                jitValidationKey:
                  type: string
                  description: >-
                    Optional Key to match in SAML assertion for Just in time
                    user provision
                jitValidationValue:
                  type: string
                  description: >-
                    Optional Value to match in SAML assertion for Just in time
                    user provision
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully updated SAML metadata of SAML setting configured for an
            account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSSOConfig'
    post:
      tags:
        - Authentication Settings
      summary: Upload SAML metadata
      description: Updates the SAML metadata for the given Account ID.
      operationId: uploadSamlMetaData
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: object
                  description: Saml Metadata input file
                fileMetadata:
                  $ref: '#/components/schemas/FormDataContentDisposition'
                displayName:
                  type: string
                  description: Display Name of the SAML
                groupMembershipAttr:
                  type: string
                  description: Group membership attribute
                authorizationEnabled:
                  type: boolean
                  description: Specify whether or not to enable authorization
                logoutUrl:
                  type: string
                  description: Logout URL
                entityIdentifier:
                  type: string
                  description: SAML metadata Identifier
                samlProviderType:
                  type: string
                  description: SAML provider type
                clientId:
                  type: string
                  description: Optional SAML clientId for Azure SSO
                clientSecret:
                  type: string
                  description: Optional SAML clientSecret reference string for Azure SSO
                friendlySamlName:
                  type: string
                  description: Friendly name of the app on SAML SSO provider end in Harness
                jitEnabled:
                  type: boolean
                  description: Enable Just in time user provision
                  default: false
                jitValidationKey:
                  type: string
                  description: >-
                    Optional Key to match in SAML assertion for Just in time
                    user provision
                jitValidationValue:
                  type: string
                  description: >-
                    Optional Value to match in SAML assertion for Just in time
                    user provision
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully uploads SAML metadata to the SAML setting configured
            for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSSOConfig'
  /ng/api/authentication-settings/saml-metadata-upload/{samlSSOId}:
    put:
      tags:
        - Authentication Settings
      summary: Update SAML metadata for a given SAML SSO Id
      description: >-
        Updates SAML metadata of the SAML configuration with given SSO Id,
        configured for an account
      operationId: updateSamlMetaDataForSamlSSOId
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: samlSSOId
          in: path
          description: Saml Settings Identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: object
                  description: SAML Metadata input file
                fileMetadata:
                  $ref: '#/components/schemas/FormDataContentDisposition'
                displayName:
                  type: string
                  description: Display Name of the SAML
                groupMembershipAttr:
                  type: string
                  description: Group membership attribute
                authorizationEnabled:
                  type: boolean
                  description: Specify whether or not to enable authorization
                logoutUrl:
                  type: string
                  description: Logout URL
                entityIdentifier:
                  type: string
                  description: SAML metadata Identifier
                samlProviderType:
                  type: string
                  description: SAML provider type
                clientId:
                  type: string
                  description: Optional SAML clientId for Azure SSO
                clientSecret:
                  type: string
                  description: Optional SAML clientSecret reference string for Azure SSO
                friendlySamlName:
                  type: string
                  description: Friendly name of the app on SAML SSO provider end in Harness
                jitEnabled:
                  type: boolean
                  description: Enable Just in time user provision
                  default: false
                jitValidationKey:
                  type: string
                  description: >-
                    Optional Key to match in SAML assertion for Just in time
                    user provision
                jitValidationValue:
                  type: string
                  description: >-
                    Optional Value to match in SAML assertion for Just in time
                    user provision
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully updated SAML metadata of SAML setting configured for an
            account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSSOConfig'
  /ng/api/authentication-settings/whitelisted-domains:
    put:
      tags:
        - Authentication Settings
      summary: Updates the whitelisted domains
      description: Updates whitelisted domains configured for an account.
      operationId: updateWhitelistedDomains
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Set of whitelisted domains and IPs for the account
        content:
          '*/*':
            schema:
              uniqueItems: true
              type: array
              items:
                type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully updated whitelisted domains configured with an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/authentication-settings/saml-metadata:
    post:
      tags:
        - Authentication Settings
      summary: Upload SAML metadata
      description: Updates the SAML metadata for the given Account ID.
      operationId: uploadSamlMetaDataDs
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: object
                  description: Saml Metadata input file
                fileMetadata:
                  $ref: '#/components/schemas/FormDataContentDisposition'
                displayName:
                  type: string
                  description: Display Name of the SAML
                groupMembershipAttr:
                  type: string
                  description: Group membership attribute
                authorizationEnabled:
                  type: boolean
                  description: Specify whether or not to enable authorization
                logoutUrl:
                  type: string
                  description: Logout URL
                entityIdentifier:
                  type: string
                  description: SAML metadata Identifier
                samlProviderType:
                  type: string
                  description: SAML provider type
                clientId:
                  type: string
                  description: Optional SAML clientId for Azure SSO
                clientSecret:
                  type: string
                  description: Optional SAML clientSecret reference string for Azure SSO
                friendlySamlName:
                  type: string
                  description: Friendly name of the app on SAML SSO provider end in Harness
                jitEnabled:
                  type: boolean
                  description: Enable Just in time user provision
                  default: false
                jitValidationKey:
                  type: string
                  description: >-
                    Optional Key to match in SAML assertion for Just in time
                    user provision
                jitValidationValue:
                  type: string
                  description: >-
                    Optional Value to match in SAML assertion for Just in time
                    user provision
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully uploads SAML metadata to the SAML setting configured
            for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSamlSettingsDTO'
  /ng/api/account-setting:
    get:
      tags:
        - AccountSetting
      summary: Get the AccountSetting by accountIdentifier
      operationId: getAccountSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          required: true
          schema:
            type: string
            enum:
              - Connector
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the AccountSetting with the requested accountIdentifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
    put:
      tags:
        - AccountSetting
      summary: Updates account settings
      operationId: updateAccountSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the AccountSetting to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountSettings'
          text/yaml:
            schema:
              $ref: '#/components/schemas/AccountSettings'
          text/html:
            schema:
              $ref: '#/components/schemas/AccountSettings'
          text/plain:
            schema:
              $ref: '#/components/schemas/AccountSettings'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created account setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccountSettingResponse'
  /ng/api/account-setting/list:
    get:
      tags:
        - AccountSetting
      summary: Get the AccountSetting by accountIdentifier
      operationId: listAccountSetting
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          schema:
            type: string
            enum:
              - Connector
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of AccountSettings with requested accountIdentifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAccountSettings'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAccountSettings'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAccountSettings'
  /ng/api/agent/mtls/endpoint:
    get:
      tags:
        - Agent mTLS Endpoint Management
      summary: Gets the agent mTLS endpoint for an account.
      operationId: getAgentMtlsEndpointForAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The mTLS endpoint for the account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseAgentMtlsEndpointDetails'
    put:
      tags:
        - Agent mTLS Endpoint Management
      summary: Updates the existing agent mTLS endpoint for an account.
      operationId: updateAgentMtlsEndpointForAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: The details to update for the agent mTLS endpoint.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentMtlsEndpointRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The details of the updated mTLS endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseAgentMtlsEndpointDetails'
    post:
      tags:
        - Agent mTLS Endpoint Management
      summary: Creates the agent mTLS endpoint for an account.
      operationId: createAgentMtlsEndpointForAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: The details of the agent mTLS endpoint to create.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentMtlsEndpointRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The details of the newly created mTLS endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseAgentMtlsEndpointDetails'
    delete:
      tags:
        - Agent mTLS Endpoint Management
      summary: Removes the agent mTLS endpoint for an account.
      operationId: deleteAgentMtlsEndpointForAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: True if and only if the endpoint existed and got removed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
    patch:
      tags:
        - Agent mTLS Endpoint Management
      summary: >-
        Updates selected properties of the existing agent mTLS endpoint for an
        account.
      operationId: patchAgentMtlsEndpointForAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: A subset of the details to update for the agent mTLS endpoint.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentMtlsEndpointRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The details of the updated mTLS endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseAgentMtlsEndpointDetails'
  /ng/api/agent/mtls/check-availability:
    get:
      tags:
        - Agent mTLS Endpoint Management
      summary: Checks whether a given agent mTLS endpoint domain prefix is available.
      operationId: checkAgentMtlsEndpointDomainPrefixAvailability
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: domainPrefix
          in: query
          description: The domain prefix to check.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            True if and only if the domain prefix is currently not in use by any
            existing mTLS endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/customDeployment/get-references:
    post:
      tags:
        - CustomDeployment
      summary: Gets Custom Deployment Entity References
      operationId: getCustomDeploymentEntityReferences
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Custom Deployment Yaml Request DTO containing entityYaml
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns all entity references in the custom deployment template.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEntityDetailProtoDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEntityDetailProtoDTO'
  /ng/api/customDeployment/expression-variables:
    post:
      tags:
        - CustomDeployment
      summary: Gets Custom Deployment Expression Variables
      operationId: getCustomDeploymentExpressionVariables
      requestBody:
        description: Custom Deployment Yaml Request DTO containing entityYaml
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns all Variables used that are valid to be used as expression
            in template.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomDeploymentVariableResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomDeploymentVariableResponseDTO
  /ng/api/customDeployment/variables/{templateIdentifier}:
    get:
      tags:
        - CustomDeployment
      summary: Gets Infra Variables from a Custom Deployment Template by identifier
      operationId: getCustomDeploymentInfraVariables
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Custom Deployment Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Version Label
          schema:
            type: string
        - name: deleted
          in: query
          description: Specifies whether Template is deleted or not
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Custom Deployment Infra Variables
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/customDeployment/get-updated-Yaml/{infraIdentifier}:
    post:
      tags:
        - CustomDeployment
      summary: Return the updated yaml for infrastructure based on Deployment template
      operationId: getUpdatedYamlForInfrastructure
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
      requestBody:
        description: YAML
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomDeploymentYamlDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Return the updated yaml for infrastructure based on Deployment
            template
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCustomDeploymentRefreshYamlDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOCustomDeploymentRefreshYamlDTO'
  /ng/api/customDeployment/validate-infrastructure/{infraIdentifier}:
    get:
      tags:
        - CustomDeployment
      summary: This validates whether Infrastructure is valid or not
      operationId: validateInfrastructureForDeploymentTemplate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: envIdentifier
          in: query
          description: Environment Identifier for the entity
          schema:
            type: string
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns if the infra is valid or not.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomDeploymentInfraResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomDeploymentInfraResponseDTO
  /ng/api/download-delegates/docker:
    post:
      tags:
        - Delegate Download Resource
      summary: Downloads a docker delegate yaml file.
      operationId: downloadDockerDelegateYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Parameters needed for downloading docker delegate yaml
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateDownloadRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Yaml File.
  /ng/api/download-delegates/kubernetes:
    post:
      tags:
        - Delegate Download Resource
      summary: Downloads a kubernetes delegate yaml file.
      operationId: downloadKubernetesDelegateYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Parameters needed for downloading kubernetes delegate yaml
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateDownloadRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Yaml File.
  /ng/api/delegate-group-tags/{groupIdentifier}:
    get:
      tags:
        - Delegate Group Tags Resource
      summary: Retrieves list of tags attached with Delegate group
      operationId: listTagsForDelegateGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: groupIdentifier
          in: path
          description: Delegate Group Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate group details along with tags.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateGroupDTO'
    put:
      tags:
        - Delegate Group Tags Resource
      summary: >-
        Clears all existing tags with delegate group and attach given set of
        tags to delegate group.
      operationId: updateTagsOfDelegateGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: groupIdentifier
          in: path
          description: Delegate Group Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: Set of tags
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateGroupTags'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Group details for updated group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateGroupDTO'
    post:
      tags:
        - Delegate Group Tags Resource
      summary: Add given list of tags to the Delegate group
      operationId: addTagsToDelegateGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: groupIdentifier
          in: path
          description: Delegate Group Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: Set of tags
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateGroupTags'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Group details for updated group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateGroupDTO'
    delete:
      tags:
        - Delegate Group Tags Resource
      summary: Deletes all tags from the Delegate group
      operationId: deleteTagsFromDelegateGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: groupIdentifier
          in: path
          description: Delegate Group Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Group details for updated group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateGroupDTO'
  /ng/api/delegate-group-tags/delegate-groups:
    post:
      tags:
        - Delegate Group Tags Resource
      summary: List delegate groups that are having mentioned tags.
      operationId: listDelegateGroupsUsingTags
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Set of tags
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateGroupTags'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: List of Delegate Group details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseListDelegateGroupDTO'
  /ng/api/delegate-setup/delegate/{delegateIdentifier}:
    delete:
      tags:
        - Delegate Setup Resource
      summary: Deletes a Delegate by its identifier.
      operationId: deleteDelegate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: delegateIdentifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: 200 Ok response if everything successfully deleted delegate
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateDeleteResponse'
  /ng/api/delegate-setup/delete-delegate-override:
    delete:
      tags:
        - Delegate Setup Resource
      summary: Delete delegate image tag override
      operationId: overrideDelegateImageTag
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: tags
          in: query
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delete delegate image tag override
  /ng/api/delegate-setup/delegate-terraform-module-file:
    get:
      tags:
        - Delegate Setup Resource
      summary: Generates delegate terraform example module file from the account
      operationId: generateTerraformModule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Generated terraform module file.
  /ng/api/delegate-setup/generate-helm-values:
    post:
      tags:
        - Delegate Setup Resource
      summary: >-
        Generates helm values yaml file from the data specified in request body
        (Delegate setup details).
      operationId: generateNgHelmValuesYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Delegate setup details, containing data to populate yaml file values.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateSetupDetails'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Generated yaml file.
  /ng/api/delegate-setup/override-delegate-tag:
    get:
      tags:
        - Delegate Setup Resource
      summary: Lists all delegates overrides in NG filtered by provided conditions
      operationId: listOverrideDelegateImageTag
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Lists all delegate overrides in NG
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseVersionOverridesResponse'
    put:
      tags:
        - Delegate Setup Resource
      summary: Overrides delegate image tag for account
      operationId: overrideDelegateImageTag_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: tags
          in: query
          description: >-
            if provided, will override the image for all delegates which have
            all the provided tags
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
        - name: delegateTag
          in: query
          required: true
          schema:
            type: string
        - name: validTillNextRelease
          in: query
          description: >-
            If set to true, harness will override your custom tag when new
            delegate is released
          schema:
            type: boolean
            default: false
        - name: validForDays
          in: query
          description: days after which harness will override your custom tag
          schema:
            type: integer
            format: int32
            default: 180
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Delegate Image Tag
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseString'
  /ng/api/delegate-setup/listDelegates:
    post:
      tags:
        - Delegate Setup Resource
      summary: Lists all delegates in NG filtered by provided conditions
      operationId: listDelegates
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: all
          in: query
          description: >-
            Filter delegates based on the scope (query param: all), if true will
            return delegates of underlying orgs/projects and ignore the filters
            provided as part of the request body
          schema:
            type: boolean
            default: false
      requestBody:
        description: Details of the Delegate filter properties to be applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DelegateFilterPropertiesDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Lists all delegates in NG
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseListDelegateListResponse'
  /ng/api/delegate-setup/latest-supported-version:
    get:
      tags:
        - Delegate Setup Resource
      summary: >-
        Gets the latest supported delegate version. The version has YY.MM.XXXXX
        format. You can use any version lower than the returned results(upto 3
        months old)
      operationId: publishedDelegateVersion
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Gets the latest supported delegate version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSupportedDelegateVersion'
  /ng/api/delegate-token-ng:
    get:
      tags:
        - Delegate Token Resource
      summary: Retrieves Delegate Tokens by Account, Organization, Project and status.
      operationId: getCgDelegateTokens
      parameters:
        - name: name
          in: query
          description: Name of Delegate Token (ACTIVE or REVOKED).
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: status
          in: query
          description: >-
            Status of Delegate Token (ACTIVE or REVOKED). If left empty both
            active and revoked tokens will be retrieved
          schema:
            type: string
            enum:
              - ACTIVE
              - REVOKED
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: A list of Delegate Tokens
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseListDelegateTokenDetails'
    put:
      tags:
        - Delegate Token Resource
      summary: Revokes Delegate Token.
      operationId: revokeCgDelegateToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: tokenName
          in: query
          description: Delegate Token name
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: 200 Ok response if everything successfully revoked token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateTokenDetails'
    post:
      tags:
        - Delegate Token Resource
      summary: Creates Delegate Token.
      operationId: createDelegateToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: tokenName
          in: query
          description: Delegate Token name
          required: true
          schema:
            type: string
        - name: revokeAfter
          in: query
          description: >-
            Epoch time in milliseconds after which the token will be marked as
            revoked. There can be a delay of upto one hour from the epoch value
            provided and actual revoking of the token.
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: A created Token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateTokenDetails'
    delete:
      tags:
        - Delegate Token Resource
      summary: Deletes a revoked Delegate Token.
      operationId: deleteNgDelegateToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: tokenName
          in: query
          description: Delegate Token name
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: 204 no content response if successfully deleted token
  /ng/api/delegate-token-ng/delegate-groups:
    get:
      tags:
        - Delegate Token Resource
      summary: Lists delegate groups that are using the specified delegate token.
      operationId: getDelegateGroupsUsingToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: delegateTokenName
          in: query
          description: Delegate Token name
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: A list of delegate groups that are usign the specified token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseDelegateGroupListing'
  /ng/api/environmentsV2/check-allowed-values:
    post:
      tags:
        - Environments
      summary: Check for allowed-values in the Environments
      operationId: checkAllowedValuesInEnvs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Environments using allowed-values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO'
  /ng/api/environmentsV2:
    get:
      tags:
        - Environments
      summary: Gets Environment list for a project
      operationId: getEnvironmentList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: envIdentifiers
          in: query
          description: List of EnvironmentIds
          schema:
            type: array
            items:
              type: string
        - name: sort
          in: query
          description: >-
            Specifies sorting criteria of the list. Like sorting based on the
            last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Environments for a Project
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseEnvironmentResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseEnvironmentResponse
    put:
      tags:
        - Environments
      summary: Update an Environment by identifier
      operationId: updateEnvironmentV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Environment to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Environment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
    post:
      tags:
        - Environments
      summary: Create an Environment
      operationId: createEnvironmentV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Environment to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Environment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
  /ng/api/environmentsV2/{environmentIdentifier}:
    get:
      tags:
        - Environments
      summary: Gets an Environment by identifier
      operationId: getEnvironmentV2
      parameters:
        - name: environmentIdentifier
          in: path
          description: Environment Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: deleted
          in: query
          description: Specify whether Environment is deleted or not
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Environment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
    delete:
      tags:
        - Environments
      summary: Delete an Environment by identifier
      operationId: deleteEnvironmentV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: environmentIdentifier
          in: path
          description: Environment Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Environment is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/environmentsV2/serviceOverrides:
    get:
      tags:
        - Environments
      summary: Gets Service Overrides list
      operationId: getServiceOverridesList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 500
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          description: Service Identifier for the Entity.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Specifies the sorting criteria of the list. Like sorting based on
            the last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the list of Service Overrides for an
            Environment.serviceIdentifier, if passed, can be used to get the
            overrides for that particular Service in the Environment
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceOverrideResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceOverrideResponse
    post:
      tags:
        - Environments
      summary: upsert a Service Override for an Environment
      operationId: upsertServiceOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Service Override to be upserted
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverrideRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceOverrideRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Upsert ( Create/Update )  a Service Override in an Environment.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceOverrideResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceOverrideResponse'
    delete:
      tags:
        - Environments
      summary: Delete a ServiceOverride entity
      operationId: deleteServiceOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the Entity.
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          description: Service Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Service Override is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/environmentsV2/import:
    post:
      tags:
        - Environments
      summary: Import and Create Environment from Git Repository
      operationId: importEnvironment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the entity
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          required: true
          schema:
            type: string
        - name: isForceImport
          in: query
          description: isForceImport
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Import and Create Environment from Git Repository and saves a record
            for it in Harness
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOEnvironmentImportResponseDetails
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOEnvironmentImportResponseDetails
  /ng/api/environmentsV2/list/access:
    get:
      tags:
        - Environments
      summary: Gets Environment Access list
      operationId: getEnvironmentAccessList
      parameters:
        - name: page
          in: query
          description: page
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: size
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: envIdentifiers
          in: query
          description: List of EnvironmentIds
          schema:
            type: array
            items:
              type: string
        - name: envGroupIdentifier
          in: query
          description: Environment group identifier
          schema:
            type: string
        - name: type
          in: query
          description: Environment type for the entity
          schema:
            type: string
            enum:
              - PreProduction
              - Production
        - name: sort
          in: query
          description: >-
            Specifies sorting criteria of the list. Like sorting based on the
            last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Environments that are accessible
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEnvironmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListEnvironmentResponse'
  /ng/api/environmentsV2/move-config/{environmentIdentifier}:
    post:
      tags:
        - Environments
      summary: Move environment YAML from inline to remote
      operationId: moveEnvironmentConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: path
          description: Environment Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
            default: false
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          required: true
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
              - REMOTE_TO_INLINE
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Move environment YAML from inline to remote
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentMoveConfigResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentMoveConfigResponse'
  /ng/api/environmentsV2/{environmentIdentifier}/update-git-metadata:
    put:
      tags:
        - Environments
      summary: Update git-metadata in remote environment Entity
      description: >-
        Update git-metadata in remote environment and returns the identifier of
        updated environment
      operationId: updateEnvironmentGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: path
          description: Environment Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns identifier of updated environment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGitUpdateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentGitUpdateResponse'
  /ng/api/environmentsV2/upsert:
    put:
      tags:
        - Environments
      summary: Upsert an Environment by identifier
      operationId: upsertEnvironmentV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Environment to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/EnvironmentRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Environment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnvironmentResponse'
  /ng/api/infrastructures:
    get:
      tags:
        - Infrastructures
      summary: Gets Infrastructure list
      operationId: getInfrastructureList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: infraIdentifiers
          in: query
          description: List of InfrastructureIds
          schema:
            type: array
            items:
              type: string
        - name: deploymentType
          in: query
          schema:
            type: string
            enum:
              - Kubernetes
              - NativeHelm
              - Ssh
              - WinRm
              - ServerlessAwsLambda
              - AzureWebApp
              - AzureFunction
              - CustomDeployment
              - ECS
              - Elastigroup
              - TAS
              - Asg
              - GoogleCloudFunctions
              - AwsLambda
              - AWS_SAM
              - SERVICE_YAML_V1_TYPE
              - GoogleCloudRun
              - Salesforce
        - name: deploymentTemplateIdentifier
          in: query
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment
          schema:
            type: string
        - name: versionLabel
          in: query
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Specifies the sorting criteria of the list. Elements in the list
            should be of the format "property,order" or "property". Order can
            take values ASC or DESC for alphabetical ascending and descending
            orders respectively. If the order is not specified, it takes ASC by
            default
          schema:
            type: array
            items:
              type: string
        - name: serviceRefs
          in: query
          description: >-
            list of service refs required to fetch infrastructures scoped to
            these service refs
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Infrastructure for an Environment
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInfrastructureResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInfrastructureResponse
    put:
      tags:
        - Infrastructures
      summary: Update an Infrastructure by identifier
      operationId: updateInfrastructure
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Infrastructure to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InfrastructureRequest'
            examples:
              Update:
                summary: Sample Infrastructure update payload
                description: Sample Infrastructure payload
                value:
                  name: infrastructure
                  identifier: infrastructureId
                  description: infrastructure description
                  tags: {}
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  environmentRef: environmentId
                  deploymentType: Kubernetes
                  type: KubernetesDirect
                  yaml: |
                    infrastructureDefinition:
                      name: infrastructure
                      identifier: infrastructure
                      description: infrastructure description
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      environmentRef: environmentId
                      deploymentType: Kubernetes
                      type: KubernetesDirect
                      spec:
                        connectorRef: connectorId
                        namespace: namespace
                        releaseName: release-<+INFRA_KEY>
                      allowSimultaneousDeployments: false
          application/yaml:
            schema:
              $ref: '#/components/schemas/InfrastructureRequest'
            examples:
              Update:
                summary: Sample Infrastructure update payload
                description: Sample Infrastructure payload
                value:
                  name: infrastructure
                  identifier: infrastructureId
                  description: infrastructure description
                  tags: {}
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  environmentRef: environmentId
                  deploymentType: Kubernetes
                  type: KubernetesDirect
                  yaml: |
                    infrastructureDefinition:
                      name: infrastructure
                      identifier: infrastructure
                      description: infrastructure description
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      environmentRef: environmentId
                      deploymentType: Kubernetes
                      type: KubernetesDirect
                      spec:
                        connectorRef: connectorId
                        namespace: namespace
                        releaseName: release-<+INFRA_KEY>
                      allowSimultaneousDeployments: false
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Infrastructure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
    post:
      tags:
        - Infrastructures
      summary: Create an Infrastructure in an Environment
      operationId: createInfrastructure
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Infrastructure to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InfrastructureRequest'
            examples:
              Create:
                summary: Sample Infrastructure create payload
                description: Sample Infrastructure payload
                value:
                  name: infrastructure
                  identifier: infrastructureId
                  description: infrastructure description
                  tags: {}
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  environmentRef: environmentId
                  deploymentType: Kubernetes
                  type: KubernetesDirect
                  yaml: |
                    infrastructureDefinition:
                      name: infrastructure
                      identifier: infrastructure
                      description: infrastructure description
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      environmentRef: environmentId
                      deploymentType: Kubernetes
                      type: KubernetesDirect
                      spec:
                        connectorRef: connectorId
                        namespace: namespace
                        releaseName: release-<+INFRA_KEY>
                      allowSimultaneousDeployments: false
          application/yaml:
            schema:
              $ref: '#/components/schemas/InfrastructureRequest'
            examples:
              Create:
                summary: Sample Infrastructure create payload
                description: Sample Infrastructure payload
                value:
                  name: infrastructure
                  identifier: infrastructureId
                  description: infrastructure description
                  tags: {}
                  orgIdentifier: default
                  projectIdentifier: projectIdentifier
                  environmentRef: environmentId
                  deploymentType: Kubernetes
                  type: KubernetesDirect
                  yaml: |
                    infrastructureDefinition:
                      name: infrastructure
                      identifier: infrastructure
                      description: infrastructure description
                      tags: {}
                      orgIdentifier: default
                      projectIdentifier: projectIdentifier
                      environmentRef: environmentId
                      deploymentType: Kubernetes
                      type: KubernetesDirect
                      spec:
                        connectorRef: connectorId
                        namespace: namespace
                        releaseName: release-<+INFRA_KEY>
                      allowSimultaneousDeployments: false
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Infrastructure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
  /ng/api/infrastructures/{infraIdentifier}:
    get:
      tags:
        - Infrastructures
      summary: Gets an Infrastructure by identifier
      operationId: getInfrastructure
      parameters:
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: envId
          required: true
          schema:
            type: string
        - name: deleted
          in: query
          description: Specify whether Infrastructure is deleted or not
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Infrastructure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureResponse'
    delete:
      tags:
        - Infrastructures
      summary: Delete an Infrastructure by identifier
      operationId: deleteInfrastructure
      parameters:
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Infrastructure is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/infrastructures/import:
    post:
      tags:
        - Infrastructures
      summary: Import and Create Infrastructure from Git Repository
      operationId: importInfrastructure
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier for the entity
          required: true
          schema:
            type: string
        - name: infraIdentifier
          in: query
          description: Infrastructure Identifier for the entity
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          required: true
          schema:
            type: string
        - name: isForceImport
          in: query
          description: isForceImport
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Import and Create Infrastructure from Git Repository and saves a
            record for it in Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureImportResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfrastructureImportResponse'
  /ng/api/infrastructures/move-config/{infraIdentifier}:
    post:
      tags:
        - Infrastructures
      summary: Move infra YAML from inline to remote
      operationId: moveInfraConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: envId
          required: true
          schema:
            type: string
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
            default: false
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          required: true
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
              - REMOTE_TO_INLINE
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Move infra YAML from inline to remote
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfraMoveConfigResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInfraMoveConfigResponse'
  /ng/api/infrastructures/{infraIdentifier}/update-git-metadata:
    put:
      tags:
        - Infrastructures
      summary: Update git-metadata in remote infrastructure Entity
      description: >-
        Update git-metadata in remote infrastructure and returns the identifier
        of updated infrastructure
      operationId: updateInfrastructureGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: envId
          required: true
          schema:
            type: string
        - name: infraIdentifier
          in: path
          description: Infrastructure Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns identifier of updated infrastructure
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOInfrastructureGitUpdateResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOInfrastructureGitUpdateResponse
  /ng/api/invites/{inviteId}:
    put:
      tags:
        - Invite
      summary: Resend invite
      description: Resend the invite email
      operationId: updateInvite
      parameters:
        - name: inviteId
          in: path
          description: Invite id
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Updated Invite
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Invite'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Invite'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Invite
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOptionalInvite'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOptionalInvite'
    delete:
      tags:
        - Invite
      summary: Delete Invite
      description: Delete an Invite by Identifier
      operationId: deleteInvite
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: inviteId
          in: path
          description: Invite Id
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns either empty value of Deleted Invite
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOptionalInvite'
  /ng/api/invites/invite:
    get:
      tags:
        - Invite
      summary: Get Invite
      description: Gets an Invite by either Invite Id or JwtToken
      operationId: getInvite
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: inviteId
          in: query
          description: Invitation Id
          schema:
            type: string
        - name: jwttoken
          in: query
          description: JWT Token
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the Invite having either InviteId or JwtToken as specified
            in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInvite'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInvite'
  /ng/api/invites:
    get:
      tags:
        - Invite
      summary: List Invites
      description: List all the Invites for a Project or Organization
      operationId: getInvites
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Invites
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseInvite'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseInvite'
  /ng/api/invites/aggregate:
    post:
      tags:
        - Invite
      summary: Get pending users
      description: List of all the pending users in a scope
      operationId: getPendingUsersAggregated
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search term
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACLAggregateFilter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/ACLAggregateFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Pending Invites
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseInvite'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseInvite'
  /ng/api/oidc/access-token/aws/webidentity-session-access:
    post:
      tags:
        - Oidc-Access-Token
      summary: Generate an OIDC IAM Role Credential for AWS
      operationId: generateOidcIAMRoleCredentialForAws
      requestBody:
        description: Details of AWS WebIdentity credential
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AwsOidcCredentialsRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AwsOidcCredentialsRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Generate an OIDC IAM Role Credential for AWS
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAwsOidcCredentialResponseDto'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAwsOidcCredentialResponseDto'
  /ng/api/oidc/access-token/gcp/service-account-access:
    post:
      tags:
        - Oidc-Access-Token
      summary: Generates an OIDC Service Account Access Token for GCP
      operationId: getOidcServiceAccountAccessTokenForGcp
      requestBody:
        description: Details of GCP Workload Identity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GcpOidcAccessTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/GcpOidcAccessTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC Service Account Access Token response
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOGcpOidcServiceAccountAccessTokenResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOGcpOidcServiceAccountAccessTokenResponse
  /ng/api/oidc/access-token/azure:
    post:
      tags:
        - Oidc-Access-Token
      summary: Exchanges an OIDC token for Azure credentials
      operationId: exchangeOidcTokenForAzureCredentials
      requestBody:
        description: Azure token exchange request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureOidcCredentialExchangeRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AzureOidcCredentialExchangeRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns Azure credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAzureOidcCredentialResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAzureOidcCredentialResponseDTO'
  /ng/api/oidc/access-token/gcp/workload-access:
    post:
      tags:
        - Oidc-Access-Token
      summary: Generates an OIDC Workload Access Token for GCP
      operationId: OidcWorkloadAccessTokenResponse
      requestBody:
        description: Details of GCP Workload Identity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GcpOidcAccessTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/GcpOidcAccessTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC Workload Access Token response
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOOidcWorkloadAccessTokenResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOOidcWorkloadAccessTokenResponse
  /ng/api/oidc/id-token/azure:
    post:
      tags:
        - Oidc-ID-Token
      summary: Generates an OIDC ID Token for Azure
      operationId: generateOidcIdTokenForAzure
      requestBody:
        description: contains oidc field for azure
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureOidcTokenRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AzureOidcTokenRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC ID Token as a JWT
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/oidc/id-token/gcp:
    post:
      tags:
        - Oidc-ID-Token
      summary: Generates an OIDC ID Token for GCP
      operationId: generateOidcIdTokenForGcp
      requestBody:
        description: Details of GCP Workload Identity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GcpOidcTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/GcpOidcTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC ID Token as a JWT
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/oidc/id-token/gcp-v2:
    post:
      tags:
        - Oidc-ID-Token
      summary: Generates an OIDC ID Token for GCP
      operationId: generateOidcIdTokenForGcp_1
      requestBody:
        description: Details of GCP Workload Identity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GcpOidcTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/GcpOidcTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC ID Token as a JWT
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/oidc/id-token/custom:
    post:
      tags:
        - Oidc-ID-Token
      summary: Generate a custom OIDC ID Token
      operationId: generateCustomOidcIdToken
      requestBody:
        description: contains oidc fields for custom token
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomOidcIdTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/CustomOidcIdTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC ID Token as a JWT
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/oidc/id-token/aws:
    post:
      tags:
        - Oidc-ID-Token
      summary: Generates an OIDC ID Token for AWS
      operationId: generateOidcIdTokenForAws
      requestBody:
        description: contains oidc fields for aws
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AwsOidcTokenRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AwsOidcTokenRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns OIDC ID Token as a JWT
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/oidc/account/{accountId}/.wellknown/jwks:
    get:
      tags:
        - OIDC
      summary: Get the openid configuration for Harness
      operationId: getHarnessOpenIdConfig
      parameters:
        - name: accountId
          in: path
          description: >-
            This is the accountIdentifier for the account for which the JWKS
            public key needs to be exposed.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This gets the openid configuration for Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JwksPublicKeysDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/JwksPublicKeysDTO'
  /ng/api/oidc/account/{accountId}/.well-known/openid-configuration:
    get:
      tags:
        - OIDC
      summary: Get the openid configuration for Harness
      operationId: getHarnessOpenIdConfig_1
      parameters:
        - name: accountId
          in: path
          description: >-
            This is the accountIdentifier for the account for which the JWKS
            public key needs to be exposed.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This gets the openid configuration for Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OidcConfiguration'
            application/yaml:
              schema:
                $ref: '#/components/schemas/OidcConfiguration'
  /ng/api/provider:
    get:
      tags:
        - Provider
      summary: Gets Provider list
      operationId: getProviderList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Services for a Project
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListGetProviderResponse'
    post:
      tags:
        - Provider
      summary: Create a Provider
      operationId: createProvider
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Provider to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProviderRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Provider
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCreateProviderResponse'
  /ng/api/provider/{providerIdentifier}:
    get:
      tags:
        - Provider
      summary: Gets a Provider by identifier
      operationId: getProvider
      parameters:
        - name: providerIdentifier
          in: path
          description: Provider Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Provider
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGetProviderResponse'
    put:
      tags:
        - Provider
      summary: Update a Provider by identifier
      operationId: updateProvider
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: providerIdentifier
          in: path
          description: Provider Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Provider to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateProviderRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Provider
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUpdateProviderResponse'
    delete:
      tags:
        - Provider
      summary: Delete a Provider by identifier
      operationId: deleteProvider
      parameters:
        - name: providerIdentifier
          in: path
          description: Provider Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Provider is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTODeleteProviderResponse'
  /ng/api/apikey:
    get:
      tags:
        - ApiKey
      summary: >-
        Fetches the list of API Keys corresponding to the request's filter
        criteria.
      operationId: listApiKeys_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of API Key IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of API keys.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListApiKey'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListApiKey'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOListApiKey'
    post:
      tags:
        - ApiKey
      summary: Creates an API key
      operationId: createApiKey
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiKey'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ApiKey'
          text/plain:
            schema:
              $ref: '#/components/schemas/ApiKey'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
  /ng/api/apikey/{identifier}:
    put:
      tags:
        - ApiKey
      summary: Updates API Key for the provided ID
      operationId: updateApiKey
      parameters:
        - name: identifier
          in: path
          description: This is the API key ID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiKey'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ApiKey'
          text/plain:
            schema:
              $ref: '#/components/schemas/ApiKey'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKey'
    delete:
      tags:
        - ApiKey
      summary: Deletes the API Key corresponding to the provided ID.
      operationId: deleteApiKey
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: Id of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: This is the API key ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns a boolean value. The value is True if the API Key is
            successfully deleted, else it is False.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/apikey/aggregate/{identifier}:
    get:
      tags:
        - ApiKey
      summary: Fetches the API Keys details corresponding to the provided ID and Scope.
      operationId: getAggregatedApiKey
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: This is the API key ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKeyAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKeyAggregate'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOApiKeyAggregate'
  /ng/api/apikey/aggregate:
    get:
      tags:
        - ApiKey
      summary: >-
        Fetches the list of Aggregated API Keys corresponding to the request's
        filter criteria.
      operationId: listApiKeys
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of API Key IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter API keys. Any API key having the
            specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Paginated list of Aggregated API keys.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseApiKeyAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseApiKeyAggregate'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseApiKeyAggregate'
  /ng/api/host-validation:
    post:
      tags:
        - ValidateHost
      summary: Validates hosts connectivity credentials
      operationId: validateHosts
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Secret Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: List of SSH or WinRm hosts to validate, and Delegate tags (optional)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostValidationParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns validation response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListHostValidationDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListHostValidationDTO'
      deprecated: true
  /ng/api/keys:
    get:
      tags:
        - Keys
      summary: List SSH Keys
      description: Lists all the SSH Keys matching the given search criteria.
      operationId: ListAggregatedSSHKeys
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Aggregated SSH Keys.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseKey'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseKey'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseKey'
    post:
      tags:
        - Keys
      summary: Create SSH Key
      description: Creates a SSHKey for the given API Key Type.
      operationId: createSSHKey
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Key'
          application/yaml:
            schema:
              $ref: '#/components/schemas/Key'
          text/plain:
            schema:
              $ref: '#/components/schemas/Key'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created SSHKey details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/keys/{identifier}:
    delete:
      tags:
        - Keys
      summary: Delete a Key
      description: Deletes a Key
      operationId: deleteKey
      parameters:
        - name: identifier
          in: path
          description: Token ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Key is deleted successfully and false if the
            Key is not deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/hosts/filter:
    post:
      tags:
        - Hosts
      summary: >-
        Gets the list of hosts filtered by accountIdentifier and
        connectorIdentifier
      operationId: filterHostsByConnector
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Connector Identifier
          schema:
            type: string
      requestBody:
        description: Details of the filters applied
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostFilterDTO'
          text/yaml:
            schema:
              $ref: '#/components/schemas/HostFilterDTO'
          text/html:
            schema:
              $ref: '#/components/schemas/HostFilterDTO'
          text/plain:
            schema:
              $ref: '#/components/schemas/HostFilterDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the list of hosts filtered by accountIdentifier and
            connectorIdentifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseHostDTO'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseHostDTO'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseHostDTO'
  /ng/api/hosts/validate:
    post:
      tags:
        - Hosts
      summary: Validates hosts connectivity credentials
      operationId: validateHosts_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Secret Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: List of SSH or WinRm hosts to validate, and Delegate tags (optional)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HostValidationParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns validation response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListHostValidationDTO'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListHostValidationDTO'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOListHostValidationDTO'
  /ng/api/secret-managers/meta-data:
    post:
      tags:
        - Secret Managers
      summary: Gets the metadata of Secret Manager
      operationId: getMetadata
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details required for the creation of the Secret Manager
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretManagerMetadataRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretManagerMetadataRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the metadata of Secret Manager
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretManagerMetadataDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretManagerMetadataDTO'
  /ng/api/v2/secrets:
    get:
      tags:
        - Secrets
      summary: >-
        Fetches the list of Secrets corresponding to the request's filter
        criteria.
      operationId: listSecretsV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of Secret IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
        - name: type
          in: query
          description: Type of Secret whether it is SecretFile, SecretText or SSH key
          schema:
            type: string
            enum:
              - SecretFile
              - SecretText
              - SSHKey
              - WinRmCredentials
        - name: searchTerm
          in: query
          description: >-
            Filter Secrets based on name, Identifier and tags by this search
            term
          schema:
            type: string
        - name: types
          in: query
          description: >-
            Add multiple secret types like SecretFile, SecretText or SSH key to
            criteria
          schema:
            type: array
            items:
              type: string
              enum:
                - SecretFile
                - SecretText
                - SSHKey
                - WinRmCredentials
        - name: source_category
          in: query
          description: >-
            Source Category like CLOUD_PROVIDER, SECRET_MANAGER, CLOUD_COST,
            ARTIFACTORY, CODE_REPO, MONITORING or TICKETING
          schema:
            type: string
            enum:
              - CLOUD_PROVIDER
              - SECRET_MANAGER
              - CLOUD_COST
              - ARTIFACTORY
              - CODE_REPO
              - MONITORING
              - TICKETING
              - DATABASE
              - COMMUNICATION
              - DOCUMENTATION
              - ML_OPS
        - name: includeSecretsFromEverySubScope
          in: query
          description: >-
            Specify whether or not to include secrets from all the sub-scopes of
            the given Scope
          schema:
            type: boolean
            default: false
        - name: includeAllSecretsAccessibleAtScope
          in: query
          description: >-
            Specify whether or not to include all the Secrets accessible at the
            scope. For eg if set as true, at the Project scope we will get org
            and account Secrets also in the response
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: secretManagerIdentifiers
          in: query
          description: Specify the secret managers whose secrets should be listed
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Secrets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
      deprecated: true
    post:
      tags:
        - Secrets
      summary: Creates a Secret at given Scope
      operationId: postSecret
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: privateSecret
          in: query
          description: >-
            This is a boolean value to specify if the Secret is Private. The
            default value is False.
          schema:
            type: boolean
            default: false
      requestBody:
        description: Details required to create the Secret
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretRequestWrapper'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretRequestWrapper'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Secret details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
  /ng/api/v2/secrets/files:
    post:
      tags:
        - Secrets
      summary: Creates a Secret File
      operationId: postSecretFileV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: privateSecret
          in: query
          description: >-
            This is a boolean value to specify if the Secret is Private. The
            default value is False.
          schema:
            type: boolean
            default: false
      requestBody:
        content:
          multipart/form-data:
            schema:
              required:
                - file
              type: object
              properties:
                file:
                  type: object
                  description: This is the encrypted Secret File that needs to be uploaded.
                spec:
                  type: string
                  description: Specification of Secret file
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Secret file
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
  /ng/api/v2/secrets/yaml:
    post:
      tags:
        - Secrets
      summary: Creates a secret via YAML
      operationId: postSecretViaYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: privateSecret
          in: query
          description: >-
            This is a boolean value to specify if the Secret is Private. The
            default value is False.
          schema:
            type: boolean
            default: false
      requestBody:
        description: Details required to create the Secret
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretRequestWrapper'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Secret details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
      deprecated: true
  /ng/api/v2/secrets/{identifier}:
    get:
      tags:
        - Secrets
      summary: Get the Secret by ID and Scope
      operationId: getSecretV2
      parameters:
        - name: identifier
          in: path
          description: Secret ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the Secret with the requested ID and Scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
    put:
      tags:
        - Secrets
      summary: Updates the Secret by ID and Scope
      operationId: putSecret
      parameters:
        - name: identifier
          in: path
          description: Secret ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretRequestWrapper'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Secret
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
    delete:
      tags:
        - Secrets
      summary: Deletes Secret by ID and Scope
      operationId: deleteSecretV2
      parameters:
        - name: identifier
          in: path
          description: Secret ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the secret is successfully deleted and false if
            it is not deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/v2/secrets/list/secrets:
    post:
      tags:
        - Secrets
      summary: >-
        Fetches the list of Secrets corresponding to the request's filter
        criteria.
      operationId: listSecretsV4
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretFilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Secrets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
  /ng/api/v2/secrets/list:
    post:
      tags:
        - Secrets
      summary: >-
        Fetches the list of Secrets corresponding to the request's filter
        criteria.
      operationId: listSecretsV3
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: secretManagerIdentifiers
          in: query
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretResourceFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretResourceFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Secrets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSecretResponse'
  /ng/api/v2/secrets/files/{identifier}:
    put:
      tags:
        - Secrets
      summary: Updates the Secret file by ID and Scope
      operationId: putSecretFileV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Secret ID
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: object
                  description: This is the encrypted Secret File that needs to be uploaded.
                spec:
                  type: string
                  description: Specification of Secret file
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Secret file details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
  /ng/api/v2/secrets/{identifier}/yaml:
    put:
      tags:
        - Secrets
      summary: Updates the Secret by ID and Scope via YAML
      operationId: putSecretViaYaml
      parameters:
        - name: identifier
          in: path
          description: Secret ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Details of Secret to create
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretRequestWrapper'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Secret details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretResponse'
  /ng/api/v2/secrets/validate:
    post:
      tags:
        - Secrets
      summary: Validates Secret with the provided ID and Scope
      operationId: validateSecret
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Secret ID
          schema:
            type: string
      requestBody:
        description: Details of the Secret type
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretValidationMetaData'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SecretValidationMetaData'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns validation response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretValidationResult'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSecretValidationResult'
  /ng/api/v2/secrets/validateUniqueIdentifier/{identifier}:
    get:
      tags:
        - Secrets
      summary: Checks whether the identifier is unique or not
      operationId: validateSecretIdentifierIsUnique
      parameters:
        - name: identifier
          in: path
          description: Secret Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Identifier is unique and false if the
            Identifier is not unique.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/organizations:
    get:
      tags:
        - Organization
      summary: List Organizations by filter
      description: List all Organizations matching the given search criteria.
      operationId: getOrganizationList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of Org Key IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Organizations. Any Organization having
            the specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns list of Organizations
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseOrganizationResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseOrganizationResponse
    post:
      tags:
        - Organization
      summary: Create an Organization
      description: Creates a new Organization.
      operationId: postOrganization
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Organization to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/OrganizationRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Organization details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
  /ng/api/organizations/{identifier}:
    get:
      tags:
        - Organization
      summary: List Organization details
      description: Lists Organization details using an Account and Organization ID.
      operationId: getOrganization
      parameters:
        - name: identifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the Organization details with the passed Account Identifier
            and Org Identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
    put:
      tags:
        - Organization
      summary: Update an Organization
      description: Updates Organization settings.
      operationId: putOrganization
      parameters:
        - name: If-Match
          in: header
          description: Version number of the Organization
          schema:
            type: string
        - name: identifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Organization. Please provide values for all
          fields, not just the fields you are updating
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/OrganizationRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Organization details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOrganizationResponse'
    delete:
      tags:
        - Organization
      summary: Delete an Organization
      description: Deletes Organization for the given ID.
      operationId: deleteOrganization
      parameters:
        - name: If-Match
          in: header
          description: Version number of the Organization
          schema:
            type: string
        - name: identifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Organization is deleted successfully and
            false if the Organization is not deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/projects:
    get:
      tags:
        - Project
      summary: List all Projects for a user
      description: >-
        Lists all Projects the user is a member of by using the user's API key
        token.
      operationId: getProjectList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: hasModule
          in: query
          description: >-
            This boolean specifies whether to Filter Projects which has the
            Module of type passed in the module type parameter or to Filter
            Projects which does not has the Module of type passed in the module
            type parameter
          schema:
            type: boolean
            default: true
        - name: identifiers
          in: query
          description: >-
            This is the list of Project IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
        - name: moduleType
          in: query
          description: Filter Projects by module type
          schema:
            type: string
            enum:
              - CD
              - CI
              - CV
              - CF
              - CE
              - STO
              - CHAOS
              - AI_TEST_AUTOMATION
              - SRM
              - IACM
              - CET
              - IDP
              - CODE
              - SSCA
              - CORE
              - PMS
              - TEMPLATESERVICE
              - RMG
              - GOVERNANCE
              - PLATFORM
              - SEI
              - HAR
              - DevopsEssentials
              - FME
              - DBOPS
              - AI_AGENT_MLOPS
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Projects. Any Project having the
            specified string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: onlyFavorites
          in: query
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Projects
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseProjectResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseProjectResponse'
    post:
      tags:
        - Project
      summary: Create a Project
      description: Creates a new Harness Project.
      operationId: postProject
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: >-
            Organization identifier for the Project. If left empty, the Project
            is created under Default Organization
          schema:
            type: string
            default: default
      requestBody:
        description: Details of the Project to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectRequest1'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ProjectRequest1'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Project
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
  /ng/api/projects/{identifier}:
    get:
      tags:
        - Project
      summary: List Project details
      description: Lists a Project's details for the given ID.
      operationId: getProject
      parameters:
        - name: identifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: >-
            Organization identifier for the project. If left empty, Default
            Organization is assumed
          schema:
            type: string
            default: default
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns Project having ID as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
    put:
      tags:
        - Project
      summary: Update a Project
      description: Updates Project details for the given ID.
      operationId: putProject
      parameters:
        - name: If-Match
          in: header
          description: Version number of Project
          schema:
            type: string
        - name: identifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: >-
            Organization identifier for the Project. If left empty, Default
            Organization is assumed
          schema:
            type: string
            default: default
      requestBody:
        description: >-
          This is the updated Project. Please provide values for all fields, not
          just the fields you are updating
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectRequest1'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ProjectRequest1'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns updated Project details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOProjectResponse'
    delete:
      tags:
        - Project
      summary: Delete a Project
      description: Deletes a Project corresponding to the given ID.
      operationId: deleteProject
      parameters:
        - name: If-Match
          in: header
          description: Version number of Project
          schema:
            type: string
        - name: identifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: >-
            This is the Organization Identifier for the Project. By default, the
            Default Organization's Identifier is considered.
          schema:
            type: string
            default: default
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Project is deleted successfully and false if
            the Project is not deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/projects/list:
    get:
      tags:
        - Project
      summary: List user's project with support to filter by multiple organizations
      operationId: getProjectListWithMultiOrgFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifiers
          in: query
          description: List of Organization Identifiers for the Entities.
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
        - name: hasModule
          in: query
          description: >-
            This boolean specifies whether to Filter Projects which has the
            Module of type passed in the module type parameter or to Filter
            Projects which does not has the Module of type passed in the module
            type parameter
          schema:
            type: boolean
            default: true
        - name: identifiers
          in: query
          description: >-
            This is the list of Project Identifiers. Details specific to these
            IDs would be fetched.
          schema:
            type: array
            items:
              type: string
        - name: moduleType
          in: query
          description: Filter Projects by module type
          schema:
            type: string
            enum:
              - CD
              - CI
              - CV
              - CF
              - CE
              - STO
              - CHAOS
              - AI_TEST_AUTOMATION
              - SRM
              - IACM
              - CET
              - IDP
              - CODE
              - SSCA
              - CORE
              - PMS
              - TEMPLATESERVICE
              - RMG
              - GOVERNANCE
              - PLATFORM
              - SEI
              - HAR
              - DevopsEssentials
              - FME
              - DBOPS
              - AI_AGENT_MLOPS
        - name: searchTerm
          in: query
          description: Filter Projects by searching for this word in Name, Id, and Tag
          schema:
            type: string
        - name: onlyFavorites
          in: query
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Projects
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseProjectResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseProjectResponse'
  /ng/api/token:
    post:
      tags:
        - Token
      summary: Create a Token
      description: Creates a Token for the given API Key Type.
      operationId: createToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Token'
          application/yaml:
            schema:
              $ref: '#/components/schemas/Token'
          text/plain:
            schema:
              $ref: '#/components/schemas/Token'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created Token details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/token/{identifier}:
    put:
      tags:
        - Token
      summary: Update a Token
      description: Updates a Token for the given API Key Type.
      operationId: updateToken
      parameters:
        - name: identifier
          in: path
          description: Token ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Token'
          application/yaml:
            schema:
              $ref: '#/components/schemas/Token'
          text/plain:
            schema:
              $ref: '#/components/schemas/Token'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns updated Token details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
    delete:
      tags:
        - Token
      summary: Delete a Token
      description: Deletes a Token for the given API Key Type.
      operationId: deleteToken
      parameters:
        - name: identifier
          in: path
          description: Token ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: apiKeyIdentifier
          in: query
          description: API key ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Token is deleted successfully and false if
            the Token is not deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/token/aggregate:
    get:
      tags:
        - Token
      summary: List all Tokens
      description: Lists all the Tokens matching the given search criteria.
      operationId: listAggregatedTokens
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          schema:
            type: string
        - name: apiKeyIdentifier
          in: query
          description: API key ID
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of Token IDs. Details specific to these IDs would
            be fetched.
          schema:
            type: array
            items:
              type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Tokens. Any Token having the specified
            string in its Name, ID and Tag would be filtered.
          schema:
            type: string
        - name: includeOnlyActiveTokens
          in: query
          description: >-
            Boolean value to indicate whether to list only active tokens or all
            tokens. By default, all tokens will be listed.
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Aggregated Tokens.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseTokenAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseTokenAggregate'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseTokenAggregate'
  /ng/api/token/rotate/{identifier}:
    post:
      tags:
        - Token
      summary: Rotate a Token
      description: Rotates a Token for the given API Key Type.
      operationId: rotateToken
      parameters:
        - name: identifier
          in: path
          description: Token Identifier
          required: true
          schema:
            type: string
        - name: rotateTimestamp
          in: query
          description: Time stamp till when the old token will be valid post rotation.
          schema:
            type: integer
            format: int64
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: apiKeyType
          in: query
          description: >-
            This is the API Key type like Personal Access Key or Service Account
            Key.
          required: true
          schema:
            type: string
            enum:
              - USER
              - SERVICE_ACCOUNT
              - SSH_KEY
        - name: parentIdentifier
          in: query
          description: ID of API key's Parent Service Account
          required: true
          schema:
            type: string
        - name: apiKeyIdentifier
          in: query
          description: API key ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the rotated Token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ng/api/token/validate:
    post:
      tags:
        - Token
      summary: Validate a Token
      description: Validate a Token for the given account.
      operationId: validateToken
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Validate a Token for the given account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOToken'
  /ng/api/user-groups/{identifier}/member/{userIdentifier}:
    get:
      tags:
        - User Group
      summary: Check user membership
      description: Check if the user is part of the user group in an account/org/project
      operationId: getMember
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: userIdentifier
          in: path
          description: Identifier of the user
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Return true/false based on whether the user is part of the user
            group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
    put:
      tags:
        - User Group
      summary: Add user to User Group
      description: Add a user to the user group in an account/org/project
      operationId: putMember
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: userIdentifier
          in: path
          description: Identifier of the user
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated user group after user addition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
    delete:
      tags:
        - User Group
      summary: Remove user from User Group
      description: Remove a user from the user group in an account/org/project
      operationId: deleteMember
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: userIdentifier
          in: path
          description: Identifier of the user
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated user group after user removal
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
  /ng/api/user-groups/copy:
    put:
      tags:
        - User Group
      summary: Copy User Group
      description: Copy a User Group in an account/org/project
      operationId: copyUserGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: groupIdentifier
          in: query
          description: groupIdentifier
          required: true
          schema:
            type: string
      requestBody:
        description: List of scopes
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Scope1'
          application/yaml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Scope1'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns whether the copy was successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
      deprecated: true
  /ng/api/user-groups:
    get:
      tags:
        - User Group
      summary: List the User Groups in an account/org/project
      description: List User Groups
      operationId: getUserGroupList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search filter which matches by user group name/identifier
          schema:
            type: string
        - name: filterType
          in: query
          schema:
            type: string
            enum:
              - INCLUDE_INHERITED_GROUPS
              - EXCLUDE_INHERITED_GROUPS
              - INCLUDE_CHILD_SCOPE_GROUPS
              - INCLUDE_PARENT_SCOPE_GROUPS
            default: EXCLUDE_INHERITED_GROUPS
        - name: ssoGroupId
          in: query
          schema:
            uniqueItems: true
            type: array
            items:
              type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the paginated list of the User Groups.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserGroup'
    put:
      tags:
        - User Group
      summary: Update User Group
      description: Update a User Group in an account/org/project
      operationId: putUserGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: User Group entity with the updates
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroup'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroup'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully updated User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
    post:
      tags:
        - User Group
      summary: Create User Group
      description: Create a User Group in an account/org/project
      operationId: postUserGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: User Group entity to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroup'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroup'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully created User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
  /ng/api/user-groups/{identifier}:
    get:
      tags:
        - User Group
      summary: Get User Group
      description: Get a User Group in an account/org/project
      operationId: getUserGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully fetched User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
    delete:
      tags:
        - User Group
      summary: Delete a User Group in an account/org/project
      description: Delete User Group
      operationId: deleteUserGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully deleted User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroup'
  /ng/api/user-groups/{identifier}/scopes:
    get:
      tags:
        - User Group
      summary: Get Inheriting Child Scopes
      description: List the Child Scopes inheriting this User Group
      operationId: getInheritingChildScopeList
      parameters:
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of the child scopes inheriting this User Group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListScopeName'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListScopeName'
  /ng/api/user-groups/{identifier}/users:
    post:
      tags:
        - User Group
      summary: List users in User Group
      description: List the users in a User Group in an account/org/project
      operationId: getUserListInUserGroup
      parameters:
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: Filter users based on multiple parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the paginated list of the users in a User Group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserMetadata'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserMetadata'
  /ng/api/user-groups/{userGroupId}/link/ldap/{ldapId}:
    put:
      tags:
        - User Group
      summary: Link LDAP Group to the User Group to an account/org/project
      operationId: linkUserGroupToLDAP
      parameters:
        - name: userGroupId
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: ldapId
          in: path
          description: LDAP entity identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: LDAP Link Group Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LdapLinkGroupRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/LdapLinkGroupRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated User Group after linking LDAP Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
  /ng/api/user-groups/{userGroupId}/link/oidc/{providerId}:
    put:
      tags:
        - User Group
      summary: Link OIDC Group to the User Group in an account/org/project
      operationId: linkUserGroupToOIDC
      parameters:
        - name: userGroupId
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: providerId
          in: path
          description: OIDC Group entity identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: OIDC Link Group Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OidcLinkGroupRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/OidcLinkGroupRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated User Group after linking OIDC Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
  /ng/api/user-groups/{userGroupId}/link/saml/{samlId}:
    put:
      tags:
        - User Group
      summary: Link SAML Group to the User Group in an account/org/project
      operationId: linkUserGroupToSAML
      parameters:
        - name: userGroupId
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: samlId
          in: path
          description: Saml Group entity identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Saml Link Group Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SamlLinkGroupRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/SamlLinkGroupRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated User Group after linking SAML Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
  /ng/api/user-groups/batch:
    post:
      tags:
        - User Group
      summary: List User Groups by filter
      description: >-
        List the User Groups selected by a filter in an account/org/project.
        This api supports maximum of 10K User Group in response.
      operationId: getBatchUsersGroupList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: User Group Filter
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroupFilter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the list of the user groups selected by a filter in a User
            Group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListUserGroup'
  /ng/api/user-groups/filter:
    post:
      tags:
        - User Group
      summary: Get filtered User Groups
      description: List the User Groups selected by a filter in an account/org/project
      operationId: getFilteredUserGroupsList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: User Group Filter
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroupFilter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the list of the user groups selected by a filter in a User
            Group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserGroup'
  /ng/api/user-groups/{userGroupId}/unlink:
    put:
      tags:
        - User Group
      summary: Unlink SSO Group from the User Group in an account/org/project
      operationId: unlinkUserGroupfromSSO
      parameters:
        - name: userGroupId
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
        - name: retainMembers
          in: query
          description: Retain currently synced members of the user group
          schema:
            type: boolean
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated User Group after unlinking SSO Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseUserGroup'
  /ng/api/v2/user-groups:
    put:
      tags:
        - User Group
      summary: Update User Group
      description: Update a User Group in an account/org/project
      operationId: putUserGroupV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: User Group entity with the updates
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupRequestV2'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroupRequestV2'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully updated User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
    post:
      tags:
        - User Group
      summary: Create User Group
      description: Create a User Group in an account/org/project
      operationId: postUserGroupV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: User Group entity to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupRequestV2'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserGroupRequestV2'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully created User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
  /ng/api/v2/user-groups/{identifier}:
    get:
      tags:
        - User Group
      summary: Get User Group
      description: Get a User Group in an account/org/project
      operationId: getUserGroupV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier of the user group
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the successfully fetched User Group
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserGroupResponseV2'
  /ng/api/servicesV2/check-allowed-values:
    post:
      tags:
        - Services
      summary: Check for allowed-values in the Services
      operationId: checkAllowedValuesInServices
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of services using allowed-values
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAllowedValuesUsagesInternalDTO'
  /ng/api/servicesV2:
    get:
      tags:
        - Services
      summary: Gets Service list
      operationId: getServiceList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            maximum: 1000
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: serviceIdentifiers
          in: query
          description: List of ServicesIds
          schema:
            type: array
            items:
              type: string
        - name: sort
          in: query
          description: >-
            Specifies the sorting criteria of the list. Like sorting based on
            the last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
        - name: type
          in: query
          schema:
            type: string
            enum:
              - Kubernetes
              - NativeHelm
              - Ssh
              - WinRm
              - ServerlessAwsLambda
              - AzureWebApp
              - AzureFunction
              - CustomDeployment
              - ECS
              - Elastigroup
              - TAS
              - Asg
              - GoogleCloudFunctions
              - AwsLambda
              - AWS_SAM
              - SERVICE_YAML_V1_TYPE
              - GoogleCloudRun
              - Salesforce
        - name: gitOpsEnabled
          in: query
          schema:
            type: boolean
        - name: deploymentTemplateIdentifier
          in: query
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment
          schema:
            type: string
        - name: versionLabel
          in: query
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment
          schema:
            type: string
        - name: includeAllServicesAccessibleAtScope
          in: query
          description: Specify true if all accessible Services are to be included
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Services for a Project
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseServiceResponse'
    put:
      tags:
        - Services
      summary: Update a Service by identifier
      operationId: updateServiceV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: Details of the Service to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service update payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service update payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
    post:
      tags:
        - Services
      summary: Create a Service
      operationId: createServiceV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Service to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service create payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service create payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
  /ng/api/servicesV2/batch:
    post:
      tags:
        - Services
      summary: Create Services
      operationId: createServicesV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Details of the Services to be created, maximum 1000 services can be
          created.
        content:
          application/json:
            schema:
              maxItems: 1000
              minItems: 0
              type: array
              items:
                $ref: '#/components/schemas/ServiceRequest'
          application/yaml:
            schema:
              maxItems: 1000
              minItems: 0
              type: array
              items:
                $ref: '#/components/schemas/ServiceRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Services
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseServiceResponse'
  /ng/api/servicesV2/{serviceIdentifier}:
    get:
      tags:
        - Services
      summary: Gets a Service by identifier
      operationId: getServiceV2
      parameters:
        - name: serviceIdentifier
          in: path
          description: Service Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: deleted
          in: query
          description: Specify whether Service is deleted or not
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
    delete:
      tags:
        - Services
      summary: Delete a Service by identifier
      operationId: deleteServiceV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: serviceIdentifier
          in: path
          description: Service Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Service is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/servicesV2/k8s/command-flags:
    get:
      tags:
        - Services
      summary: Retrieving the list of Kubernetes Command Options
      operationId: k8sCmdFlags
      parameters:
        - name: serviceSpecType
          in: query
          required: true
          schema:
            type: string
        - name: stepType
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Kubernetes Command Options
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetK8sCommandFlagType'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetK8sCommandFlagType'
  /ng/api/servicesV2/kustomize/command-flags:
    get:
      tags:
        - Services
      summary: Retrieving the list of Kustomize Command Flags
      operationId: kustomizeCmdFlags
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Kustomize Command Flags
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetKustomizeCommandFlagType'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetKustomizeCommandFlagType'
  /ng/api/servicesV2/plugin-info:
    get:
      tags:
        - Services
      summary: Get Plugin Info at Service
      operationId: getPluginInfo
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Runtime and Serverless Version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPluginInfoResponseDto'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPluginInfoResponseDto'
  /ng/api/servicesV2/hooks/actions:
    get:
      tags:
        - Services
      summary: Retrieving the list of actions available for service hooks
      operationId: hookActions
      parameters:
        - name: serviceSpecType
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of actions available for service hooks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetServiceHookAction'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetServiceHookAction'
  /ng/api/servicesV2/import:
    post:
      tags:
        - Services
      summary: Get Service YAML from Git Repository
      operationId: importService
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          description: Service Identifier for the entity
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          required: true
          schema:
            type: string
        - name: isForceImport
          in: query
          description: isForceImport
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Fetches Service YAML from Git Repository and saves a record for it
            in Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceImportResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceImportResponse'
  /ng/api/servicesV2/list/access:
    get:
      tags:
        - Services
      summary: Gets Service Access list
      operationId: getServiceAccessList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: serviceIdentifiers
          in: query
          description: List of ServicesIds
          schema:
            maxItems: 1000
            minItems: 0
            type: array
            items:
              type: string
        - name: sort
          in: query
          description: >-
            Specifies the sorting criteria of the list. Like sorting based on
            the last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
        - name: type
          in: query
          schema:
            type: string
            enum:
              - Kubernetes
              - NativeHelm
              - Ssh
              - WinRm
              - ServerlessAwsLambda
              - AzureWebApp
              - AzureFunction
              - CustomDeployment
              - ECS
              - Elastigroup
              - TAS
              - Asg
              - GoogleCloudFunctions
              - AwsLambda
              - AWS_SAM
              - SERVICE_YAML_V1_TYPE
              - GoogleCloudRun
              - Salesforce
        - name: gitOpsEnabled
          in: query
          schema:
            type: boolean
        - name: deploymentTemplateIdentifier
          in: query
          description: >-
            The Identifier of deployment template if infrastructure is of type
            custom deployment
          schema:
            type: string
        - name: versionLabel
          in: query
          description: >-
            The version label of deployment template if infrastructure is of
            type custom deployment
          schema:
            type: string
        - name: deploymentMetadataYaml
          in: query
          schema:
            type: string
        - name: includeAllServicesAccessibleAtScope
          in: query
          description: Specify true if all accessible Services are to be included
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Services for a Project that are accessible
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListServiceResponse'
  /ng/api/servicesV2/move-config/{serviceIdentifier}:
    post:
      tags:
        - Services
      summary: Move Service YAML from inline to remote
      operationId: moveServiceConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: serviceIdentifier
          in: path
          description: Service Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
            default: false
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
              - REMOTE_TO_INLINE
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Fetches Service YAML from Harness DB and creates a remote entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceMoveConfigResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceMoveConfigResponse'
  /ng/api/servicesV2/{serviceIdentifier}/update-git-metadata:
    put:
      tags:
        - Services
      summary: Update git-metadata in remote service Entity
      description: >-
        Update git-metadata in remote service and returns the identifier of
        updated service
      operationId: updateServiceGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: serviceIdentifier
          in: path
          description: Service Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns identifier of updated Service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceGitUpdateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceGitUpdateResponse'
  /ng/api/servicesV2/upsert:
    put:
      tags:
        - Services
      summary: Upsert a Service by identifier
      operationId: upsertServiceV2
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Service to be upserted
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service upsert payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceRequest'
            examples:
              Create:
                summary: Sample Service upsert payload
                description: Sample Service payload
                value:
                  name: serviceName
                  identifier: serviceId
                  tags: {}
                  projectIdentifier: s
                  orgIdentifier: default
                  yaml: |
                    service:
                      name: serviceName
                      identifier: serviceId
                      tags: {}
                      serviceDefinition:
                        spec:
                          artifacts:
                            primary:
                              primaryArtifactRef: artifactName
                              sources:
                                - spec:
                                    connectorRef: connectorId
                                    imagePath: imagePath
                                    tag: tagId
                                  identifier: artifactName
                                  type: DockerRegistry
                        type: Kubernetes
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceResponse'
  /ng/api/overrides:
    put:
      tags:
        - Overrides
      summary: Update an Override Entity
      operationId: updateOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Override to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OverrideRequest'
            examples:
              Update:
                summary: Sample Override update request
                description: Sample Override Request
                value:
                  orgIdentifier: defaultOrgId
                  projectIdentifier: defaultProjId
                  environmentRef: defaultEnvRef
                  serviceRef: defaultServiceRef
                  infraIdentifier: defaultInfraId
                  type: ENV_SERVICE_OVERRIDE
                  yaml: |
                    overrides:
                      variables:
                        - name: v1
                          type: String
                          value: val1
                      manifests:
                        - manifest:
                            identifier: manifest1
                            type: K8sManifest
                            spec:
                              store:
                                type: Github
                                spec:
                                  connectorRef: abcdConnector
                                  gitFetchType: Branch
                                  paths:
                                    - files1
                                  repoName: abcd
                                  branch: master
                              skipResourceVersioning: false
                      configFiles:
                        - configFile:
                            identifier: configFile1
                            spec:
                              store:
                                type: Harness
                                spec:
                                  files:
                                    - /abcd
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Override
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverrideResponse'
    post:
      tags:
        - Overrides
      summary: Create an Override Entity
      operationId: createOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Override to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OverrideRequest'
            examples:
              Create:
                summary: Sample Override update request
                description: Sample Override Request
                value:
                  orgIdentifier: defaultOrgId
                  projectIdentifier: defaultProjId
                  environmentRef: defaultEnvRef
                  serviceRef: defaultServiceRef
                  infraIdentifier: defaultInfraId
                  type: ENV_SERVICE_OVERRIDE
                  yaml: |
                    overrides:
                      variables:
                        - name: v1
                          type: String
                          value: val1
                      manifests:
                        - manifest:
                            identifier: manifest1
                            type: K8sManifest
                            spec:
                              store:
                                type: Github
                                spec:
                                  connectorRef: abcdConnector
                                  gitFetchType: Branch
                                  paths:
                                    - files1
                                  repoName: abcd
                                  branch: master
                              skipResourceVersioning: false
                      configFiles:
                        - configFile:
                            identifier: configFile1
                            spec:
                              store:
                                type: Harness
                                spec:
                                  files:
                                    - /abcd
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Override
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverrideResponse'
  /ng/api/overrides/{identifier}:
    get:
      tags:
        - Overrides
      summary: Gets Overrides by Identifier
      operationId: getOverridesViaIdentifier
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Override Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the Override by the identifier and scope derived from
            accountId, org identifier and project identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverrideResponse'
    delete:
      tags:
        - Overrides
      summary: Delete a Override entity
      operationId: deleteOverride
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Override Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Override is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/overrides/move-config:
    post:
      tags:
        - Overrides
      summary: Move Override YAML from inline to remote or remote to inline
      operationId: OverrideMoveConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
            default: false
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
              - REMOTE_TO_INLINE
        - name: environmentRef
          in: query
          description: Environment Reference for the Entity.
          schema:
            type: string
        - name: serviceRef
          in: query
          description: Service Reference for Entity
          schema:
            type: string
        - name: infraIdentifier
          in: query
          description: infraIdentifier
          schema:
            type: string
        - name: serviceOverridesType
          in: query
          description: Type of the override which is based on source of overrides
          schema:
            type: string
            enum:
              - ENV_GLOBAL_OVERRIDE
              - ENV_SERVICE_OVERRIDE
              - INFRA_GLOBAL_OVERRIDE
              - INFRA_SERVICE_OVERRIDE
              - CLUSTER_GLOBAL_OVERRIDE
              - CLUSTER_SERVICE_OVERRIDE
        - name: identifier
          in: query
          description: Service Overrides Identifier for Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Fetches Override YAML from Harness DB and creates a remote entity or
            Fetches Override YAML from remote repository and creates a inline
            entity
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOServiceOverrideMoveConfigResponse
  /ng/api/overrides/update-git-metadata:
    put:
      tags:
        - Overrides
      summary: Update git-metadata in remote Override Entity
      description: >-
        Update git-metadata in remote Override and returns the identifier of
        updated Override
      operationId: updateOverrideGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Service Overrides Identifier for Entity.
          schema:
            type: string
        - name: environmentRef
          in: query
          description: Environment Reference for the Entity.
          schema:
            type: string
        - name: serviceRef
          in: query
          description: Service Reference for Entity
          schema:
            type: string
        - name: infraIdentifier
          in: query
          description: infraIdentifier
          schema:
            type: string
        - name: serviceOverridesType
          in: query
          description: Type of the override which is based on source of overrides
          schema:
            type: string
            enum:
              - ENV_GLOBAL_OVERRIDE
              - ENV_SERVICE_OVERRIDE
              - INFRA_GLOBAL_OVERRIDE
              - INFRA_SERVICE_OVERRIDE
              - CLUSTER_GLOBAL_OVERRIDE
              - CLUSTER_SERVICE_OVERRIDE
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns identifier and associated environmentRef, serviceRef and
            infraIdentifier of updated Override
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOServiceOverrideGitUpdateResponse
  /ng/api/serviceOverrides:
    put:
      tags:
        - ServiceOverrides
      summary: Update an ServiceOverride Entity
      operationId: updateServiceOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Service Override to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverrideRequestV2'
            examples:
              Update:
                summary: Sample Service Override update request
                description: Sample Service Override Request
                value:
                  orgIdentifier: defaultOrgId
                  projectIdentifier: defaultProjId
                  environmentRef: defaultEnvRef
                  serviceRef: defaultServiceRef
                  infraIdentifier: defaultInfraId
                  type: ENV_SERVICE_OVERRIDE
                  spec:
                    variables:
                      - name: v1
                        type: String
                        value: val1
                    manifests:
                      - manifest:
                          identifier: manifest1
                          type: K8sManifest
                          spec:
                            store:
                              type: Github
                              spec:
                                connectorRef: abcdConnector
                                gitFetchType: Branch
                                paths:
                                  - files1
                                repoName: abcd
                                branch: master
                            skipResourceVersioning: false
                    configFiles:
                      - configFile:
                          identifier: configFile1
                          spec:
                            store:
                              type: Harness
                              spec:
                                files:
                                  - /abcd
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated ServiceOverride
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceOverrideResponseV2'
    post:
      tags:
        - ServiceOverrides
      summary: Create an ServiceOverride Entity
      operationId: createServiceOverride
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Service Override to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceOverrideRequestV2'
            examples:
              Create:
                summary: Sample Service Override update request
                description: Sample Service Override Request
                value:
                  orgIdentifier: defaultOrgId
                  projectIdentifier: defaultProjId
                  environmentRef: defaultEnvRef
                  serviceRef: defaultServiceRef
                  infraIdentifier: defaultInfraId
                  type: ENV_SERVICE_OVERRIDE
                  spec:
                    variables:
                      - name: v1
                        type: String
                        value: val1
                    manifests:
                      - manifest:
                          identifier: manifest1
                          type: K8sManifest
                          spec:
                            store:
                              type: Github
                              spec:
                                connectorRef: abcdConnector
                                gitFetchType: Branch
                                paths:
                                  - files1
                                repoName: abcd
                                branch: master
                            skipResourceVersioning: false
                    configFiles:
                      - configFile:
                          identifier: configFile1
                          spec:
                            store:
                              type: Harness
                              spec:
                                files:
                                  - /abcd
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created ServiceOverride
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceOverrideResponseV2'
  /ng/api/serviceOverrides/{identifier}:
    get:
      tags:
        - ServiceOverrides
      summary: Gets Service Overrides by Identifier
      operationId: getServiceOverrides
      parameters:
        - name: identifier
          in: path
          description: Service Overrides Identifier for Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the Service Override by the identifier and scope derived
            from accountId, org identifier and project identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceOverrideResponseV2'
    delete:
      tags:
        - ServiceOverrides
      summary: Delete a ServiceOverride entity
      operationId: deleteServiceOverride_1
      parameters:
        - name: identifier
          in: path
          description: Service Overrides Identifier for Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Service Override is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/serviceOverrides/move-config:
    post:
      tags:
        - ServiceOverrides
      summary: Move ServiceOverride YAML from inline to remote or remote to inline
      operationId: serviceOverrideMoveConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
            default: false
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
              - REMOTE_TO_INLINE
        - name: environmentRef
          in: query
          description: Environment Reference for the Entity.
          schema:
            type: string
        - name: serviceRef
          in: query
          description: Service Reference for Entity
          schema:
            type: string
        - name: infraIdentifier
          in: query
          description: infraIdentifier
          schema:
            type: string
        - name: serviceOverridesType
          in: query
          description: Type of the override which is based on source of overrides
          schema:
            type: string
            enum:
              - ENV_GLOBAL_OVERRIDE
              - ENV_SERVICE_OVERRIDE
              - INFRA_GLOBAL_OVERRIDE
              - INFRA_SERVICE_OVERRIDE
              - CLUSTER_GLOBAL_OVERRIDE
              - CLUSTER_SERVICE_OVERRIDE
        - name: identifier
          in: query
          description: Service Overrides Identifier for Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Fetches ServiceOverride YAML from Harness DB and creates a remote
            entity or Fetches ServiceOverride YAML from remote repository and
            creates a inline entity
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOServiceOverrideMoveConfigResponse
  /ng/api/serviceOverrides/update-git-metadata:
    put:
      tags:
        - ServiceOverrides
      summary: Update git-metadata in remote ServiceOverride Entity
      description: >-
        Update git-metadata in remote ServiceOverride and returns the identifier
        of updated ServiceOverride
      operationId: updateServiceOverrideGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          description: Service Overrides Identifier for Entity.
          schema:
            type: string
        - name: environmentRef
          in: query
          description: Environment Reference for the Entity.
          schema:
            type: string
        - name: serviceRef
          in: query
          description: Service Reference for Entity
          schema:
            type: string
        - name: infraIdentifier
          in: query
          description: infraIdentifier
          schema:
            type: string
        - name: serviceOverridesType
          in: query
          description: Type of the override which is based on source of overrides
          schema:
            type: string
            enum:
              - ENV_GLOBAL_OVERRIDE
              - ENV_SERVICE_OVERRIDE
              - INFRA_GLOBAL_OVERRIDE
              - INFRA_SERVICE_OVERRIDE
              - CLUSTER_GLOBAL_OVERRIDE
              - CLUSTER_SERVICE_OVERRIDE
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestInfo'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns identifier and associated environmentRef, serviceRef and
            infraIdentifier of updated ServiceOverride
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOServiceOverrideGitUpdateResponse
  /ng/api/smtpConfig/{identifier}:
    delete:
      tags:
        - SMTP
      summary: Delete Smtp Config by identifier
      operationId: deleteSmtpConfig
      parameters:
        - name: identifier
          in: path
          description: Config identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/smtpConfig:
    get:
      tags:
        - SMTP
      summary: Gets Smtp config by accountId
      operationId: getSmtpConfig
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: returns the SmtpConfig having accountId as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONgSmtp'
    put:
      tags:
        - SMTP
      summary: Updates the Smtp Config
      operationId: updateSmtp
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NgSmtp'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns updated config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONgSmtp'
    post:
      tags:
        - SMTP
      summary: Creates SMTP config
      operationId: createSmtpConfig
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NgSmtp'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns created config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONgSmtp'
  /ng/api/smtpConfig/validate-connectivity:
    post:
      tags:
        - SMTP
      summary: Tests the config's connectivity by sending a test email
      operationId: validateConnectivity
      parameters:
        - name: identifier
          in: query
          description: Attribute uuid
          required: true
          schema:
            type: string
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: to
          in: query
          required: true
          schema:
            type: string
        - name: subject
          in: query
          required: true
          schema:
            type: string
        - name: body
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns validation Result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOValidationResult'
  /ng/api/smtpConfig/validateName:
    post:
      tags:
        - SMTP
      summary: Checks whether other connectors exist with the same name
      operationId: validateName
      parameters:
        - name: name
          in: query
          description: The name of Config
          schema:
            type: string
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns validation Result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOValidationResult'
  /ng/api/tas/organizations:
    get:
      tags:
        - tas
      summary: Return the Tas organizations
      operationId: getTasOrganizations
      parameters:
        - name: connectorRef
          in: query
          description: Identifier for tas connector
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: envId
          in: query
          description: Environment Identifier for the Entity.
          schema:
            type: string
        - name: infraDefinitionId
          in: query
          description: Infrastructure Definition Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Return the Tas organizations
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ng/api/tas/space:
    get:
      tags:
        - tas
      summary: Return the Tas spaces
      operationId: getTasSpaces
      parameters:
        - name: connectorRef
          in: query
          description: Identifier for tas connector
          required: true
          schema:
            type: string
        - name: organization
          in: query
          description: organization for tas
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Return the Tas spaces
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ng/api/tas/v2/space:
    get:
      tags:
        - tas
      summary: Return the Tas spaces
      operationId: getTasSpacesV2
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: organization
          in: query
          schema:
            type: string
        - name: envId
          in: query
          description: Environment Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: infraDefinitionId
          in: query
          description: Infrastructure Definition Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Return the Tas spaces
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ng/api/user/add-user-to-groups/{userId}:
    put:
      tags:
        - User
      summary: Add user to user groups
      description: >-
        Adds the user to the specified user group IDs passed in the body and
        removes all other user groups for user except harness managed user
        groups
      operationId: addUserToUserGroups
      parameters:
        - name: userId
          in: path
          description: User Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserAddToUserGroupDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserAddToUserGroupDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Adds the user to specified user group IDs and removes all other user
            groups for user except harness managed user groups
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/user/users:
    post:
      tags:
        - User
      summary: Add user(s) to scope
      operationId: addUsers
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUsersDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AddUsersDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns list of added users to a given scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAddUsersResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAddUsersResponse'
  /ng/api/user/password:
    put:
      tags:
        - User
      summary: Change user password
      description: Updates the User password
      operationId: changeUserPassword
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasswordChange'
          application/yaml:
            schema:
              $ref: '#/components/schemas/PasswordChange'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns whether the operation is successful or not with readable
            response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPasswordChangeResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPasswordChangeResponse'
  /ng/api/user/last-admin:
    get:
      tags:
        - User
      summary: Check if user is last admin
      description: Check whether the user is last admin at scope or not
      operationId: checkIfLastAdmin
      parameters:
        - name: userId
          in: query
          description: User identifier
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns Boolean status whether the user is last admin at scope or
            not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/user/disable-two-factor-auth:
    put:
      tags:
        - User
      summary: Disable two factor authentication
      description: Disables two-factor-auth for an user in an account
      operationId: disableTTwoFactorAuth
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns user information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
  /ng/api/user/endImpersonation/{userId}:
    post:
      tags:
        - User
      summary: end impersonation session for user
      operationId: endImpersonation
      parameters:
        - name: userId
          in: path
          description: User ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: end impersonate User
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/user/aggregate/{userId}:
    get:
      tags:
        - User
      summary: Get detailed user information
      description: >-
        Returns the user metadata along with rolesAssignments by userId and
        scope
      operationId: getAggregatedUser
      parameters:
        - name: userId
          in: path
          description: user Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the user metadata along with rolesAssignments by userId and
            scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserAggregate'
  /ng/api/user/aggregate:
    post:
      tags:
        - User
      summary: Get list of users
      description: >-
        List of all the user's metadata along with rolesAssignments who have
        access to given scope
      operationId: getAggregatedUsers
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search term
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACLAggregateFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ACLAggregateFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns list of all the user's metadata along with rolesAssignments
            who have access to given scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserAggregate'
  /ng/api/user/two-factor-auth/{authMechanism}:
    get:
      tags:
        - User
      summary: Gets Two Factor Auth Settings
      description: >-
        Gets two factor authentication settings information of the current
        logged in user
      operationId: getTwoFactorAuthSettings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: authMechanism
          in: path
          description: >-
            This is the authentication mechanism for the logged-in User.
            Two-Factor Authentication settings will be fetched for this
            mechanism.
          required: true
          schema:
            type: string
            enum:
              - TOTP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns current logged in user's two factor authentication info
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTwoFactorAuthSettingsInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTwoFactorAuthSettingsInfo'
  /ng/api/user/currentUser:
    get:
      tags:
        - User
      summary: Get Current User Info
      description: Gets current logged in User information
      operationId: getCurrentUserInfo
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns current logged in user info
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
  /ng/api/user/batch:
    post:
      tags:
        - User
      summary: Get users list
      description: Get list of user's for a given scope
      operationId: getUsers
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of user's Metadata for a given scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserMetadata'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseUserMetadata'
  /ng/api/user/impersonate/{userId}:
    post:
      tags:
        - User
      summary: impersonate User
      operationId: impersonateUser
      parameters:
        - name: userId
          in: path
          description: User ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImpersonateDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ImpersonateDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: impersonate User
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/user/{userId}:
    put:
      tags:
        - User
      summary: Update User
      description: Updates the User information
      operationId: updateUserInfo_1
      parameters:
        - name: userId
          in: path
          description: User Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserInfoUpdateDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserInfoUpdateDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the update User information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
    delete:
      tags:
        - User
      summary: Remove user from scope
      description: Remove user as the collaborator from the scope
      operationId: removeUser
      parameters:
        - name: userId
          in: path
          description: user Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/user/reset-two-factor-auth/{userId}:
    get:
      tags:
        - User
      summary: Reset two factor authorization
      description: Reset Two-Factor authorization.
      operationId: reset2fa
      parameters:
        - name: userId
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Successfully reset two factor authorization for an account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseBoolean'
  /ng/api/user/unlock-user/{userId}:
    put:
      tags:
        - User
      summary: Unlock user
      description: unlock user in a given scope
      operationId: unlockUser
      parameters:
        - name: userId
          in: path
          description: user Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns user information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
  /ng/api/user/enable-two-factor-auth:
    put:
      tags:
        - User
      summary: Enable two factor authentication
      description: Enables two-factor-auth for an user in an account
      operationId: enableTwoFactorAuth
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TwoFactorAuthSettingsInfo'
          application/yaml:
            schema:
              $ref: '#/components/schemas/TwoFactorAuthSettingsInfo'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns user information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
  /ng/api/user:
    put:
      tags:
        - User
      summary: Update User
      description: Updates the User information
      operationId: updateUserInfo
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserInfo'
          application/yaml:
            schema:
              $ref: '#/components/schemas/UserInfo'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the update User information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOUserInfo'
  /ng/api/variables:
    get:
      tags:
        - Variables
      summary: Fetches the list of Variables.
      operationId: getVariableList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Variables. Any Variable having the
            specified string in its Name or ID would be filtered.
          schema:
            type: string
        - name: includeVariablesFromEverySubScope
          in: query
          description: >-
            Specify whether or not to include all the Variables accessible at
            the scope. For eg if set as true, at the Project scope we will get
            org and account Variable also in the response.
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Variable.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseVariableResponseDTO
    put:
      tags:
        - Variables
      summary: Updates the Variable.
      operationId: updateVariable
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the variable to update.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VariableRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Variable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOVariableResponseDTO'
    post:
      tags:
        - Variables
      summary: Creates a Variable.
      operationId: createVariable
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Variable to create.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VariableRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Variable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOVariableResponseDTO'
  /ng/api/variables/{identifier}:
    get:
      tags:
        - Variables
      summary: Get the Variable by scope identifiers and variable identifier.
      operationId: getVariable
      parameters:
        - name: identifier
          in: path
          description: Variable ID
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the variable with the requested scope identifiers and
            variable identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOVariableResponseDTO'
    delete:
      tags:
        - Variables
      summary: Deletes Variable by ID.
      operationId: deleteVariable
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Variable ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Variable is deleted successfully and false if
            the Variable is not deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/variables/list:
    post:
      tags:
        - Variables
      summary: Get list of  Variable by scope identifiers and variable identifiers.
      operationId: listVariable
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Variables. Any Variable having the
            specified string in its Name or ID would be filtered.
          schema:
            type: string
        - name: includeVariablesFromEverySubScope
          in: query
          description: >-
            Specify whether or not to include all the Variables accessible at
            the scope. For eg if set as true, at the Project scope we will get
            org and account Variable also in the response.
          schema:
            type: boolean
            default: false
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: Specifies the variables to list
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VariableListRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the variable with the requested scope identifiers and
            variable identifier.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseVariableResponseDTO
  /ng/api/freeze:
    post:
      tags:
        - Freeze CRUD
      summary: Create a Freeze
      operationId: createFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Freeze YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Freeze YAML
                description: Sample Freeze YAML
                value: |-
                  freeze:
                    name: Sample Freeze
                    identifier: Sample_Freeze
                    entityConfigs:
                      - name: Rule 1
                        entities:
                          - type: Service
                            filterType: All
                          - type: EnvType
                            filterType: All
                    status: Disabled
                    orgIdentifier: org1
                    projectIdentifier: Project1
                    windows:
                      - timeZone: Asia/Calcutta
                        startTime: 2023-02-20 11:28 AM
                        duration: 30m
          application/yaml:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Freeze YAML
                description: Sample Freeze YAML
                value: |-
                  freeze:
                    name: Sample Freeze
                    identifier: Sample_Freeze
                    entityConfigs:
                      - name: Rule 1
                        entities:
                          - type: Service
                            filterType: All
                          - type: EnvType
                            filterType: All
                    status: Disabled
                    orgIdentifier: org1
                    projectIdentifier: Project1
                    windows:
                      - timeZone: Asia/Calcutta
                        startTime: 2023-02-20 11:28 AM
                        duration: 30m
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
  /ng/api/freeze/{freezeIdentifier}:
    get:
      tags:
        - Freeze CRUD
      summary: Get a Freeze
      operationId: getFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: freezeIdentifier
          in: path
          description: Freeze Identifier.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeDetailedResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeDetailedResponse'
    put:
      tags:
        - Freeze CRUD
      summary: Updates a Freeze
      operationId: updateFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: freezeIdentifier
          in: path
          description: Freeze Identifier.
          required: true
          schema:
            type: string
      requestBody:
        description: Freeze YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Freeze YAML
                description: Sample Freeze YAML
                value: |-
                  freeze:
                    name: Sample Freeze
                    identifier: Sample_Freeze
                    entityConfigs:
                      - name: Rule 1
                        entities:
                          - type: Service
                            filterType: All
                          - type: EnvType
                            filterType: All
                    status: Disabled
                    orgIdentifier: org1
                    projectIdentifier: project1
                    windows:
                      - timeZone: Asia/Calcutta
                        startTime: 2023-02-20 11:28 AM
                        duration: 33m
                    description: ""
          application/yaml:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Freeze YAML
                description: Sample Freeze YAML
                value: |-
                  freeze:
                    name: Sample Freeze
                    identifier: Sample_Freeze
                    entityConfigs:
                      - name: Rule 1
                        entities:
                          - type: Service
                            filterType: All
                          - type: EnvType
                            filterType: All
                    status: Disabled
                    orgIdentifier: org1
                    projectIdentifier: project1
                    windows:
                      - timeZone: Asia/Calcutta
                        startTime: 2023-02-20 11:28 AM
                        duration: 33m
                    description: ""
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
    delete:
      tags:
        - Freeze CRUD
      summary: Delete a Freeze
      operationId: deleteFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: freezeIdentifier
          in: path
          description: Freeze Identifier.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Freeze Config
  /ng/api/freeze/delete:
    post:
      tags:
        - Freeze CRUD
      summary: Delete many Freezes
      operationId: deleteManyFreezes
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: List of Freeze Identifiers
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
          application/yaml:
            schema:
              type: array
              items:
                type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponseWrapperDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponseWrapperDTO'
  /ng/api/freeze/list:
    post:
      tags:
        - Freeze CRUD
      summary: Gets Freeze list
      operationId: getFreezeList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: This contains details of Freeze filters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FreezeFilterPropertiesDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/FreezeFilterPropertiesDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Freeze for a Project
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseFreezeSummaryResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseFreezeSummaryResponse
  /ng/api/freeze/getFrozenExecutionDetails:
    get:
      tags:
        - Freeze CRUD
      summary: Get list of freeze acted on a frozen execution
      operationId: getFrozenExecutionDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns list of freeze acted on a frozen execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFrozenExecutionDetails'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFrozenExecutionDetails'
  /ng/api/freeze/getGlobalFreeze:
    get:
      tags:
        - Freeze CRUD
      summary: Get Global Freeze Yaml
      operationId: getGlobalFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Get Global Freeze Yaml
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeDetailedResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeDetailedResponse'
  /ng/api/freeze/manageGlobalFreeze:
    post:
      tags:
        - Freeze CRUD
      summary: Create Global Freeze
      operationId: createGlobalFreeze
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Freeze YAML
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Global Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponse'
  /ng/api/freeze/updateFreezeStatus:
    post:
      tags:
        - Freeze CRUD
      summary: Update the status of Freeze to active or inactive
      operationId: updateFreezeStatus
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: status
          in: query
          description: Freeze YAML
          required: true
          schema:
            type: string
            enum:
              - Enabled
              - Disabled
      requestBody:
        description: Comma seperated List of Freeze Identifiers
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
          application/yaml:
            schema:
              type: array
              items:
                type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the created Freeze Config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponseWrapperDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFreezeResponseWrapperDTO'
  /ng/api/gitops/clusters/{identifier}:
    get:
      tags:
        - Clusters
      summary: Get a Cluster linked to an environment by identifier
      operationId: getCluster
      parameters:
        - name: identifier
          in: path
          description: Cluster Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: environmentIdentifier
          required: true
          schema:
            type: string
        - name: agentIdentifier
          in: query
          description: agentIdentifier
          schema:
            type: string
        - name: deleted
          in: query
          description: Specify whether cluster is deleted or not
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: The saved Cluster
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterResponse'
    delete:
      tags:
        - Clusters
      summary: Unlink a cluster by identifier
      description: Unlink a cluster from an environment by identifier
      operationId: deleteCluster
      parameters:
        - name: identifier
          in: path
          description: Cluster Identifier for the entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: environmentIdentifier
          required: true
          schema:
            type: string
        - name: agentIdentifier
          in: query
          description: agentIdentifier
          schema:
            type: string
        - name: scope
          in: query
          description: Scope for the gitops cluster
          schema:
            type: string
            enum:
              - ACCOUNT
              - ORGANIZATION
              - PROJECT
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if the Cluster is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/gitops/clusters:
    get:
      tags:
        - Clusters
      summary: Gets cluster list
      description: Gets a list of GitOps clusters linked to an environment
      operationId: getClusterList
      parameters:
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          description: Environment Identifier of the clusters
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: identifiers
          in: query
          description: List of cluster identifiers
          schema:
            type: array
            items:
              type: string
        - name: sort
          in: query
          description: >-
            Specifies the sorting criteria of the list. Like sorting based on
            the last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
        - name: scope
          in: query
          description: >-
            Scope of linked clusters to be returned,
            ACCOUNT/ORGANIZATION/PROJECT. Returns all by default if this is not
            specified
          schema:
            type: string
            enum:
              - ACCOUNT
              - ORGANIZATION
              - PROJECT
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of cluster for a Project
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseClusterResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseClusterResponse'
    post:
      tags:
        - Clusters
      summary: Link a Cluster
      description: Link a GitOps cluster to an environment by identifier
      operationId: linkCluster
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the createCluster to be linked
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClusterRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ClusterRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the linked Cluster
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterResponse'
  /ng/api/gitops/clusters/batch:
    post:
      tags:
        - Clusters
      summary: Link Clusters
      operationId: linkClusters
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier of the environment.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Request body for linking clusters to an environment. Either provide a
          list of clusters in the clusters field OR use linkAllClusters=true
          with searchTerm to link all matching clusters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClusterLinkRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ClusterLinkRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the linked Clusters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterBatchResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterBatchResponse'
  /ng/api/gitops/clusters/batchunlink:
    post:
      tags:
        - Clusters
      summary: Unlink Clusters
      operationId: unlinkClustersInBatch
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Request body for unlinking clusters from an environment. Either
          provide a list of specific clusters OR use unlinkAllClusters=true to
          unlink all.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClusterUnlinkRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ClusterUnlinkRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns true if all the Clusters are deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterBatchResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOClusterBatchResponse'
  /ng/api/dashboard/getPipelineExecutionCount:
    get:
      tags:
        - Service Dashboard
      summary: >-
        Get pipeline execution count for a service with grouping support on
        artifact and deployment status
      operationId: pipelineExecutionCount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: serviceId
          in: query
          description: Service Identifier for the Entity.
          schema:
            type: string
        - name: startTime
          in: query
          description: Start Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          description: End Time of the Interval for the Entity.
          schema:
            type: integer
            format: int64
        - name: artifactPath
          in: query
          description: Image/ArtifactPath of the Artifact
          schema:
            type: string
        - name: artifactVersion
          in: query
          description: Version of the Artifact
          schema:
            type: string
        - name: artifact
          in: query
          description: >-
            Fully Qualified Name of the Artifact (artifactPath:artifactVersion).
            For eg. in case of docker it would be imagePath:tag
          schema:
            type: string
        - name: status
          in: query
          description: Deployment status
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns pipeline execution count for a service with grouping support
            on artifact and deployment status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionCountInfo'
  /ng/api/rollback/check:
    post:
      tags:
        - Rollback
      summary: Verification for rollback eligibility for service
      operationId: checkIfInstanceCanBeRolledBack
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostProdRollbackRequestDTO'
        required: true
      responses:
        default:
          description: Return details on whether rollback is allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPostProdRollbackCheckDTO'
  /ng/api/rollback/trigger:
    post:
      tags:
        - Rollback
      summary: Trigger the rollback for specific service
      operationId: triggerRollback
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostProdRollbackRequestDTO'
        required: true
      responses:
        default:
          description: Return status of triggered rollback
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPostProdRollbackResponseDTO'
  /ng/api/rollback/trigger/v2:
    post:
      tags:
        - Rollback
      summary: Trigger the rollback for specific service to an environment
      operationId: triggerRollbackV2
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RollbackRequestDTO'
        required: true
      responses:
        default:
          description: Return status of triggered rollback
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORollbackResponseDTO'
  /ng/api/serviceaccount:
    get:
      tags:
        - Service Account
      summary: Get Service Accounts
      description: Fetches list of Service Accounts for the given filter criteria.
      operationId: listServiceAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of Service Account IDs. Details specific to these
            IDs would be fetched.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the list of Service Accounts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListServiceAccount'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListServiceAccount'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOListServiceAccount'
    post:
      tags:
        - Service Account
      summary: Create a Service Account
      description: Creates a new Service Account.
      operationId: createServiceAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Details required to create Service Account
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
          text/plain:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns details of the created Service Account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
  /ng/api/serviceaccount/{identifier}:
    put:
      tags:
        - Service Account
      summary: Update a Service Account
      description: Updates details of the Service Account for the given Service Account ID.
      operationId: updateServiceAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Service Account ID
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the updated Service Account
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
          text/plain:
            schema:
              $ref: '#/components/schemas/ServiceAccount'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the updated Service Account details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccount'
    delete:
      tags:
        - Service Account
      summary: Delete a Service Account
      description: Deletes a Service Account corresponding to the given Service Account ID.
      operationId: deleteServiceAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Service Account ID
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            It returns true if the Service Account is deleted successfully and
            false if the Service Account is not deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/serviceaccount/aggregate/{identifier}:
    get:
      tags:
        - Service Account
      summary: Get Service Account In Scope
      description: Gets the list of Service Accounts in the given scope.
      operationId: getAggregatedServiceAccount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Service Account IDr
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the Service Account details corresponding to the specified
            Account Identifier and Service Account Identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccountAggregate'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccountAggregate'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceAccountAggregate'
  /ng/api/serviceaccount/{identifier}/scopes:
    get:
      tags:
        - Service Account
      summary: Get Inheriting Child Scopes
      description: List the Child Scopes inheriting this User Group
      operationId: getInheritingChildScopeListForServiceAccount
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Service Account
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Returns the list of the child scopes inheriting this Service
            Account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListScopeName'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListScopeName'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOListScopeName'
  /ng/api/serviceaccount/aggregate:
    get:
      tags:
        - Service Account
      summary: List aggregated Service Accounts
      description: >-
        Fetches the list of Aggregated Service Accounts corresponding to the
        request's filter criteria.
      operationId: listAggregatedServiceAccounts
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifiers
          in: query
          description: >-
            This is the list of Service Account IDs. Details specific to these
            IDs would be fetched.
          schema:
            type: array
            items:
              type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            This would be used to filter Service Accounts. Any Service Account
            having the specified string in its Name, ID and Tag would be
            filtered.
          schema:
            type: string
        - name: filterType
          in: query
          schema:
            type: string
            enum:
              - INCLUDE_INHERITED_SERVICE_ACCOUNTS
              - EXCLUDE_INHERITED_SERVICE_ACCOUNTS
              - INCLUDE_CHILD_SCOPE_SERVICE_ACCOUNTS
            default: EXCLUDE_INHERITED_SERVICE_ACCOUNTS
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns the paginated list of Aggregated Service Accounts.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceAccountAggregate
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceAccountAggregate
            text/plain:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceAccountAggregate
  /ng/api/canny/post:
    post:
      tags:
        - Canny
      summary: create Canny Post for given user
      operationId: createCannyPost
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              required:
                - boardId
                - details
                - email
                - name
                - title
              type: object
              properties:
                email:
                  type: string
                  description: emailId for user creating post
                name:
                  type: string
                  description: name of user creating post
                title:
                  type: string
                  description: title of the post
                details:
                  type: string
                  description: details of the post
                boardId:
                  type: string
                  description: boardId where post must be created
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: create Canny Post for given user
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyResponse'
  /ng/api/canny/postV2:
    post:
      tags:
        - Canny
      summary: create Canny Post for given user
      operationId: createCannyPostV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              required:
                - boardId
                - categoryId
                - details
                - email
                - name
                - title
              type: object
              properties:
                email:
                  type: string
                  description: emailId for user creating post
                name:
                  type: string
                  description: name of user creating post
                title:
                  type: string
                  description: title of the post
                details:
                  type: string
                  description: details of the post
                boardId:
                  type: string
                  description: boardId where post must be created
                categoryId:
                  type: string
                  description: categoryId where post must be created
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: create Canny Post for given user
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyResponse'
  /ng/api/canny/boards:
    get:
      tags:
        - Canny
      summary: Get a list of boards available on Canny
      operationId: getCannyBoards
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Get a list of boards available on Canny
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyBoardsResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyBoardsResponse'
  /ng/api/canny/categories:
    get:
      tags:
        - Canny
      summary: Get a list of categories available for a board in Canny
      operationId: getCannyBoards_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Get a list of categories available for a board in Canny
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyCategoriesResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOCannyCategoriesResponse'
  /ng/api/source-code-manager/{identifier}:
    put:
      tags:
        - Source Code Manager
      summary: >-
        Updates Source Code Manager Details with the given Source Code Manager
        Id
      operationId: updateSourceCodeManager
      parameters:
        - name: identifier
          in: path
          description: Source Code manager Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: This contains details of Source Code Manager
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SourceCodeManager'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            This contains details of the updated Source Code Manager for the
            specific Source Code Manager Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSourceCodeManager'
    delete:
      tags:
        - Source Code Manager
      summary: >-
        Deletes the Source Code Manager corresponding to the specified Source
        Code Manager Id
      operationId: deleteSourceCodeManager
      parameters:
        - name: identifier
          in: path
          description: Source Code manager Identifier
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: >-
            Successfully deleted Source Code Manager for the given Source Code
            Manager Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ng/api/source-code-manager:
    get:
      tags:
        - Source Code Manager
      summary: Lists Source Code Managers for the given account
      operationId: getSourceCodeManagers
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Paginated list of Source Code Managers of given account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSourceCodeManager'
    post:
      tags:
        - Source Code Manager
      summary: Creates Source Code Manager
      operationId: createSourceCodeManager
      requestBody:
        description: This contains details of Source Code Manager
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SourceCodeManager'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This contains details of the newly created Source Code Manager
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSourceCodeManager'
  /ng/api/webhook:
    post:
      tags:
        - Webhook Event Handler
      summary: Process event payload for webhook triggers.
      operationId: processWebhookEvent
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: webhookIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: Returns UUID of newly created webhook processing event.
          content:
            application/json:
              schema:
                type: object
            application/yaml:
              schema:
                type: object
            text/plain:
              schema:
                type: object
            application/octet-stream:
              schema:
                type: object
  /ng/api/settings/{identifier}:
    get:
      tags:
        - Setting
      summary: Get a setting value by identifier
      operationId: getSettingValue
      parameters:
        - name: identifier
          in: path
          description: This is the Identifier of the Entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This returns a setting value by the Identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSettingValueResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSettingValueResponseDTO'
  /ng/api/settings:
    get:
      tags:
        - Setting
      summary: Get list of settings under the specified category
      operationId: getSettingsList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: category
          in: query
          description: Category of the Setting.
          required: true
          schema:
            type: string
            enum:
              - CD
              - CI
              - CE
              - CV
              - CF
              - STO
              - CORE
              - PMS
              - TEMPLATESERVICE
              - GOVERNANCE
              - CHAOS
              - SCIM
              - GIT_EXPERIENCE
              - CONNECTORS
              - EULA
              - NOTIFICATIONS
              - SUPPLY_CHAIN_ASSURANCE
              - USER
              - MODULES_VISIBILITY
              - DBOPS
              - IR
        - name: group
          in: query
          description: Group Id of the setting
          schema:
            type: string
        - name: includeParentScopes
          in: query
          description: Flag to include the settings which only exist at the parent scopes
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This contains a list of Settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSettingResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSettingResponseDTO'
    put:
      tags:
        - Setting
      summary: Update settings
      operationId: updateSettingValue
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: List of update requests for settings
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/SettingRequestDTO'
          application/yaml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/SettingRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This updates the settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSettingUpdateResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSettingUpdateResponseDTO'
  /ng/api/user-settings/{identifier}:
    get:
      tags:
        - UserSetting
      summary: Get a user setting value by identifier
      operationId: getUserSettingValue
      parameters:
        - name: identifier
          in: path
          description: This is the Identifier of the Entity
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This returns a user setting value for given Identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSettingValueResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSettingValueResponseDTO'
  /ng/api/user-settings:
    get:
      tags:
        - UserSetting
      summary: Get list of user settings under the specified category
      operationId: getUserSettingsList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: group
          in: query
          description: Group Id of the setting
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This contains a list of user settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListUserSettingResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListUserSettingResponseDTO'
    put:
      tags:
        - UserSetting
      summary: Update user settings
      operationId: updateUserSettingValue
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: List of update requests for settings
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UserSettingRequestDTO'
          application/yaml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/UserSettingRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This updates the user settings
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListUserSettingUpdateResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListUserSettingUpdateResponseDTO
  /ng/api/user-settings/get-user-preferences:
    get:
      tags:
        - UserSetting
      summary: 'Get list of user preferences '
      operationId: getUserPreferencesList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error1'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Error1'
        default:
          description: This contains a list of user settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringString'
  /pipeline/api/filters:
    get:
      tags:
        - Filter
      summary: List Filters
      description: Lists Filters for the given criteria.
      operationId: PipelinegetFilterList
      parameters:
        - name: pageIndex
          in: query
          description: >-
            Page number of navigation. If left empty, default value of 0 is
            assumed.
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page. If left empty, default value of 100 is
            assumed
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
        - name: searchTerm
          in: query
          description: Text to search/filter the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the list of Filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
    put:
      tags:
        - Filter
      summary: Update a Filter
      description: Updates the filter for the given ID.
      operationId: PipelineupdateFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Filter. This should have all the fields not just
          the updated ones
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the updated Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    post:
      tags:
        - Filter
      summary: Create a Filter
      description: Creates a Filter.
      operationId: PipelinepostFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Connector to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns created Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
  /pipeline/api/filters/{identifier}:
    get:
      tags:
        - Filter
      summary: Return Filter Details
      description: Returns the settings of a filter for the given ID.
      operationId: PipelinegetFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns Filter having filterIdentifier as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    delete:
      tags:
        - Filter
      summary: Delete a Filter
      description: Deletes a filter for the given ID.
      operationId: PipelinedeleteFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/triggers/eventHistory/polledResponse/{triggerIdentifier}:
    get:
      tags:
        - TriggersEvents
      summary: Get all the polled response for a given trigger
      description: Get all the polled response for a given trigger
      operationId: polledResponseTriggerIdentifier
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the polled response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPollingInfoForTriggers'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPollingInfoForTriggers'
  /pipeline/api/triggers/eventHistory/{triggerIdentifier}:
    get:
      tags:
        - TriggersEvents
      summary: Get event history for a trigger
      description: Get event history for a trigger
      operationId: triggerEventHistoryNew
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out pipelines based on pipeline name,
            identifier, tags.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: shouldSendTriggerPayload
          in: query
          schema:
            type: boolean
            default: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger Event History response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
  /pipeline/api/triggers/eventHistory/events:
    get:
      tags:
        - TriggersEvents
      summary: Get event history for a trigger using filters.
      description: Get event history for a trigger using filters.
      operationId: triggerEventHistoryUsingFilters
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: query
          schema:
            type: string
        - name: status
          in: query
          schema:
            type: array
            items:
              type: string
        - name: triggerType
          in: query
          schema:
            type: string
            enum:
              - Webhook
              - Artifact
              - Manifest
              - Scheduled
              - MultiRegionArtifact
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger Event History response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventsApiResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventsApiResponse'
  /pipeline/api/triggers/eventHistory/eventCorrelation/{eventCorrelationId}:
    get:
      tags:
        - TriggersEvents
      summary: Get Trigger history event correlation
      description: Get Trigger history event correlation
      operationId: triggerHistoryEventCorrelation
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: eventCorrelationId
          in: path
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger catalogue response
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageNGTriggerEventHistoryBaseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageNGTriggerEventHistoryBaseDTO
  /pipeline/api/triggers/eventHistory/v2/eventCorrelation/{eventCorrelationId}:
    get:
      tags:
        - TriggersEvents
      summary: Get Trigger history event correlation V2
      description: Get Trigger history event correlation V2
      operationId: triggerHistoryEventCorrelationV2
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: eventCorrelationId
          in: path
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger catalogue response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
  /pipeline/api/triggers/eventHistory/artifact-manifest-info:
    get:
      tags:
        - TriggersEvents
      summary: >-
        Get artifact and manifest trigger event history based on build source
        type
      description: >-
        Get artifact and manifest trigger event history based on build source
        type
      operationId: triggerEventHistoryBuildSourceType
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          schema:
            type: string
        - name: artifactType
          in: query
          description: Type of artifact source
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out pipelines based on pipeline name,
            identifier, tags.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger Event History response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
  /pipeline/api/triggers:
    get:
      tags:
        - Triggers
      summary: >-
        Gets the paginated list of triggers for accountIdentifier,
        orgIdentifier, projectIdentifier, targetIdentifier.
      operationId: getListForTarget
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline
          required: true
          schema:
            type: string
        - name: filter
          in: query
          schema:
            type: string
        - name: page
          in: query
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          schema:
            type: integer
            format: int32
            default: 25
        - name: sort
          in: query
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          schema:
            type: string
      requestBody:
        description: >-
          This contains details of Trigger filters based on Trigger Types and
          Trigger Names 
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TriggerFilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/TriggerFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns the paginated list of triggers for accountIdentifier,
            orgIdentifier, projectIdentifier, targetIdentifier.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseNGTriggerDetailsResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseNGTriggerDetailsResponseDTO
    post:
      tags:
        - Triggers
      summary: Creates Trigger for triggering target pipeline identifier.
      operationId: createTrigger
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline
          required: true
          schema:
            type: string
        - name: ignoreError
          in: query
          schema:
            type: boolean
            default: false
        - name: withServiceV2
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: Triggers YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Trigger YAML
                description: Sample Triggers YAML
                value: |-
                  trigger:
                    name: Trigger
                    identifier: Trigger
                    enabled: true
                    orgIdentifier: default
                    projectIdentifier: Terraform_Provider
                    pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications
                    source:
                      type: Scheduled
                      spec:
                        type: Cron
                        spec:
                          expression: 0 8,20 * * *
                    inputYaml: |
                      pipeline:
                        identifier: Terraform_NG_Acc_Tests_With_Notifications
                        properties:
                          ci:
                            codebase:
                              build:
                                type: branch
                                spec:
                                  branch: main
          application/yaml:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Trigger YAML
                description: Sample Triggers YAML
                value: |-
                  trigger:
                    name: Trigger
                    identifier: Trigger
                    enabled: true
                    orgIdentifier: default
                    projectIdentifier: Terraform_Provider
                    pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications
                    source:
                      type: Scheduled
                      spec:
                        type: Cron
                        spec:
                          expression: 0 8,20 * * *
                    inputYaml: |
                      pipeline:
                        identifier: Terraform_NG_Acc_Tests_With_Notifications
                        properties:
                          ci:
                            codebase:
                              build:
                                type: branch
                                spec:
                                  branch: main
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns details of the created Trigger.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
  /pipeline/api/triggers/{triggerIdentifier}:
    get:
      tags:
        - Triggers
      summary: >-
        Gets the trigger by accountIdentifier, orgIdentifier, projectIdentifier,
        targetIdentifier and triggerIdentifier.
      operationId: getTrigger
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns the trigger with the accountIdentifier, orgIdentifier,
            projectIdentifier, targetIdentifier and triggerIdentifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
    put:
      tags:
        - Triggers
      summary: Updates trigger for pipeline with target pipeline identifier.
      operationId: updateTrigger
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: ignoreError
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: Triggers YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Trigger YAML
                description: Sample Triggers YAML
                value: |-
                  trigger:
                    name: Trigger
                    identifier: Trigger
                    enabled: true
                    orgIdentifier: default
                    projectIdentifier: Terraform_Provider
                    pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications
                    source:
                      type: Scheduled
                      spec:
                        type: Cron
                        spec:
                          expression: 0 8,20 * * *
                    inputYaml: |
                      pipeline:
                        identifier: Terraform_NG_Acc_Tests_With_Notifications
                        properties:
                          ci:
                            codebase:
                              build:
                                type: branch
                                spec:
                                  branch: main
          application/yaml:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Trigger YAML
                description: Sample Triggers YAML
                value: |-
                  trigger:
                    name: Trigger
                    identifier: Trigger
                    enabled: true
                    orgIdentifier: default
                    projectIdentifier: Terraform_Provider
                    pipelineIdentifier: Terraform_NG_Acc_Tests_With_Notifications
                    source:
                      type: Scheduled
                      spec:
                        type: Cron
                        spec:
                          expression: 0 8,20 * * *
                    inputYaml: |
                      pipeline:
                        identifier: Terraform_NG_Acc_Tests_With_Notifications
                        properties:
                          ci:
                            codebase:
                              build:
                                type: branch
                                spec:
                                  branch: main
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the updated trigger
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerResponse'
    delete:
      tags:
        - Triggers
      summary: Deletes Trigger by identifier.
      operationId: deleteTrigger
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides.
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the boolean status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/triggers/catalog:
    get:
      tags:
        - Triggers
      summary: Lists all Triggers
      description: Lists all the Triggers for the given Account ID.
      operationId: getTriggerCatalog
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger catalogue response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTriggerCatalogResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTriggerCatalogResponse'
  /pipeline/api/triggers/{triggerIdentifier}/details:
    get:
      tags:
        - Triggers
      summary: >-
        Fetches Trigger details for a specific accountIdentifier, orgIdentifier,
        projectIdentifier, targetIdentifier, triggerIdentifier.
      operationId: getTriggerDetails
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          description: Identifier of the target pipeline
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Fetches Trigger details for a specific accountIdentifier,
            orgIdentifier, projectIdentifier, targetIdentifier,
            triggerIdentifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerDetailsResponseDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGTriggerDetailsResponseDTO'
  /pipeline/api/triggers/{triggerIdentifier}/eventHistory:
    get:
      tags:
        - Triggers
      summary: Get event history for a trigger
      description: Get event history for a trigger
      operationId: triggerEventHistory
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: targetIdentifier
          in: query
          description: Identifier of the target pipeline under which trigger resides
          required: true
          schema:
            type: string
        - name: triggerIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out pipelines based on pipeline name,
            identifier, tags.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns the Trigger catalogue response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageNGTriggerEventHistoryDTO'
      deprecated: true
  /pipeline/api/webhook/triggerProcessingDetails:
    get:
      tags:
        - Webhook Triggers
      summary: Gets webhook event processing details for input eventId.
      operationId: fetchWebhookDetails
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: eventId
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns webhook event processing details for input eventId.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookEventProcessingDetails'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookEventProcessingDetails'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookEventProcessingDetails'
  /pipeline/api/webhook/triggerExecutionDetails/{eventId}:
    get:
      tags:
        - Webhook Triggers
      summary: Gets webhook event processing details for input eventId.
      operationId: fetchWebhookExecutionDetails
      parameters:
        - name: eventId
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns webhook event processing details for input eventId.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
  /pipeline/api/webhook/triggerExecutionDetailsV2/{eventId}:
    get:
      tags:
        - Webhook Triggers
      summary: >-
        Gets webhook event processing details for input eventId when the trigger
        is queued and has not triggered the pipeline yet.
      operationId: fetchWebhookExecutionDetailsV2
      parameters:
        - name: eventId
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns webhook event processing details for input eventId when the
            trigger is in queued state.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOWebhookExecutionDetails'
  /pipeline/api/webhook/trigger:
    post:
      tags:
        - Webhook Triggers
      summary: Handles event payload for webhook triggers.
      operationId: PipelineprocessWebhookEvent
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns UUID of newly created webhook processing event.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /pipeline/api/webhook/custom:
    post:
      tags:
        - Webhook Triggers
      summary: Handles event payload for custom webhook triggers.
      operationId: processCustomWebhookEvent
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          schema:
            type: string
        - name: triggerIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns UUID of newly created custom webhook processing event.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /pipeline/api/webhook/custom/v2:
    post:
      tags:
        - Webhook Triggers
      summary: Handles event payload for custom webhook triggers.
      operationId: processCustomWebhookEventV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier
          schema:
            type: string
        - name: triggerIdentifier
          in: query
          description: Trigger Key
          schema:
            type: string
      requestBody:
        description: Trigger Payload
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns data about of newly created custom webhook processing event.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
  /pipeline/api/webhook/custom/{webhookToken}/v3:
    post:
      tags:
        - Webhook Triggers
      summary: Handles event payload for custom webhook triggers.
      operationId: processCustomWebhookEventV3
      parameters:
        - name: webhookToken
          in: path
          description: Custom Webhook token for custom webhook triggers
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier
          schema:
            type: string
        - name: triggerIdentifier
          in: query
          description: Trigger Key
          schema:
            type: string
      requestBody:
        description: Trigger Payload
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
          text/plain:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns data about of newly created custom webhook processing event.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseDTONGProcessWebhookResponse'
  /pipeline/api/approvals/{approvalInstanceId}/harness/activity:
    post:
      tags:
        - Approvals
      summary: Approve or Reject a Pipeline Execution
      operationId: addHarnessApprovalActivity
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: approvalInstanceId
          in: path
          description: Approval Identifier for the entity
          required: true
          schema:
            type: string
      requestBody:
        description: Details of approval activity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HarnessApprovalActivityRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/HarnessApprovalActivityRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns a newly added Harness Approval activity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOApprovalInstanceResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOApprovalInstanceResponse'
  /pipeline/api/pipelines/pipelineExecution:
    get:
      tags:
        - Pipeline Dashboard
      summary: Fetch Execution Details for an Interval
      description: >-
        Returns Pipeline Execution Details for a Given Interval (Presented in
        Day Wise Format)
      operationId: getPipelineExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: moduleInfo
          in: query
          description: The module from which execution was triggered.
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: Start Date Epoch time in ms
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          description: End Date Epoch time in ms
          required: true
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        default:
          description: >-
            Fetches Pipeline Executions details for a given Interval and will be
            presented in day wise format
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTODashboardPipelineExecution'
      deprecated: true
  /pipeline/api/pipelines/retention/{accountIdentifier}:
    get:
      tags:
        - Pipeline data retention
      summary: Get retention period for pipeline executions
      description: Returns the retention period for pipeline executions based on accountId
      operationId: getRetentionPeriodInMonths
      parameters:
        - name: accountIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns the retention period for pipeline executions based on
            accountId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseInteger'
            application/yaml:
              schema:
                $ref: '#/components/schemas/RestResponseInteger'
  /pipeline/api/input-file/download-file:
    get:
      tags:
        - Pipeline
      summary: Download file from GCS using filePath
      description: Download file from GCS using filePath
      operationId: downloadFileUsingFilePath
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: filePath
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Download file from GCS using filePath
  /pipeline/api/input-file/file/{planExecutionId}:
    get:
      tags:
        - Pipeline
      summary: >-
        Returns a file uploaded or filtered based on the fileIdentifier provided
        for a given nodeExecutionId
      description: >-
        Returns a file uploaded or filtered based on the fileIdentifier provided
        for a given nodeExecutionId
      operationId: PipelinegetFile
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: The Pipeline Execution Id
          required: true
          schema:
            type: string
        - name: nodeExecutionId
          in: query
          description: Step execution Id of upload step
          required: true
          schema:
            type: string
        - name: fileName
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns a file uploaded or filtered based on the fileIdentifier
            provided for a given planExecutionId
  /pipeline/api/inputSets:
    get:
      tags:
        - Pipeline Input Set
      summary: List Input Sets
      description: Lists all Input Sets for a Pipeline
      operationId: listInputSet
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline identifier for which we need the Input Sets list.
          required: true
          schema:
            type: string
        - name: inputSetType
          in: query
          description: Type of Input Set. The default value is ALL.
          schema:
            type: string
            enum:
              - ALL
              - INPUT_SET
              - OVERLAY_INPUT_SET
            default: ALL
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out Input Sets based on name, identifier,
            tags.
          schema:
            type: string
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Fetch all the Input Sets for a Pipeline, including Overlay Input
            Sets.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInputSetSummaryResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInputSetSummaryResponse
    post:
      tags:
        - Pipeline Input Set
      summary: Create an Input Set
      description: Creates an Input Set for a Pipeline
      operationId: postInputSet
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: pipelineBranch
          in: query
          description: >-
            Github branch of the Pipeline for which the Input Set is to be
            created
          schema:
            type: string
        - name: pipelineRepoID
          in: query
          description: >-
            Github Repo identifier of the Pipeline for which the Input Set is to
            be created
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: InputSetVersion
          in: query
          description: Input set yaml version, should be one of '0' or '1'
          schema:
            type: string
            default: '0'
      requestBody:
        description: >-
          Input set YAML to be created. The Account, Org, Project, and Pipeline
          identifiers inside the YAML should match the query parameters.
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Input Set YAML
                description: Sample Input Set YAML
                value: |
                  inputSet:
                      name: Sample Input Set
                      tags: {}
                      identifier: Sample_Input_Set
                      orgIdentifier: default
                      projectIdentifier: MISC
                      pipeline:
                          identifier: Sample_Pipeline
                          stages:
                              - stage:
                                    identifier: Sample_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:
                                                              type: Inline
                                                              spec:
                                                                  script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            If the YAML is valid, returns created Input Set. If not, it sends
            what is wrong with the YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
  /pipeline/api/inputSets/overlay:
    post:
      tags:
        - Pipeline Input Set
      summary: Create an Overlay Input Set for a pipeline
      operationId: postOverlayInputSet
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: >-
          Overlay Input Set YAML to be created. The Account, Org, Project, and
          Pipeline identifiers inside the YAML should match the query parameters
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            If the YAML is valid, returns created Overlay Input Set. If not, it
            sends what is wrong with the YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
  /pipeline/api/inputSets/{inputSetIdentifier}:
    get:
      tags:
        - Pipeline Input Set
      summary: Fetch an Input Set
      description: >-
        Returns Input Set for a Given Identifier (Throws an Error if no Input
        Set Exists)
      operationId: getInputSet
      parameters:
        - name: inputSetIdentifier
          in: path
          description: Identifier for the Input Set
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: pipelineBranch
          in: query
          description: >-
            Github branch of the Pipeline for which the Input Set is to be
            fetched
          schema:
            type: string
        - name: pipelineRepoID
          in: query
          description: >-
            Github Repo identifier of the Pipeline for which the Input Set is to
            be fetched
          schema:
            type: string
        - name: loadFromFallbackBranch
          in: query
          schema:
            type: boolean
            default: false
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns Input Set if exists for the given Identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
    put:
      tags:
        - Pipeline Input Set
      summary: Update an Input Set
      description: Updates the Input Set for a Pipeline
      operationId: putInputSet
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: inputSetIdentifier
          in: path
          description: >-
            Identifier for the Input Set that needs to be updated. An Input Set
            corresponding to this identifier should already exist.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: pipelineBranch
          in: query
          description: >-
            Github branch of the Pipeline for which the Input Set is to be
            updated
          schema:
            type: string
        - name: pipelineRepoID
          in: query
          description: >-
            Github Repo Id of the Pipeline for which the Input Set is to be
            updated
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: InputSetVersion
          in: query
          description: Input set yaml version, should be one of '0' or '1'
          schema:
            type: string
            default: '0'
      requestBody:
        description: >-
          Input set YAML to be updated. The query parameters should match the
          Account, Org, Project, and Pipeline Ids in the YAML.
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Input Set YAML
                description: Sample Input Set YAML
                value: |
                  inputSet:
                      name: Sample Input Set
                      tags: {}
                      identifier: Sample_Input_Set
                      orgIdentifier: default
                      projectIdentifier: MISC
                      pipeline:
                          identifier: Sample_Pipeline
                          stages:
                              - stage:
                                    identifier: Sample_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:
                                                              type: Inline
                                                              spec:
                                                                  script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            If the YAML is valid, returns the updated Input Set. If not, it
            sends what is wrong with the YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetResponse'
    delete:
      tags:
        - Pipeline Input Set
      summary: Delete an Input Set
      description: Deletes the Input Set by Identifier
      operationId: deleteInputSet
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: inputSetIdentifier
          in: path
          description: Identifier of the Input Set that should be deleted.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: Last Object Id
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return the Deleted Input Set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/inputSets/get/batch-input-sets-metadata:
    post:
      tags:
        - Pipeline Input Set
      summary: >-
        List regular Input Sets for multiple pipelines (excludes overlay input
        sets)
      description: >-
        Lists regular Input Sets for multiple pipelines (excludes overlay input
        sets)
      operationId: getBatchInputSetsMetadata
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 20
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out Input Sets based on name, identifier,
            tags.
          schema:
            type: string
      requestBody:
        description: >-
          Request containing pipeline identifiers to fetch regular input sets
          for (excludes overlay input sets)
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchInputSetsAPIRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/BatchInputSetsAPIRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Fetch regular Input Sets for the specified pipelines (excludes
            overlay input sets).
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInputSetListResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseInputSetListResponse
  /pipeline/api/inputSets/get/bulk:
    post:
      tags:
        - Pipeline Input Set
      summary: Get multiple input sets by identifiers (non-deleted only)
      description: >-
        Gets multiple input sets by their identifiers for a specific pipeline.
        Only returns non-deleted input sets.
      operationId: getBulkInputSets
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier
          required: true
          schema:
            type: string
      requestBody:
        description: Request containing input set identifiers to fetch
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkInputSetsAPIRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/BulkInputSetsAPIRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Fetch multiple non-deleted input sets by their identifiers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBulkInputSetsAPIResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBulkInputSetsAPIResponse'
  /pipeline/api/inputSets/merge:
    post:
      tags:
        - Pipeline Input Set
      summary: Merge given Input Sets into a single Runtime Input YAML
      operationId: mergeInputSets
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: pipelineBranch
          in: query
          description: Github branch of the Pipeline to which the Input Sets belong
          schema:
            type: string
        - name: pipelineRepoID
          in: query
          description: >-
            Github Repo identifier of the Pipeline to which the Input Sets
            belong
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MergeInputSetRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/MergeInputSetRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Merge given Input Sets into A single Runtime Input YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMergeInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOMergeInputSetResponse'
  /pipeline/api/inputSets/overlay/{inputSetIdentifier}:
    get:
      tags:
        - Pipeline Input Set
      summary: Gets an Overlay Input Set by identifier
      operationId: getOverlayInputSet
      parameters:
        - name: inputSetIdentifier
          in: path
          description: Identifier for the Overlay Input Set
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: pipelineBranch
          in: query
          description: >-
            Github branch of the Pipeline for which the Input Set is to be
            fetched
          schema:
            type: string
        - name: pipelineRepoID
          in: query
          description: >-
            Github Repo identifier of the Pipeline for which the Input Set is to
            be fetched
          schema:
            type: string
        - name: loadFromFallbackBranch
          in: query
          schema:
            type: boolean
            default: false
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            The Overlay Input Set that corresponds to the given Overlay Input
            Set Identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
    put:
      tags:
        - Pipeline Input Set
      summary: Update an Overlay Input Set for a pipeline
      operationId: putOverlayInputSet
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: inputSetIdentifier
          in: path
          description: Identifier for the Overlay Input Set that needs to be updated.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: >-
          Overlay Input Set YAML to be updated. The Account, Org, Project, and
          Pipeline identifiers inside the YAML should match the query
          parameters, and the Overlay Input Set identifier cannot be changed.
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            If the YAML is valid, returns the updated Overlay Input Set. If not,
            it sends what is wrong with the YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOOverlayInputSetResponse'
  /pipeline/api/inputSets/template:
    post:
      tags:
        - Pipeline Input Set
      summary: Fetch Runtime Input Template
      description: Returns Runtime Input Template for a Pipeline
      operationId: runtimeInputTemplate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline identifier for which we need the Runtime Input Template.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InputSetTemplateRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/InputSetTemplateRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Fetch Runtime Input Template for a Pipeline, along with any
            expressions whose value is needed for running specific Stages
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOInputSetTemplateWithReplacedExpressionsResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOInputSetTemplateWithReplacedExpressionsResponse
  /pipeline/api/inputSets/{inputSetIdentifier}/update-git-metadata:
    put:
      tags:
        - Pipeline Input Set
      summary: Update git-metadata in remote input-set
      description: Update git-metadata in remote input-set and return the updated input-set
      operationId: updateInputSetGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier for the entity.
          required: true
          schema:
            type: string
        - name: inputSetIdentifier
          in: path
          description: Identifier for the Input Set
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns identifier of updated input-set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetGitUpdateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetGitUpdateResponse'
  /pipeline/api/pipelines:
    post:
      tags:
        - Pipeline
      summary: Create a Pipeline
      description: Creates a Pipeline
      operationId: postPipeline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: Pipeline YAML
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns created pipeline
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
      deprecated: true
  /pipeline/api/pipelines/v2:
    post:
      tags:
        - Pipeline
      summary: Create a Pipeline
      description: Creates a Pipeline
      operationId: postPipelineV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: allowDynamicExecutions
          in: query
          description: Allow  Dynamic Executions for the Pipeline
          schema:
            type: boolean
        - name: public
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: Pipeline YAML
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Pipeline YAML
                description: Sample Pipeline YAML with One Build Stage and One Deploy Stage
                value: |
                  pipeline:
                      name: Sample Pipeline
                      identifier: Sample_Pipeline
                      allowStageExecutions: false
                      projectIdentifier: Temp
                      orgIdentifier: default
                      tags: {}
                      stages:
                          - stage:
                                name: Sample Stage
                                identifier: Sample_Stage
                                description: ""
                                type: Approval
                                spec:
                                    execution:
                                        steps:
                                            - step:
                                                  name: Approval Step
                                                  identifier: Approval_Step
                                                  type: HarnessApproval
                                                  timeout: 1d
                                                  spec:
                                                      approvalMessage: |-
                                                          Please review the following information
                                                          and approve the pipeline progression
                                                      includePipelineExecutionHistory: true
                                                      approvers:
                                                          minimumCount: 1
                                                          disallowPipelineExecutor: false
                                                          userGroups: <+input>
                                                      approverInputs: []
                                            - step:
                                                  type: ShellScript
                                                  name: ShellScript Step
                                                  identifier: ShellScript_Step
                                                  spec:
                                                      shell: Bash
                                                      onDelegate: true
                                                      source:
                                                          type: Inline
                                                          spec:
                                                              script: <+input>
                                                      environmentVariables: []
                                                      outputVariables: []
                                                      executionTarget: {}
                                                  timeout: 10m
                                tags: {}
                          - stage:
                                name: Sample Deploy Stage
                                identifier: Sample_Deploy_Stage
                                description: ""
                                type: Deployment
                                spec:
                                    serviceConfig:
                                        serviceRef: <+input>
                                        serviceDefinition:
                                            spec:
                                                variables: []
                                            type: Kubernetes
                                    infrastructure:
                                        environmentRef: <+input>
                                        infrastructureDefinition:
                                            type: KubernetesDirect
                                            spec:
                                                connectorRef: <+input>
                                                namespace: <+input>
                                                releaseName: release-<+INFRA_KEY>
                                        allowSimultaneousDeployments: false
                                    execution:
                                        steps:
                                            - step:
                                                  name: Rollout Deployment
                                                  identifier: rolloutDeployment
                                                  type: K8sRollingDeploy
                                                  timeout: 10m
                                                  spec:
                                                      skipDryRun: false
                                        rollbackSteps:
                                            - step:
                                                  name: Rollback Rollout Deployment
                                                  identifier: rollbackRolloutDeployment
                                                  type: K8sRollingRollback
                                                  timeout: 10m
                                                  spec: {}
                                tags: {}
                                failureStrategies:
                                    - onFailure:
                                          errors:
                                              - AllErrors
                                          action:
                                              type: StageRollback
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns created pipeline with metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
  /pipeline/api/pipelines/{pipelineIdentifier}:
    get:
      tags:
        - Pipeline
      summary: Fetch a Pipeline
      description: Returns a Pipeline by Identifier
      operationId: getPipeline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: getTemplatesResolvedPipeline
          in: query
          description: >-
            This is a boolean value. If true, returns Templates resolved
            Pipeline YAML in the response else returns null.
          schema:
            type: boolean
            default: false
        - name: loadFromFallbackBranch
          in: query
          schema:
            type: boolean
            default: false
        - name: validateAsync
          in: query
          schema:
            type: boolean
            default: false
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns pipeline YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSPipelineResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSPipelineResponse'
    put:
      tags:
        - Pipeline
      summary: Update a Pipeline
      description: Updates a Pipeline by Identifier
      operationId: updatePipeline
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        description: Pipeline YAML to be updated
        content:
          application/json:
            schema:
              type: string
          application/yaml:
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns updated pipeline
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
      deprecated: true
    delete:
      tags:
        - Pipeline
      summary: Delete a Pipeline
      description: Deletes a Pipeline by Identifier
      operationId: deletePipeline
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: Last Object Id
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/pipelines/list:
    post:
      tags:
        - Pipeline
      summary: List Pipelines
      description: Returns List of Pipelines in the Given Project
      operationId: getPipelineList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 25
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out pipelines based on pipeline name,
            identifier, tags.
          schema:
            type: string
        - name: module
          in: query
          schema:
            type: string
        - name: filterIdentifier
          in: query
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: getDistinctFromBranches
          in: query
          description: Boolean flag to get distinct pipelines from all branches.
          schema:
            type: boolean
      requestBody:
        description: This is the body for the filter properties for listing pipelines.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PipelineFilterProperties'
            examples:
              List:
                summary: Sample List Pipeline JSON
                description: Sample List Pipeline JSON Payload
                value:
                  filterType: PipelineSetup
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Paginated list of pipelines.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPagePMSPipelineSummaryResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPagePMSPipelineSummaryResponse'
  /pipeline/api/pipelines/summary/{pipelineIdentifier}:
    get:
      tags:
        - Pipeline
      summary: Fetch Pipeline Summary
      description: Returns Pipeline Summary by Identifier
      operationId: getPipelineSummary
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: loadFromFallbackBranch
          in: query
          schema:
            type: boolean
            default: false
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns Pipeline Summary having pipelineIdentifier as specified in
            request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSPipelineSummaryResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSPipelineSummaryResponse'
  /pipeline/api/pipelines/import:
    post:
      tags:
        - Pipeline
      summary: Import and Create Pipeline from Git Repository
      operationId: importPipeline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          required: true
          schema:
            type: string
        - name: isForceImport
          in: query
          description: isForceImport
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PipelineImportRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/PipelineImportRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Import and Create Pipeline from Git Repository and saves a record
            for it in Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
  /pipeline/api/pipelines/import/{pipelineIdentifier}:
    post:
      tags:
        - Pipeline
      summary: Import and Create Pipeline from Git Repository
      operationId: importPipeline_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          required: true
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          required: true
          schema:
            type: string
        - name: isForceImport
          in: query
          description: isForceImport
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PipelineImportRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/PipelineImportRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Import and Create Pipeline from Git Repository and saves a record
            for it in Harness
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
      deprecated: true
  /pipeline/api/pipelines/{pipelineIdentifier}/update-git-metadata:
    put:
      tags:
        - Pipeline
      summary: Update git-metadata in remote pipeline Entity
      description: >-
        Update git-metadata in remote pipeline and returns the identifier of
        updated pipeline
      operationId: updatePipelineGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns identifier of updated pipeline
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSGitUpdateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPMSGitUpdateResponse'
  /pipeline/api/pipelines/v2/{pipelineIdentifier}:
    put:
      tags:
        - Pipeline
      summary: Update a Pipeline
      description: Updates a Pipeline by Identifier
      operationId: updatePipelineV2
      parameters:
        - name: If-Match
          in: header
          description: Version of Entity to match
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: allowDynamicExecutions
          in: query
          description: Allow  Dynamic Executions for the Pipeline
          schema:
            type: boolean
        - name: public
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: Pipeline YAML to be updated
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Pipeline YAML
                description: Sample Pipeline YAML with One Build Stage and One Deploy Stage
                value: |
                  pipeline:
                      name: Sample Pipeline
                      identifier: Sample_Pipeline
                      allowStageExecutions: false
                      projectIdentifier: Temp
                      orgIdentifier: default
                      tags: {}
                      stages:
                          - stage:
                                name: Sample Stage
                                identifier: Sample_Stage
                                description: ""
                                type: Approval
                                spec:
                                    execution:
                                        steps:
                                            - step:
                                                  name: Approval Step
                                                  identifier: Approval_Step
                                                  type: HarnessApproval
                                                  timeout: 1d
                                                  spec:
                                                      approvalMessage: |-
                                                          Please review the following information
                                                          and approve the pipeline progression
                                                      includePipelineExecutionHistory: true
                                                      approvers:
                                                          minimumCount: 1
                                                          disallowPipelineExecutor: false
                                                          userGroups: <+input>
                                                      approverInputs: []
                                            - step:
                                                  type: ShellScript
                                                  name: ShellScript Step
                                                  identifier: ShellScript_Step
                                                  spec:
                                                      shell: Bash
                                                      onDelegate: true
                                                      source:
                                                          type: Inline
                                                          spec:
                                                              script: <+input>
                                                      environmentVariables: []
                                                      outputVariables: []
                                                      executionTarget: {}
                                                  timeout: 10m
                                tags: {}
                          - stage:
                                name: Sample Deploy Stage
                                identifier: Sample_Deploy_Stage
                                description: ""
                                type: Deployment
                                spec:
                                    serviceConfig:
                                        serviceRef: <+input>
                                        serviceDefinition:
                                            spec:
                                                variables: []
                                            type: Kubernetes
                                    infrastructure:
                                        environmentRef: <+input>
                                        infrastructureDefinition:
                                            type: KubernetesDirect
                                            spec:
                                                connectorRef: <+input>
                                                namespace: <+input>
                                                releaseName: release-<+INFRA_KEY>
                                        allowSimultaneousDeployments: false
                                    execution:
                                        steps:
                                            - step:
                                                  name: Rollout Deployment
                                                  identifier: rolloutDeployment
                                                  type: K8sRollingDeploy
                                                  timeout: 10m
                                                  spec:
                                                      skipDryRun: false
                                        rollbackSteps:
                                            - step:
                                                  name: Rollback Rollout Deployment
                                                  identifier: rollbackRolloutDeployment
                                                  type: K8sRollingRollback
                                                  timeout: 10m
                                                  spec: {}
                                tags: {}
                                failureStrategies:
                                    - onFailure:
                                          errors:
                                              - AllErrors
                                          action:
                                              type: StageRollback
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns updated pipeline with metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineSaveResponse'
  /pipeline/api/pipelines/execution/canRetry/{planExecutionId}:
    get:
      tags:
        - Pipeline Execution Details
      summary: Validate if Execution can be retried
      description: Validates if an execution can be retried for a Given PlanExecution ID
      operationId: canRetryExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to check if it can be retried
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return true if the provided execution can be retried
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/pipelines/execution/{planExecutionId}:
    get:
      tags:
        - Pipeline Execution Details
      summary: Fetch Execution Details
      description: Returns the Pipeline Execution Details for a Given PlanExecution ID
      operationId: getExecutionDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: stageNodeId
          in: query
          description: Stage Node Identifier for which Stage Graph needs to be Rendered
          schema:
            type: string
        - name: stageNodeExecutionId
          in: query
          description: >-
            Stage Node Execution ID for which Stage Graph needs to be Rendered.
            (Needed only when there are Multiple Runs for a Given Stage. It can
            be Extracted from LayoutNodeMap Field)
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Execution details
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return the Pipeline Execution details for given PlanExecution Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionDetail'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionDetail'
      deprecated: true
  /pipeline/api/pipelines/execution/v2/{planExecutionId}:
    get:
      tags:
        - Pipeline Execution Details
      summary: Fetch Execution Details
      description: Returns the Pipeline Execution Details for a Given PlanExecution ID
      operationId: getExecutionDetailV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: stageNodeId
          in: query
          description: Stage Node Identifier for which Stage Graph needs to be Rendered
          schema:
            type: string
        - name: stageNodeExecutionId
          in: query
          description: >-
            Stage Node Execution ID for which Stage Graph needs to be Rendered.
            (Needed only when there are Multiple Runs for a Given Stage. It can
            be Extracted from LayoutNodeMap Field)
          schema:
            type: string
        - name: childStageNodeId
          in: query
          description: >-
            Stage Node Execution ID for which Stage Graph needs to be Rendered.
            (Needed only when there are Multiple Runs for a Given Stage. It can
            be Extracted from LayoutNodeMap Field)
          schema:
            type: string
        - name: renderFullBottomGraph
          in: query
          description: Generate Graph for all the Stages including Steps in each Stage
          schema:
            type: boolean
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Execution details
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Return the Pipeline Execution details for given PlanExecution Id
            without full graph if stageNodeId is null
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionDetail'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionDetail'
  /pipeline/api/pipelines/execution/getExecutionGraph/{planExecutionId}:
    get:
      tags:
        - Pipeline Execution Details
      summary: Fetch Execution Graph
      description: Returns the Pipeline Execution Graph for a Given PlanExecution ID
      operationId: getExecutionGraph
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Execution details
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return the Pipeline Execution graph for given PlanExecution Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExecutionGraph'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOExecutionGraph'
  /pipeline/api/pipelines/execution/subGraph/{planExecutionId}/{nodeExecutionId}:
    get:
      tags:
        - Pipeline Execution Details
      summary: Fetch Execution SubGraph for a Given Retried StepGroup NodeExecution ID
      description: >-
        Returns the Pipeline Execution SubGraph for a Given Retried StepGroup
        NodeExecution ID
      operationId: getExecutionSubGraphForNodeExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: nodeExecutionId
          in: path
          description: Node Execution Id for which we want to get the Execution SubGraph
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Execution details
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Return Execution subGraph for a Given Retried StepGroup
            NodeExecution ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONodeExecutionDetails'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTONodeExecutionDetails'
  /pipeline/api/pipelines/execution/url:
    post:
      tags:
        - Pipeline Execution Details
      summary: Fetch Execution Url
      description: Returns the Pipeline Execution Url for a Given PlanExecution ID
      operationId: getExecutionURL
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Id for which we want to get the Execution url
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: query
          description: Plan Execution Id for which we want to get the Execution url
          required: true
          schema:
            type: string
        - name: modules
          in: query
          description: Modules
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Return the Pipeline Execution url for given Pipeline and
            PlanExecution Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /pipeline/api/pipelines/execution/{planExecutionId}/metadata:
    get:
      tags:
        - Pipeline Execution Details
      summary: Get execution metadata of a pipeline execution
      operationId: getExecutionData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: ExecutionId of the execution for which we want to get Metadata
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns metadata of a execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExecutionDataResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOExecutionDataResponse'
  /pipeline/api/pipelines/execution/{planExecutionId}/inputsetV2:
    get:
      tags:
        - Pipeline Execution Details
      summary: Get the Input Set YAML used for given Plan Execution
      operationId: getInputsetYamlV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: resolveExpressions
          in: query
          description: >-
            A boolean that indicates whether or not expressions should be
            resolved in input set yaml 
          schema:
            type: boolean
            default: false
        - name: resolveExpressionsType
          in: query
          description: >-
            Resolve Expressions Type indicates what kind of expressions should
            be resolved in input set yaml. The default value is UNKNOWN in which
            case no expressions will be resolvedChoose a value from the enum
            list: [RESOLVE_ALL_EXPRESSIONS, RESOLVE_TRIGGER_EXPRESSIONS,
            UNKNOWN]
          schema:
            type: string
            enum:
              - RESOLVE_ALL_EXPRESSIONS
              - RESOLVE_TRIGGER_EXPRESSIONS
              - UNKNOWN
            default: UNKNOWN
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Input Set YAML
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return the Input Set YAML used for given Plan Execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetTemplateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInputSetTemplateResponse'
  /pipeline/api/pipelines/execution/{planExecutionId}/policy-evaluation:
    get:
      tags:
        - Pipeline Execution Details
      summary: Gets the policy evaluated used for given Plan Execution
      operationId: getPpolicyEvaluation
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the Input Set YAML
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return policy evaluation details for given Plan Execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageGovernanceMetadata'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageGovernanceMetadata'
  /pipeline/api/pipelines/execution/executionSummary:
    post:
      tags:
        - Pipeline Execution Details
      summary: List Execution Identifier
      description: Returns a List of Pipeline Executions Identifier with Specific Filter
      operationId: getListOfExecutionIdentifier
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier filter if exact pipelines needs to be filtered.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: filterIdentifier
          in: query
          schema:
            type: string
      requestBody:
        description: Returns a List of Pipeline Executions with Specific Filters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterProperties'
            examples:
              List:
                summary: Sample List Pipeline Executions
                description: Sample List Pipeline Executions JSON Payload
                value:
                  filterType: PipelineExecution
                  pipelineTags:
                    - key: tag1
                      value: value1
                    - key: tag2
                      value: value2
                  status:
                    - SUCCESS
                    - FAILED
                    - RUNNING
                  pipelineName: My Pipeline
                  timeRange:
                    timeRangeFilterType: LAST_30_DAYS
                  moduleProperties:
                    cd:
                      serviceIdentifiers:
                        - service1
                        - service2
                      envIdentifiers:
                        - dev
                        - prod
                      artifactDisplayNames:
                        - library/nginx:stable
                        - stable
                      serviceDefinitionTypes:
                        - Kubernetes
                        - NativeHelm
                      helmChartVersions:
                        - chartV1
                        - chartV2
                      gitOpsAppIdentifiers:
                        - app1
                        - app2
                    ci:
                      ciExecutionInfoDTO:
                        event: pullRequest
                        pullRequest:
                          sourceBranch: source-branch
                          targetBranch: target-branch
                  triggerTypes:
                    - MANUAL
                    - WEBHOOK
                  triggerIdentifiers:
                    - trigger1
                    - trigger2
                  pipelineIdentifiers:
                    - pipeline1
                    - pipeline2
                  myDeployments: true
                  branchName: main
                  repo: my-repo
                  inputSetIdentifiers:
                    - inputSet1
                    - inputSet2
                  planExecutionIds:
                    - exec1
                    - exec2
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns all the Executions Identifier of pipelines for given filter
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPagePipelineExecutionIdentifierSummary
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPagePipelineExecutionIdentifierSummary
  /pipeline/api/pipelines/execution/summary:
    post:
      tags:
        - Pipeline Execution Details
      summary: List Executions
      description: Returns a List of Pipeline Executions with Specific Filter
      operationId: getListOfExecutions
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchTerm
          in: query
          description: >-
            Search term to filter out pipelines based on pipeline name,
            identifier, tags.
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier filter if exact pipelines needs to be filtered.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: filterIdentifier
          in: query
          schema:
            type: string
        - name: showAllExecutions
          in: query
          schema:
            type: boolean
            default: false
        - name: module
          in: query
          schema:
            type: string
        - name: status
          in: query
          schema:
            type: array
            items:
              type: string
              description: This is the Execution Status of the entity
              enum:
                - Running
                - AsyncWaiting
                - TaskWaiting
                - TimedWaiting
                - Failed
                - Errored
                - IgnoreFailed
                - NotStarted
                - Expired
                - Aborted
                - Discontinuing
                - Queued
                - Paused
                - ResourceWaiting
                - InterventionWaiting
                - ApprovalWaiting
                - WaitStepRunning
                - QueuedLicenseLimitReached
                - QueuedExecutionConcurrencyReached
                - Success
                - Suspended
                - Skipped
                - Pausing
                - ApprovalRejected
                - InputWaiting
                - AbortedByFreeze
                - UploadWaiting
                - NOT_STARTED
                - INTERVENTION_WAITING
                - APPROVAL_WAITING
                - APPROVAL_REJECTED
                - Waiting
                - Queued
                - Queued
                - Queued
                - Queued
        - name: myDeployments
          in: query
          schema:
            type: boolean
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      requestBody:
        description: Returns a List of Pipeline Executions with Specific Filters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterProperties'
            examples:
              List:
                summary: Sample List Pipeline Executions
                description: Sample List Pipeline Executions JSON Payload
                value:
                  filterType: PipelineExecution
                  pipelineTags:
                    - key: tag1
                      value: value1
                    - key: tag2
                      value: value2
                  status:
                    - SUCCESS
                    - FAILED
                    - RUNNING
                  pipelineName: My Pipeline
                  timeRange:
                    timeRangeFilterType: LAST_30_DAYS
                  moduleProperties:
                    cd:
                      serviceIdentifiers:
                        - service1
                        - service2
                      envIdentifiers:
                        - dev
                        - prod
                      artifactDisplayNames:
                        - library/nginx:stable
                        - stable
                      serviceDefinitionTypes:
                        - Kubernetes
                        - NativeHelm
                      helmChartVersions:
                        - chartV1
                        - chartV2
                      gitOpsAppIdentifiers:
                        - app1
                        - app2
                    ci:
                      ciExecutionInfoDTO:
                        event: pullRequest
                        pullRequest:
                          sourceBranch: source-branch
                          targetBranch: target-branch
                  triggerTypes:
                    - MANUAL
                    - WEBHOOK
                  triggerIdentifiers:
                    - trigger1
                    - trigger2
                  pipelineIdentifiers:
                    - pipeline1
                    - pipeline2
                  myDeployments: true
                  branchName: main
                  repo: my-repo
                  inputSetIdentifiers:
                    - inputSet1
                    - inputSet2
                  planExecutionIds:
                    - exec1
                    - exec2
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns all the Executions of pipelines for given filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPagePipelineExecutionSummary'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPagePipelineExecutionSummary'
  /pipeline/api/pipelines/execution/summary/outline:
    post:
      tags:
        - Pipeline Execution Details
      summary: List Executions Outline
      description: >-
        Returns a List of Pipeline Executions Outline given pipelineId or a list
        of executionIds
      operationId: getListOfExecutionsOutline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: lastSeenExecutionId
          in: query
          description: lastSeenExecutionId from previous response
          schema:
            type: string
        - name: lastSeenStartTime
          in: query
          description: lastSeenStartTime from previous response
          schema:
            type: integer
            format: int64
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      requestBody:
        description: Filters for fetching executions outline
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PipelineExecutionOutlineFilterDTO'
            examples:
              List executions outline:
                summary: Sample List Pipeline Executions outline
                description: Sample List Pipeline Executions outline JSON Payload
                value:
                  timeRange:
                    startTime: '1702443600000'
                    endTime: '1718810039288'
                  pipelineIdentifier: test
                  status:
                    - SUCCESS
                  planExecutionIds:
                    - executionId1
                    - executionId2
                    - executionId3
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns all the Executions outline given pipelineId or a list of
            executionIds
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomPagePipelineExecutionOutline
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOCustomPagePipelineExecutionOutline
  /pipeline/api/pipelines/execution/{planExecutionId}/notes:
    get:
      tags:
        - Pipeline Execution Details
      summary: Get Notes for a pipelineExecution
      operationId: getNotesForExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: ExecutionId of the execution for which we want to get notes
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns Notes of a pipelineExecution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionNotes'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionNotes'
    put:
      tags:
        - Pipeline Execution Details
      summary: Updates Notes for a pipelineExecution
      operationId: updateNotesForExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: notesForPipelineExecution
          in: query
          description: Notes of a Pipeline Execution
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: ExecutionId of the execution for which we want to update notes
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns Notes of a pipelineExecution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionNotes'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPipelineExecutionNotes'
  /pipeline/api/pipelines/execution/{planExecutionId}/workflow-graph:
    get:
      tags:
        - Pipeline Execution Details
      summary: Get workflow graph for visualization
      description: Returns the workflow graph for visualization
      operationId: getWorkflowGraph
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: nodeExecutionId
          in: query
          description: Node Execution Id from which to start graph traversal
          schema:
            type: string
        - name: depth
          in: query
          description: Maximum depth to traverse from the starting node
          schema:
            type: integer
            format: int32
            default: 10
        - name: planExecutionId
          in: path
          description: Plan Execution Id for which we want to get the workflow graph
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Return the workflow graph for visualization
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOWorkflowGraph'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOWorkflowGraph'
  /pipeline/api/pipeline/execute/retryHistory/{planExecutionId}:
    get:
      tags:
        - Pipeline Execute
      summary: Retry History for a given execution
      operationId: retryHistory
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pipelineIdentifier
          in: query
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: planExecutionId
          in: path
          description: >-
            planExecutionId of the execution of whose we need to find the retry
            history
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns retry history execution details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORetryHistoryResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORetryHistoryResponse'
  /pipeline/api/pipeline/execute/interrupt/{planExecutionId}:
    put:
      tags:
        - Pipeline Execute
      summary: Execute an Interrupt
      description: Executes an Interrupt on a Given Execution
      operationId: putHandleInterrupt
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: interruptType
          in: query
          description: >-
            The Interrupt type needed to be applied to the execution. Choose a
            value from the enum list.
          required: true
          schema:
            type: string
            enum:
              - AbortAll
              - UserMarkedFailure
        - name: planExecutionId
          in: path
          description: >-
            The Pipeline Execution Id on which the Interrupt needs to be
            applied.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Takes a possible Interrupt value and applies it onto the execution
            referred by the planExecutionId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInterruptResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInterruptResponse'
  /pipeline/api/pipeline/execute/manual-execution/{nodeExecutionId}:
    post:
      tags:
        - Pipeline Execute
      summary: Marks the Manual Execution as fail or resume
      operationId: markManualExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: nodeExecutionId
          in: path
          description: Node execution id on which the manual execution action is required
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the manual execution action that needs to be taken
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManualExecutionRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/ManualExecutionRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns status of api request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOManualExecutionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOManualExecutionResponse'
  /pipeline/api/pipeline/execute/interrupt/{planExecutionId}/{nodeExecutionId}:
    put:
      tags:
        - Pipeline Execute
      summary: Handles the interrupt for a given stage in a pipeline
      operationId: handleStageInterrupt
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: interruptType
          in: query
          description: >-
            The Interrupt type needed to be applied to the execution. Choose a
            value from the enum list.
          required: true
          schema:
            type: string
            enum:
              - AbortAll
              - UserMarkedFailure
        - name: planExecutionId
          in: path
          description: >-
            The Pipeline Execution Id on which the Interrupt needs to be
            applied.
          required: true
          schema:
            type: string
        - name: nodeExecutionId
          in: path
          description: >-
            The runtime Id of the step/stage on which the Interrupt needs to be
            applied.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Takes a possible Interrupt value and applies it onto the given stage
            in the execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInterruptResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOInterruptResponse'
  /pipeline/api/pipeline/execute/retry/{identifier}:
    post:
      tags:
        - Pipeline Execute
      summary: Retry a executed pipeline with inputSet pipeline yaml
      operationId: retryPipeline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: moduleType
          in: query
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI
          schema:
            type: string
        - name: planExecutionId
          in: query
          description: >-
            This param contains the previous execution execution id. This is
            basically when we are rerunning a Pipeline.
          required: true
          schema:
            type: string
        - name: retryStages
          in: query
          description: >-
            This param contains the identifier of stages from where to resume.
            It will be a list if we want to retry from parallel group 
          required: true
          schema:
            type: array
            items:
              type: string
        - name: runAllStages
          in: query
          description: >-
            This param provides an option to run only the failed stages when
            Pipeline fails at parallel group. By default, it will run all the
            stages in the failed parallel group.
          schema:
            type: boolean
            default: true
        - name: identifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: notesForPipelineExecution
          in: query
          description: Notes of a pipeline execution
          schema:
            type: string
            default: ''
        - name: asyncPlanCreation
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: Retry a executed pipeline with inputSet pipeline yaml
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Retry a executed pipeline with Runtime Input YAML:
                summary: Retry a executed pipeline with Runtime Input YAML
                description: Retry a executed pipeline with Runtime Input YAML
                value: |
                  pipeline:
                    identifier: "Sample_Pipeline"
                    stages:
                        - stage:
                            identifier: "Sample_Stage"
                            type: "Approval"
                            spec:
                                execution:
                                    steps:
                                        - step:
                                            identifier: "Approval_Step"
                                            type: "HarnessApproval"
                                            spec:
                                              approvers:
                                                userGroups: 
                                                  - account._account_all_users:
                                        - step:
                                            identifier: "Shellscript_Step"
                                            type: "ShellScript"
                                            spec:
                                              source:
                                                type: "Inline"
                                                spec:
                                                  script: "exit 0"
                        - stage:
                            identifier: "Sample_Deploy_Stage"
                            type: "Deployment"
                            spec:
                              serviceConfig:
                                serviceRef: "service1"
                              infrastructure:
                                  environmentRef: "env1"
                                  infrastructureDefinition:
                                                type: "KubernetesDirect"
                                                spec:
                                                  connectorRef: "KubernetesConnector>"
                                                  namespace: "default"
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns execution details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlanExecutionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PlanExecutionResponse'
  /pipeline/api/pipeline/execute/{identifier}/inputSetList:
    post:
      tags:
        - Pipeline Execute
      summary: Execute a Pipeline with Input Set References
      description: Execute a Pipeline with Input Set References
      operationId: postPipelineExecuteWithInputSetList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: moduleType
          in: query
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI
          schema:
            type: string
        - name: identifier
          in: path
          description: >-
            Pipeline identifier for the entity. Identifier of the Pipeline to be
            executed
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: useFQNIfError
          in: query
          schema:
            type: boolean
            default: false
        - name: notesForPipelineExecution
          in: query
          description: Notes of a pipeline execution
          schema:
            type: string
            default: ''
        - name: asyncPlanCreation
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MergeInputSetRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/MergeInputSetRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns pipeline execution details V2
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPlanExecutionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPlanExecutionResponse'
  /pipeline/api/pipeline/execute/{identifier}:
    post:
      tags:
        - Pipeline Execute
      summary: Execute a Pipeline with Runtime Input YAML
      description: Execute a Pipeline with Runtime Input YAML
      operationId: postPipelineExecuteWithInputSetYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: moduleType
          in: query
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI
          schema:
            type: string
        - name: identifier
          in: path
          description: >-
            Pipeline identifier for the entity. Identifier of the Pipeline to be
            executed
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: useFQNIfError
          in: query
          schema:
            type: boolean
            default: false
        - name: notifyOnlyUser
          in: query
          schema:
            type: boolean
            default: false
        - name: notesForPipelineExecution
          in: query
          description: Notes of a pipeline execution
          schema:
            type: string
            default: ''
        - name: inputSetIdentifiers
          in: query
          description: >-
            Input set identifiers for tracking and filtering pipeline
            executions. A list of input set identifiers to apply.
          schema:
            type: array
            items:
              type: string
        - name: asyncPlanCreation
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: >-
          Enter Runtime Input YAML if the Pipeline contains Runtime Inputs.
          Template for this can be Fetched from /inputSets/template API.
        content:
          application/yaml:
            schema:
              type: string
            examples:
              Execute Runtime Input YAML:
                summary: Execute Pipeline with Runtime Input YAML
                description: Execute Runtime Input YAML
                value: |
                  pipeline:
                    identifier: "Sample_Pipeline"
                    stages:
                        - stage:
                            identifier: "Sample_Stage"
                            type: "Approval"
                            spec:
                                execution:
                                    steps:
                                        - step:
                                            identifier: "Approval_Step"
                                            type: "HarnessApproval"
                                            spec:
                                              approvers:
                                                userGroups: 
                                                  - account._account_all_users:
                                        - step:
                                            identifier: "Shellscript_Step"
                                            type: "ShellScript"
                                            spec:
                                              source:
                                                type: "Inline"
                                                spec:
                                                  script: "exit 0"
                        - stage:
                            identifier: "Sample_Deploy_Stage"
                            type: "Deployment"
                            spec:
                              serviceConfig:
                                serviceRef: "service1"
                              infrastructure:
                                  environmentRef: "env1"
                                  infrastructureDefinition:
                                                type: "KubernetesDirect"
                                                spec:
                                                  connectorRef: "KubernetesConnector>"
                                                  namespace: "default"
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Returns pipeline execution details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlanExecutionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PlanExecutionResponse'
  /pipeline/api/pipeline/execute/{identifier}/stages:
    post:
      tags:
        - Pipeline Execute
      summary: Execute given Stages of a Pipeline
      operationId: postExecuteStages
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: moduleType
          in: query
          description: >-
            Module type for the entity. If its from deployments,type will be CD
            , if its from build type will be CI
          schema:
            type: string
        - name: identifier
          in: path
          description: Pipeline Identifier
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: useFQNIfError
          in: query
          schema:
            type: boolean
            default: false
        - name: notesForPipelineExecution
          in: query
          description: Notes of a pipeline execution
          schema:
            type: string
            default: ''
        - name: inputSetIdentifiers
          in: query
          description: >-
            Input set identifiers for tracking and filtering pipeline
            executions. A list of input set identifiers to apply.
          schema:
            type: array
            items:
              type: string
        - name: asyncPlanCreation
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RunStageRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RunStageRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: Execute given Stages of a Pipeline with Runtime Input Yaml
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPlanExecutionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPlanExecutionResponse'
  /pipeline/api/refresh-template/refresh-all:
    post:
      tags:
        - Pipeline Refresh
      summary: This recursively refresh and update template inputs in pipeline
      description: This recursively refresh and update template inputs in pipeline
      operationId: refreshAllTemplatesInputsInPipeline
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          schema:
            type: string
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: This recursively refresh and update template inputs in pipeline
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /pipeline/api/refresh-template/validate-template-inputs:
    get:
      tags:
        - Pipeline Refresh
      summary: Validates template inputs in a pipeline's YAML specification.
      description: >-
        Validates the template inputs in a pipeline's YAML specification. If the
        template inputs are invalid, the operation returns an error summary.
      operationId: validateTemplateInputs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: query
          schema:
            type: string
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/PipelineError'
        default:
          description: >-
            Returns a validation result for template inputs present in a
            pipeline's YAML specification.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOValidateTemplateInputsResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOValidateTemplateInputsResponseDTO
  /authz/api/acl:
    post:
      tags:
        - Access Control List
      summary: Check Permission
      description: Check for permission on resource(s) for a principal
      operationId: getAccessControlList
      requestBody:
        description: These are the checks to perform for Access Control.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccessCheckRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AccessCheckRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Result of the access check request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccessCheckResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOAccessCheckResponse'
  /authz/api/permissions:
    get:
      tags:
        - Permissions
      summary: List Permissions
      description: Get all permissions in a scope or all permissions in the system
      operationId: getPermissionList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: scopeFilterDisabled
          in: query
          description: >-
            This is to enable or disable filtering by scope. The default value
            is false. If the value is true, all the permissions in the system
            are fetched.
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: List of all permissions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListPermissionResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListPermissionResponse'
  /authz/api/permissions/resourcetypes:
    get:
      tags:
        - Permissions
      summary: List Resource Types
      description: Get all resource types for permissions in a scope or in the system.
      operationId: getPermissionResourceTypesList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: scopeFilterDisabled
          in: query
          description: >-
            This is to enable or disable filtering by scope. The default value
            is false. If the value is true, all the permissions in the system
            are fetched.
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: List of resource types
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetString'
  /authz/api/roleassignments/delete/batch:
    post:
      tags:
        - Role Assignments
      summary: Bulk Delete Role Assignment
      description: Bulk delete role assignments by identifiers
      operationId: bulkDeleteRoleAssignment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: List of role assigment identifiers to be deleted
        content:
          application/json:
            schema:
              maxItems: 100
              minItems: 0
              uniqueItems: true
              type: array
              items:
                type: string
          application/yaml:
            schema:
              maxItems: 100
              minItems: 0
              uniqueItems: true
              type: array
              items:
                type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Returns successfully/failed deleted roleassignment.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentDeleteResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentDeleteResponseDTO
  /authz/api/roleassignments/multi:
    post:
      tags:
        - Role Assignments
      summary: Create Role Assignments
      description: >-
        Create multiple role assignments in a scope. Returns all successfully
        created role assignments. Ignores failures and duplicates.
      operationId: postRoleAssignments
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: List of role assignments to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleAssignmentCreateRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RoleAssignmentCreateRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Successfully created role assignments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListRoleAssignmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOListRoleAssignmentResponse'
  /authz/api/roleassignments:
    get:
      tags:
        - Role Assignments
      summary: List Role Assignments
      description: List role assignments in the given scope
      operationId: getRoleAssignmentList
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Paginated list of role assignments in the given scope
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse
    post:
      tags:
        - Role Assignments
      summary: Create Role Assignment
      description: Creates role assignment within the specified scope.
      operationId: postRoleAssignment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: These are details for the role assignment to create.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthzRoleAssignment'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AuthzRoleAssignment'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: These are details of the created role assignment.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
  /authz/api/roleassignments/{identifier}:
    get:
      tags:
        - Role Assignments
      summary: Get Role Assignment
      description: Get an existing role assignment by identifier
      operationId: getRoleAssignment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for role assignment
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Get an existing role assignment by identifier in the given scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
    delete:
      tags:
        - Role Assignments
      summary: Delete Role Assignment
      description: Delete an existing role assignment by identifier
      operationId: deleteRoleAssignment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for role assignment
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Deleted role assignment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleAssignmentResponse'
  /authz/api/roleassignments/filter:
    post:
      tags:
        - Role Assignments
      summary: List Role Assignments by filter
      description: List role assignments in the scope according to the given filter
      operationId: getFilteredRoleAssignmentList
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Filter role assignments based on multiple parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: >-
            Paginated list of role assignments in the scope according to the
            given filter
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentResponse
  /authz/api/roleassignments/aggregate:
    post:
      tags:
        - Role Assignments
      summary: List Aggregated Role Assignments by filter
      description: >-
        List role assignments in the scope according to the given filter with
        added metadata
      operationId: getRoleAssignmentAggregateList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Filter role assignments based on multiple parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilter'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: >-
            Paginated list of role assignments in the scope according to the
            given filter with added metadata.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentAggregateResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentAggregateResponse
  /authz/api/roleassignments/v2/filter:
    post:
      tags:
        - Role Assignments
      summary: List Role Assignments by scope filter
      description: List role assignments in the scope according to the given filter
      operationId: getFilteredRoleAssignmentByScopeList
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilterV2'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RoleAssignmentFilterV2'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: >-
            Paginated list of role assignments in the scope according to the
            given filter
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentAggregate
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleAssignmentAggregate
  /authz/api/roleassignments/validate:
    post:
      tags:
        - Role Assignments
      summary: Validate Role Assignment
      description: Check whether a proposed role assignment is valid.
      operationId: validateRoleAssignment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: This is the details of the role assignment for validation.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleAssignmentValidationRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RoleAssignmentValidationRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: This is the result of the role assignment validation request.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentValidationResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORoleAssignmentValidationResponse
  /authz/api/roles:
    get:
      tags:
        - Roles
      summary: List Roles
      description: List roles in the given scope
      operationId: getRoleList
      parameters:
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Search roles by name/identifier
          schema:
            type: string
        - name: harnessManaged
          in: query
          description: Filter role by being harness managed
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Paginated list of roles in the given scope
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleWithPrincipalCountResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseRoleWithPrincipalCountResponse
    post:
      tags:
        - Roles
      summary: Create Role
      description: Create a Custom Role in a scope
      operationId: postRole
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Role entity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Role'
          application/yaml:
            schema:
              $ref: '#/components/schemas/Role'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Created Role
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
  /authz/api/roles/{identifier}:
    get:
      tags:
        - Roles
      summary: Get Role
      description: Get a Role by identifier
      operationId: getRole
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Role
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Queried Role
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
    put:
      tags:
        - Roles
      summary: Update Role
      description: Update a Custom Role by identifier
      operationId: putRole
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Role
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Updated Role entity
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Role'
          application/yaml:
            schema:
              $ref: '#/components/schemas/Role'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Updated Role
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
    delete:
      tags:
        - Roles
      summary: Delete Role
      description: Delete a Custom Role in a scope
      operationId: deleteRole
      parameters:
        - name: identifier
          in: path
          description: Identifier of the Role
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzFailure'
        '403':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AccessDeniedError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthzError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuthzError'
        default:
          description: Deleted Role
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORoleResponse'
  /ccm/api/anomaly/summary:
    post:
      tags:
        - Cloud Cost Anomalies
      summary: List Anomalies
      description: Fetch the result of anomaly query
      operationId: getAnomaliesSummary
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly Filter Properties
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Anomaly Query result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalySummary'
  /ccm/api/anomaly/filter-values:
    post:
      tags:
        - Cloud Cost Anomalies
      summary: >-
        Returns the list of distinct values for all the specified Anomaly
        fields.
      description: >-
        Returns the list of distinct values for all the specified Anomaly
        fields.
      operationId: anomalyFilterValues
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: List of Anomaly columns whose unique values will be fetched
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns the list of distinct values for all the specified Anomaly
            fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListFilterStats'
  /ccm/api/anomaly:
    post:
      tags:
        - Cloud Cost Anomalies
      summary: List Anomalies
      description: Fetch the list of anomalies reported according to the filters applied
      operationId: listAnomalies
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          schema:
            type: string
      requestBody:
        description: Perspective & Anomaly Filter Properties
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of Anomalies
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyData'
  /ccm/api/anomaly/listIgnoredAnomalies:
    post:
      tags:
        - Cloud Cost Anomalies
      summary: List ignore list anomalies
      description: >-
        Fetch the list of anomalies present in the ignore list according to the
        filters applied
      operationId: listIgnoredAnomalies
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly Filter Properties
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of anomalies present in ignore list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyData'
  /ccm/api/anomaly/perspective/{perspectiveId}:
    post:
      tags:
        - Cloud Cost Anomalies
      summary: List Anomalies for Perspective
      description: Fetch anomalies for perspective
      operationId: listPerspectiveAnomalies
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: path
          description: Unique identifier for perspective
          required: true
          schema:
            type: string
      requestBody:
        description: Perspective Query
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PerspectiveQueryDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of Anomalies for Perspective
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListPerspectiveAnomalyData'
  /ccm/api/anomaly/feedback:
    put:
      tags:
        - Cloud Cost Anomalies
      summary: Report Anomaly feedback
      description: Mark an anomaly as true/false anomaly
      operationId: reportAnomalyFeedback
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          description: Unique identifier for perspective
          required: true
          schema:
            type: string
      requestBody:
        description: Feedback
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyFeedback'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Report Anomaly Feedback
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/bi-dashboards:
    get:
      tags:
        - Cloud Cost BI Dashboards
      summary: List all the BI Dashboards for CCM
      description: List all the Cloud Cost BI Dashboards.
      operationId: listBIDashboards
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of all BI Dashboards
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListBIDashboardSummary'
  /ccm/api/budgetGroups/{id}:
    get:
      tags:
        - Cloud Cost Budget Groups
      summary: Fetch Budget group details
      description: >-
        Fetch details of a Cloud Cost Budget group for the given Budget group
        ID.
      operationId: getBudgetGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get a Budget group by it's identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBudgetGroup'
    put:
      tags:
        - Cloud Cost Budget Groups
      summary: Update an existing budget group
      description: >-
        Update an existing Cloud Cost Budget group for the given Budget group
        ID.
      operationId: updateBudgetGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget group
          required: true
          schema:
            type: string
      requestBody:
        description: The Budget object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BudgetGroup'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a generic string message when the operation is successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
    delete:
      tags:
        - Cloud Cost Budget Groups
      summary: Delete a budget group
      description: Delete a Cloud Cost Budget group for the given Budget group ID.
      operationId: deleteBudgetGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a boolean whether the operation was successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/budgetGroups/aggregatedAmount:
    post:
      tags:
        - Cloud Cost Budget Groups
      summary: Get aggregated amount for given budget groups/budgets
      description: Returns list of value dataPoints specifying aggregated amount
      operationId: getLastPeriodCost
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: areChildEntitiesBudgets
          in: query
          required: true
          schema:
            type: boolean
      requestBody:
        description: List of child budgets/budget groups
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns list of value dataPoints specifying aggregated amount
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListValueDataPoint'
  /ccm/api/budgetGroups/summary:
    get:
      tags:
        - Cloud Cost Budget Groups
      summary: Get list of budget and budget group summaries
      description: Returns list of budgetSummary
      operationId: getBudgetAndBudgetGroupsList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: budgetGroupId
          in: query
          schema:
            type: string
        - name: showAllEntities
          in: query
          required: true
          schema:
            type: boolean
        - name: budgetGroupSortType
          in: query
          description: Budget Group List Sort Type
          schema:
            type: string
            enum:
              - BUDGET_GROUP_AMOUNT
              - BUDGET_GROUP_NAME
              - BUDGET_GROUP_ACTUAL_COST
              - BUDGET_GROUP_FORECASTED_COST
        - name: sortOrder
          in: query
          description: Budget Group List Sort Order
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns list of value dataPoints specifying cost
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListBudgetSummary'
  /ccm/api/budgetGroups:
    get:
      tags:
        - Cloud Cost Budget Groups
      summary: List all the Budget groups
      description: List all the Cloud Cost Budget Groups for an account.
      operationId: listBudgetGroups
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: budgetGroupSortType
          in: query
          description: Budget Group List Sort Type
          schema:
            type: string
            enum:
              - BUDGET_GROUP_AMOUNT
              - BUDGET_GROUP_NAME
              - BUDGET_GROUP_ACTUAL_COST
              - BUDGET_GROUP_FORECASTED_COST
        - name: sortOrder
          in: query
          description: Budget Group List Sort Order
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of all Budget groups
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListBudgetGroup'
    post:
      tags:
        - Cloud Cost Budget Groups
      summary: Create a Budget Group
      description: >-
        Create a Budget group to set and receive alerts when your costs exceed
        (or are forecasted to exceed) your budget group amount.
      operationId: createBudgetGroup
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Budget Group definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BudgetGroup'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the ID string of the new Budget group created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/budgets/{id}:
    get:
      tags:
        - Cloud Cost Budgets
      summary: Fetch Budget details
      description: Fetch details of a Cloud Cost Budget for the given Budget ID.
      operationId: getBudget
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get a Budget by it's identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBudget'
    put:
      tags:
        - Cloud Cost Budgets
      summary: Update an existing budget
      description: Update an existing Cloud Cost Budget for the given Budget ID.
      operationId: updateBudget
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      requestBody:
        description: The Budget object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Budget'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a generic string message when the operation is successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
    post:
      tags:
        - Cloud Cost Budgets
      summary: Clone a budget
      description: Clone a Cloud Cost Budget using the given Budget ID.
      operationId: cloneBudget
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
        - name: cloneName
          in: query
          description: Name of the new budget
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns the identifier string of the new Budget created using clone
            operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
    delete:
      tags:
        - Cloud Cost Budgets
      summary: Delete a budget
      description: Delete a Cloud Cost Budget for the given Budget ID.
      operationId: deleteBudget
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a text message whether the operation was successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/budgets/{id}/costDetails:
    get:
      tags:
        - Cloud Cost Budgets
      summary: Fetch the cost details of a Budget
      description: Fetch the cost details of a Cloud Cost Budget for the given Budget ID.
      operationId: getCostDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the Budget
          required: true
          schema:
            type: string
        - name: breakdown
          in: query
          description: MONTHLY/YEARLY breakdown. The default value is YEARLY
          schema:
            type: string
            description: Whether the Yearly budget breakdown is yearly or monthly
            enum:
              - YEARLY
              - MONTHLY
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the cost data of a Budget
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBudgetData'
  /ccm/api/budgets/perspectiveBudgets:
    get:
      tags:
        - Cloud Cost Budgets
      summary: List all the Budgets associated with a Perspective
      description: List all the Cloud Cost Budgets associated for the given Perspective ID.
      operationId: listBudgetsForPerspective
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Unique identifier for the Perspective
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of Budgets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListBudget'
  /ccm/api/budgets:
    get:
      tags:
        - Cloud Cost Budgets
      summary: List all the Budgets
      description: List all the Cloud Cost Budgets.
      operationId: listBudgets
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: budgetSortType
          in: query
          description: Budget List Sort Type
          schema:
            type: string
            enum:
              - BUDGET_AMOUNT
              - NAME
              - ACTUAL_COST
              - FORECASTED_COST
        - name: sortOrder
          in: query
          description: Budget List Sort Order
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of all Budgets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListBudget'
    post:
      tags:
        - Cloud Cost Budgets
      summary: Create a Budget
      description: >-
        Create a Budget to set and receive alerts when your costs exceed (or are
        forecasted to exceed) your budget amount.
      operationId: createBudget
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Budget definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Budget'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the ID string of the new Budget created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/business-mapping/{id}:
    get:
      tags:
        - Cloud Cost Cost Categories
      summary: Fetch details of a Cost category
      description: Fetch details of a Cost category for the given Cost category ID.
      operationId: getBusinessMapping
      parameters:
        - name: accountIdentifier
          in: query
          schema:
            type: string
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns a Cost category object with all the cost and shared buckets,
            returns null if no Cost category exists for that particular
            identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBusinessMapping'
    delete:
      tags:
        - Cloud Cost Cost Categories
      summary: Delete a Cost category
      description: Delete a Cost category for the given Cost category ID.
      operationId: deleteBusinessMapping
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            A string text message whether the delete was successful or not. If
            the cost category is used in the perspective, the deletion will fail
            and it will send you the IDs of all the linked perspectives
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseCostCategoryDeleteDTO'
  /ccm/api/business-mapping/filter-panel:
    get:
      tags:
        - Cloud Cost Cost Categories
      summary: Get (cost-categories)/(cost buckets) for recommendation filter panel
      description: Get (cost-categories)/(cost buckets) for recommendation filter panel
      operationId: getBusinessMappingForFilterPanel
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: costCategory
          in: query
          schema:
            type: string
        - name: search
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of cost-category/cost-buckets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ccm/api/business-mapping:
    get:
      tags:
        - Cloud Cost Cost Categories
      summary: Return details of all the Cost categories
      description: Return details of all the Cost categories for the given account ID.
      operationId: getBusinessMappingList
      parameters:
        - name: accountIdentifier
          in: query
          schema:
            type: string
        - name: searchKey
          in: query
          schema:
            type: string
        - name: sortType
          in: query
          schema:
            type: string
            enum:
              - NAME
              - LAST_EDIT
        - name: sortOrder
          in: query
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
        - name: limit
          in: query
          schema:
            type: integer
            format: int32
        - name: offset
          in: query
          schema:
            type: integer
            format: int32
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a List of Cost Categories
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBusinessMappingListDTO'
    put:
      tags:
        - Cloud Cost Cost Categories
      summary: Update a Cost category
      description: >-
        Update a Cost category. It accepts a BusinessMapping object and upserts
        it using the uuid mentioned in the definition.
      operationId: updateBusinessMapping
      parameters:
        - name: accountIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BusinessMapping'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Successfully updated the Business Mapping
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseString'
    post:
      tags:
        - Cloud Cost Cost Categories
      summary: Create Cost category
      description: >-
        Create Cost category that allows you to categorize based on business
        requirements and get a contextual view of your expenses
      operationId: createBusinessMapping
      parameters:
        - name: accountIdentifier
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BusinessMapping'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns a created Cost category object with all the cost and shared
            buckets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseBusinessMapping'
  /ccm/api/ccmK8sMeta:
    post:
      tags:
        - Cloud Cost K8S Connectors Metadata
      summary: Get CCM K8S Metadata
      description: 'Get CCM K8S Metadata '
      operationId: ccmK8sMeta
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Cost Access K8s connector identifiers
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CcmK8sMetaDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns list of connector identifiers with their health metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCcmK8sMetaInfoResponseDTO'
  /ccm/api/notificationSetting/v2:
    get:
      tags:
        - Cloud Cost Notification Settings v2
      summary: List notification settings
      description: List notification settings for the given account id.
      operationId: listNotificationSettingsV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of notification setting object for given account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListNotificationSetting'
    put:
      tags:
        - Cloud Cost Notification Settings v2
      summary: Update an existing notification setting
      description: Update an existing notification setting for the given perspective id.
      operationId: updateNotificationSettingV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Unique identifier for the notification setting
          required: true
          schema:
            type: string
      requestBody:
        description: Notification setting definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationSetting'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the updated notification setting object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONotificationSetting'
    post:
      tags:
        - Cloud Cost Notification Settings v2
      summary: Create a notification setting
      description: >-
        Create a notification setting for a perspective to receive cloud cost
        anomaly alerts.
      operationId: createNotificationSettingV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Notification Setting definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationSetting'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the Notification Setting object created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
    delete:
      tags:
        - Cloud Cost Notification Settings v2
      summary: Delete notification settings
      description: Delete notification settings for the given perspective id.
      operationId: deleteNotificationSettingsV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Unique identifier for the Perspective
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns boolean indicating whether deletion of notification settings
            for a perspective was successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/overview:
    get:
      tags:
        - Cloud Cost Overview
      summary: Fetch high level overview details about CCM feature.
      description: Fetch high level overview details about CCM feature.
      operationId: getCCMOverview
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: Start time of the period
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          description: End time of the period
          required: true
          schema:
            type: integer
            format: int64
        - name: groupBy
          in: query
          description: Group by period
          required: true
          schema:
            type: string
            enum:
              - HOUR
              - DAY
              - MONTH
              - WEEK
              - QUARTER
              - YEAR
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns a CEView object containing CCM Overview details(Total cost,
            cost breakdown by day, and total number of recommendations for a
            give time range)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCCMOverview'
  /ccm/api/anomaly/v2/comment:
    get:
      tags:
        - Anomaly Comments
      summary: List anomaly comments
      description: List comments for the given anomaly
      operationId: listAnomalyComments
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          required: true
          schema:
            type: string
      responses:
        default:
          description: List anomaly comments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyComment'
    post:
      tags:
        - Anomaly Comments
      summary: Save anomaly comment
      description: Save comment for the given anomaly
      operationId: saveAnomalyComment
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Comment details
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyComment'
        required: true
      responses:
        default:
          description: Save anomaly comment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/anomaly/v2/drill-down/cost/time-series:
    get:
      tags:
        - Cloud cost anomaly details
      summary: Get anomaly cost time-series data
      description: Get actual cost time-series data for given anomaly.
      operationId: getAnomalyCostTimeSeriesData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly cost time-series data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyCostTimeSeries'
  /ccm/api/anomaly/v2/drill-down:
    get:
      tags:
        - Cloud cost anomaly details
      summary: Get anomaly details
      description: Get details about the given cloud cost anomaly
      operationId: getAnomalyDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAnomalyData'
  /ccm/api/anomaly/v2/drill-down/forecast/cost/time-series:
    get:
      tags:
        - Cloud cost anomaly details
      summary: Get anomaly forecast cost time-series data
      description: Get forecasted cost time-series data for a given anomaly.
      operationId: getAnomalyForecastCostTimeSeriesData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly forecast cost time-series data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListAnomalyForecastCostTimeSeries
  /ccm/api/anomaly/v2/drill-down/resource/cost/time-series:
    get:
      tags:
        - Cloud cost anomaly details
      summary: Get anomaly resource cost time-series data
      description: Get actual cost time-series data for given resource.
      operationId: getAnomalyResourceCostTimeSeriesData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
        - name: resource
          in: query
          schema:
            type: string
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly resource cost time-series data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListAnomalyResourceCostTimeSeries
  /ccm/api/anomaly/v2/drill-down/list:
    get:
      tags:
        - Cloud cost anomaly details
      summary: Get anomaly resource list
      description: >-
        Get details about the top contributing resources for the given cloud
        cost anomaly
      operationId: getAnomalyResourceList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly resource list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyResourceDetails'
  /ccm/api/anomaly/v2/list:
    post:
      tags:
        - Cloud cost anomalies v2
      summary: Get anomalies list
      description: Get anomalies list
      operationId: getAnomaliesList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomalies list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListAnomalyData'
  /ccm/api/anomaly/v2/metrics:
    post:
      tags:
        - Cloud cost anomalies v2
      summary: Get anomaly metrics
      description: Get metrics for different types of anomalies
      operationId: getAnomalyMetrics
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly metrics
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAnomalyOverview'
  /ccm/api/anomaly/v2/summary:
    post:
      tags:
        - Cloud cost anomalies v2
      summary: Get anomaly metrics summary
      description: Get summary of anomaly metrics
      operationId: getAnomalyMetricsSummary
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly metrics
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAnomalyMetrics'
  /ccm/api/anomaly/v2/metrics/time-series:
    post:
      tags:
        - Cloud cost anomalies v2
      summary: Get anomaly metrics time-series
      description: Get metrics for different types of anomalies per day
      operationId: getAnomalyMetricsTimeSeries
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get anomaly metrics time-series
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTreeMapLongAnomalyOverview'
  /ccm/api/anomaly/v2/mean-resolution-time:
    post:
      tags:
        - Cloud cost anomalies v2
      summary: Get mean resolution time
      description: Get mean resolution time
      operationId: getMeanResolutionTime
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Anomaly request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnomalyRequestDTO'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get mean resolution time
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTODouble'
  /ccm/api/anomaly/v2/update/feedback:
    put:
      tags:
        - Cloud cost anomalies v2
      summary: Update feedback for given anomaly
      description: Update feedback for given anomaly
      operationId: updateAnomalyFeedback
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
        - name: feedback
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Update feedback for given anomaly
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/anomaly/v2/update/status:
    put:
      tags:
        - Cloud cost anomalies v2
      summary: Update status for given anomaly
      description: Update status for given anomaly
      operationId: updateAnomalyStatus
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: anomalyId
          in: query
          schema:
            type: string
        - name: status
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Update status for given anomaly
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/costdetails/overview:
    post:
      tags:
        - Cloud Cost Details
      summary: Returns an overview of the cost
      description: >-
        Returns total cost, cost trend, and the time period based on the
        specified query parameters.
      operationId: costdetailoverview
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Perspective identifier of the cost details
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: >-
            Start time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today - 7days
          schema:
            type: string
        - name: endTime
          in: query
          description: >-
            End time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today
          schema:
            type: string
        - name: isClusterHourlyData
          in: query
          description: >-
            To fetch cluster hourly data in case of cluster perspective.
            Defaults to false
          schema:
            type: boolean
        - name: useCostCategoryStampedData
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Cost details query parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CostDetailsQueryParams'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns total cost, cost trend, and the time period based on the
            specified query parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCostOverview'
  /ccm/api/costdetails/clusterData:
    post:
      tags:
        - Cloud Cost Details
      summary: Returns cluster data in a tabular format
      description: Returns cluster data based on the specified query parameters.
      operationId: clusterData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: >-
            Start time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today - 7days
          schema:
            type: string
        - name: endTime
          in: query
          description: >-
            End time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today
          schema:
            type: string
        - name: isClusterHourlyData
          in: query
          description: >-
            To fetch cluster hourly data in case of cluster perspective.
            Defaults to false
          schema:
            type: boolean
        - name: useCostCategoryStampedData
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Cost details query parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClusterCostDetailsQueryParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns cluster data in a tabular format based on the specified
            query parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListClusterCostDetails'
  /ccm/api/costdetails/tabularformat:
    post:
      tags:
        - Cloud Cost Details
      summary: Returns cost details in a tabular format
      description: >-
        Returns cost details in a tabular format based on the specified query
        parameters.
      operationId: costdetailtabular
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Perspective identifier of the cost details
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: >-
            Start time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today - 7days
          schema:
            type: string
        - name: endTime
          in: query
          description: >-
            End time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today
          schema:
            type: string
        - name: isClusterHourlyData
          in: query
          description: >-
            To fetch cluster hourly data in case of cluster perspective.
            Defaults to false
          schema:
            type: boolean
        - name: useCostCategoryStampedData
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Cost details query parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CostDetailsQueryParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns cost details in a tabular format based on the specified
            query parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPerspectiveEntityStatsData'
  /ccm/api/costdetails/timeseriesformat:
    post:
      tags:
        - Cloud Cost Details
      summary: Returns cost details in a time series format
      description: >-
        Returns cost details in a time series format based on the specified
        query parameters.
      operationId: costdetailttimeseries
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Perspective identifier of the cost details
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: >-
            Start time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today - 7days
          schema:
            type: string
        - name: endTime
          in: query
          description: >-
            End time of the cost details. Should use org.joda.time.DateTime
            parsable format. Example, '2022-01-31', '2022-01-31T07:54Z' or
            '2022-01-31T07:54:51.264Z'.  Defaults to Today
          schema:
            type: string
        - name: isClusterHourlyData
          in: query
          description: >-
            To fetch cluster hourly data in case of cluster perspective.
            Defaults to false
          schema:
            type: boolean
        - name: useCostCategoryStampedData
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Cost details query parameters.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CostDetailsQueryParams'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns cost details in a time series format based on the specified
            query parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPerspectiveTimeSeriesData'
  /ccm/api/externaldata/filesinfo:
    post:
      tags:
        - External Data Provider
      summary: Add a new external data file metadata
      description: Add a new external data file metadata
      operationId: AddNewExternalDataFileMetadata
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing external data object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExternalDataFilesDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns newly added external data file metadata information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExternalDataFiles'
  /ccm/api/externaldata/provider:
    post:
      tags:
        - External Data Provider
      summary: Create External Data Provider
      description: Create External Data Provider
      operationId: createExternalDataProvider
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Create External Data Provider Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExternalDataProviderDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns created External Data Provider
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExternalDataProvider'
  /ccm/api/externaldata/dataingestion:
    post:
      tags:
        - External Data Provider
      summary: Trigger data ingestion
      description: Trigger data ingestion
      operationId: triggerDataIngestion
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing list of invoice months for a provider
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalDataIngestionRequest'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: 'Data ingestion submission response '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExternalDataFiles'
  /ccm/api/externaldata/provider/{providerId}:
    delete:
      tags:
        - External Data Provider
      summary: Delete a provider
      description: Delete a external data provider given a idD.
      operationId: CcmdeleteProvider
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: providerId
          in: path
          description: Unique identifier for the rule
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/externaldata/filesinfo/{fileId}:
    put:
      tags:
        - External Data Provider
      summary: Update file metadata
      description: Update file metadata
      operationId: updateFileMetaData
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: fileId
          in: path
          description: Unique identifier for the rule
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing fileMetaData object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExternalDataFilesDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated Rule.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOExternalDataFiles'
    delete:
      tags:
        - External Data Provider
      summary: Delete data file and related metadata
      description: Delete data file and related metadata given an id.
      operationId: deleteDatafileAndMetadata
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: fileId
          in: path
          description: Unique identifier for the data file
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/externaldata/signedurl:
    get:
      tags:
        - External Data Provider
      summary: Get a signed url
      description: Get a signed url to upload external cost data.
      operationId: getSignedUrl
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier
          required: true
          schema:
            type: string
        - name: providerId
          in: query
          description: Unique identifier for the provider
          required: true
          schema:
            type: string
        - name: invoicePeriod
          in: query
          description: Invoice period in format YYYYMMDD-YYYYMMDD
          required: true
          schema:
            type: string
        - name: objectName
          in: query
          description: Name of the object to upload
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Successful retrieval of signed URL
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTO'
  /ccm/api/externaldata/provider/list:
    post:
      tags:
        - External Data Provider
      summary: get all external data providers
      description: 'get providers '
      operationId: get providers
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of external data providers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListExternalDataProvider'
  /ccm/api/externaldata/provider/filesinfo:
    post:
      tags:
        - External Data Provider
      summary: get all files info for list of providers
      description: listProvidersFileInfo
      operationId: listProvidersFileInfo
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing external data object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalDataProviderList'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns all files info for list of providers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringListExternalDataFiles'
  /ccm/api/governance/promptResources:
    get:
      tags:
        - AiEngine
      summary: Get supported prompt resources
      description: Get supported prompt resources for a given cloud provider
      operationId: getPromptResources
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          required: true
          schema:
            type: string
            enum:
              - AWS
              - AZURE
              - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get supported prompt resources for a given cloud provider
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetString'
  /ccm/api/governance/promptRules:
    get:
      tags:
        - AiEngine
      summary: Get sample prompt governance rules
      description: Get sample prompt rules for given cloud provider and resource type
      operationId: getPromptRules
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          required: true
          schema:
            type: string
            enum:
              - AWS
              - AZURE
              - GCP
        - name: resourceType
          in: query
          description: Resource Type
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Get sample prompt rules for given cloud provider and resource type
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListGovernancePromptRule'
  /ccm/api/governance/enforcementRecommendation/accept:
    put:
      tags:
        - Governance Enforcement Recommendation APIs
      summary: >-
        Accept governance rule enforcement recommendations for given enforcement
        recommendation ids.
      description: Accept governance rule enforcement recommendations.
      operationId: acceptEnforcementRecommendations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementRecommendationIds
          in: query
          description: Enforcement Recommendation Ids
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            True/false if governance rule enforcement recommendations are
            successfully accepted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ccm/api/governance/enforcementRecommendation/dismiss:
    put:
      tags:
        - Governance Enforcement Recommendation APIs
      summary: >-
        Dismiss governance rule enforcement recommendations for given
        enforcement recommendation ids.
      description: Dismiss governance rule enforcement recommendations.
      operationId: dismissEnforcementRecommendations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementRecommendationIds
          in: query
          description: Enforcement Recommendation Ids
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            True/false if governance rule enforcement recommendations are
            successfully dismissed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/enforcementRecommendation/details:
    get:
      tags:
        - Governance Enforcement Recommendation APIs
      summary: >-
        Get governance rule enforcement recommendation details for given
        enforcement recommendation id.
      description: Get governance rule enforcement recommendation details.
      operationId: enforcementRecommendationDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementRecommendationId
          in: query
          description: Enforcement Recommendation Id
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns Enforcement details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnforcementDetails'
  /ccm/api/governance/enforcementRecommendation/list:
    get:
      tags:
        - Governance Enforcement Recommendation APIs
      summary: List governance rule enforcement recommendations for given accountId.
      description: List governance rule enforcement recommendations.
      operationId: ruleEnforcementRecommendations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchKey
          in: query
          schema:
            type: string
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            format: int32
          example: 0
        - name: pageSize
          in: query
          description: Number of items per page
          schema:
            type: integer
            format: int32
          example: 20
        - name: sortType
          in: query
          schema:
            type: string
            enum:
              - NAME
        - name: sortOrder
          in: query
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return list of governance enforcement recommendations.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTORuleEnforcementRecommendationList
  /ccm/api/governance/enforcementRecommendation/update:
    put:
      tags:
        - Governance Enforcement Recommendation APIs
      summary: Update a governance rule enforcement recommendation.
      description: Update a governance rule enforcement recommendation.
      operationId: updateEnforcementRecommendation
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing rule enforcement recommendation object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RuleEnforcementRecommendation'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated governance rule enforcement recommendation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleEnforcementRecommendation'
  /ccm/api/governance/alert/clone:
    post:
      tags:
        - Governance Alert
      summary: Clone a governance alert rule with the given id
      description: Clone a governance alert rule with the given id
      operationId: CloneGovernanceAlertRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Newly created cloned governance alert rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGovernanceNotification'
  /ccm/api/governance/alert:
    put:
      tags:
        - Governance Alert
      summary: Update a existing governance alert rule
      description: Update a existing governance alert rule
      operationId: UpdateGovernanceAlertRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing governance alert rule object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GovernanceNotification'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated governance alert rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGovernanceNotification'
    post:
      tags:
        - Governance Alert
      summary: Create a new governance alert rule
      description: Create a new governance alert rule
      operationId: CreateNewGovernanceAlertRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing governance alert rule object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GovernanceNotification'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns newly created governance alert rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGovernanceNotification'
  /ccm/api/governance/alert/{id}:
    delete:
      tags:
        - Governance Alert
      summary: Delete a governance alert rule with the given id
      description: Delete a governance alert rule with the given id
      operationId: DeleteGovernanceAlertRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/alert/list:
    get:
      tags:
        - Governance Alert
      summary: List all governance alert rule(s)
      description: List all governance alert rule(s)
      operationId: GovernanceAlertRules
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of all governance alert rule(s)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListGovernanceNotification'
  /ccm/api/governance/alert/resourceTypes:
    get:
      tags:
        - Governance Alert
      summary: List all governance supported resource types
      description: List all governance supported resource types
      operationId: GovernanceResourceTypes
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          required: true
          schema:
            type: string
            enum:
              - AWS
              - AZURE
              - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of all governance supported resource types
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetString'
  /ccm/api/governance/alert/toggle:
    put:
      tags:
        - Governance Alert
      summary: Toggle a governance alert rule with the given id
      description: Toggle a governance alert rule with the given id
      operationId: ToggleGovernanceAlertRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          required: true
          schema:
            type: string
        - name: enableGovernanceAlertRule
          in: query
          description: Enable Governance Alert Rule
          required: true
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated governance alert rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGovernanceNotification'
  /ccm/api/governance/overview/dayWiseTotalEvaluations:
    post:
      tags:
        - Governance Overview
      summary: Return day wise total evaluations grouped by evaluation status.
      operationId: dayWiseTotalEvaluations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      requestBody:
        description: Request body with time filters
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/CCMTimeFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return day wise total evaluations grouped by evaluation status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringMapStringInteger'
  /ccm/api/governance/overview/totalNewEnforcementRecommendations:
    get:
      tags:
        - Governance Overview
      summary: Return total number of new enforcement recommendations.
      operationId: totalNewEnforcementRecommendations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return total number of new enforcement recommendations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOLong'
  /ccm/api/governance/overview/totalActiveEnforcements:
    get:
      tags:
        - Governance Overview
      summary: Return total number of active enforcements.
      operationId: totalActiveEnforcements
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return total number of active enforcements.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOLong'
  /ccm/api/governance/overview/totalEvaluations:
    get:
      tags:
        - Governance Overview
      summary: Return total number of evaluations.
      operationId: totalEvaluations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return total number of evaluations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOLong'
  /ccm/api/governance/overview/totalRealisedSavingsV2:
    post:
      tags:
        - Governance Overview
      summary: Return total realised Savings.
      operationId: totalRealisedSavingsV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      requestBody:
        description: Request body with time filters
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/CCMTimeFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return total realised Savings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTODouble'
  /ccm/api/governance/overview/totalRealisedSavingsGrouped:
    get:
      tags:
        - Governance Overview
      summary: Return total realised Savings grouped by cloud provider/resource type.
      operationId: totalRealisedSavingsGrouped
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Return total realised Savings grouped by cloud provider/resource
            type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringDouble'
  /ccm/api/governance/recommendationHealth:
    get:
      tags:
        - Governance Recommendation APIs
      summary: Return governance rule recommendation health summary.
      operationId: recommendationHealth
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleId
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return governance rule recommendation health summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleRecommendationSummary'
  /ccm/api/governance/recommendation/{recommendationId}:
    get:
      tags:
        - Governance Recommendation APIs
      summary: Governance recommendation details
      operationId: getRuleRecommendation
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: recommendationId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns governance recommendation details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleExecutionList'
  /ccm/api/governance/recommendationHealth/list:
    post:
      tags:
        - Governance Recommendation APIs
      summary: Return list of governance rule recommendation health summary.
      operationId: listGovernanceRecommendationHealth
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Body to retrieve rule recommendation health
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RuleRecommendationHealthSummaryFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return list of governance rule recommendation health summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleRecommendationSummaryList'
  /ccm/api/governance/enforcement:
    put:
      tags:
        - RuleEnforcement
      summary: Update a Rule enforcement
      description: Update a Rule enforcement
      operationId: updateEnforcement
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing rule enforcement object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleEnforcementDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated Rule enforcement.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleEnforcement'
    post:
      tags:
        - RuleEnforcement
      summary: 'Add a new rule Enforcement '
      operationId: addRuleEnforcement
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Rule Enforcement object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleEnforcementDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns newly created rule enforcement.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleEnforcement'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleEnforcement'
  /ccm/api/governance/enforcement/{enforcementID}:
    delete:
      tags:
        - RuleEnforcement
      summary: Delete a rule enforcement
      description: Delete a Rule enforcement for the given a ID.
      operationId: deleteRuleEnforcement
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementID
          in: path
          description: Unique identifier for the rule enforcement
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/enforcement/count:
    post:
      tags:
        - RuleEnforcement
      summary: Fetch Rule Enforcements for given RuleIds/RuleSetIds
      description: Fetch Rule Enforcements for given RuleIds/RuleSetIds
      operationId: getRuleEnforcementCount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing enforcementCount object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnforcementCountDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of Rule Enforcements wrt given RuleIds/RuleSetIds
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnforcementCount'
  /ccm/api/governance/enforcement/details:
    get:
      tags:
        - RuleEnforcement
      summary: Get Rule Enforcement details for given Enforcement Id
      description: Get Rule Enforcement details
      operationId: enforcementDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementId
          in: query
          description: Enforcement Id
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns Enforcement details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEnforcementDetails'
  /ccm/api/governance/enforcement/list:
    get:
      tags:
        - RuleEnforcement
      summary: Fetch Rule Enforcements for account
      description: 'Fetch Rule Enforcement '
      operationId: getRuleEnforcement
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: searchKey
          in: query
          schema:
            type: string
        - name: page
          in: query
          description: Page number
          schema:
            type: integer
            format: int32
          example: 0
        - name: pageSize
          in: query
          description: Number of items per page
          schema:
            type: integer
            format: int32
          example: 20
        - name: sortType
          in: query
          schema:
            type: string
            enum:
              - NAME
              - LAST_UPDATED_AT
        - name: sortOrder
          in: query
          schema:
            type: string
            enum:
              - ASCENDING
              - DESCENDING
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of rules Enforcement
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleEnforcementList'
  /ccm/api/governance/enforcement/toggle:
    put:
      tags:
        - RuleEnforcement
      summary: Enable/Disable a Rule Enforcement for given Enforcement Id
      description: Toggle a Rule Enforcement
      operationId: toggleEnforcement
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enforcementId
          in: query
          description: Enforcement Id
          schema:
            type: string
        - name: enableEnforcement
          in: query
          description: Enable Enforcement
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: True/false if Rule Enforcement successfully toggled
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/execution/export:
    post:
      tags:
        - Rule Executions
      summary: Export evaluations data
      description: Export evaluations data
      operationId: exportEvaluations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing evaluationIds list
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EvaluationExportRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns signed URL for download
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEvaluationExportResponseDTO'
  /ccm/api/governance/execution/list:
    post:
      tags:
        - Rule Executions
      summary: Fetch RuleExecutions for account
      description: Fetch RuleExecutions
      operationId: getRuleExecutions
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing CreateRuleExecutionFilterDTO object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleExecutionFilterDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of RuleExecution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleExecutionList'
  /ccm/api/governance/execution/filter-value:
    get:
      tags:
        - Rule Executions
      summary: Rule Execution Filter Values
      description: Rule Execution Filter Values
      operationId: getRuleExecutionsFilterValues
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns filter values for Rule Execution.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilterValues'
  /ccm/api/governance/execution/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Get rule execution
      operationId: getRuleExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleExecution'
  /ccm/api/governance/actionedResources/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Return actioned resources for a rule execution
      operationId: getRuleExecutionActionedResources
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return actioned resources for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
      deprecated: true
  /ccm/api/governance/execution/details/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: 'Resources/logs for a rule execution '
      operationId: getRuleExecutionDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
        - name: fileType
          in: query
          description: Select filetype, by default RESOURCE file will be selected
          schema:
            type: string
            enum:
              - RESOURCE
              - LOG
              - RULE_YAML
              - ACTIONED_RESOURCE
              - GRANULAR_RESOURCE
        - name: resourceId
          in: query
          schema:
            type: string
        - name: subRuleName
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return resources/logs for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
  /ccm/api/governance/granularStatus/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Return resource for a rule execution
      operationId: getRuleExecutionGranularStatus
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
        - name: resourceId
          in: query
          schema:
            type: string
        - name: subRuleName
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return resource for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
      deprecated: true
  /ccm/api/governance/logs/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Return logs for a rule execution
      operationId: getRuleExecutionLogs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return logs for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
      deprecated: true
  /ccm/api/governance/ruleYaml/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Return governance rule yaml for a rule execution
      operationId: getRuleExecutionRuleYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return governance rule yaml for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
      deprecated: true
  /ccm/api/governance/status/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Return resources for a rule execution
      operationId: getRuleExecutionStatus
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return resources for a rule execution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListSubRuleResponseDetails'
      deprecated: true
  /ccm/api/governance/execution/ruleLastExecution:
    post:
      tags:
        - Rule Executions
      summary: Find last execution given rules list
      description: Find last execution given rules list
      operationId: getRuleLastExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing list of rule ids
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of RuleExecutions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListRuleExecution'
  /ccm/api/governance/execution/refreshCost/{ruleExecutionId}:
    get:
      tags:
        - Rule Executions
      summary: Refresh cost for a rule execution
      operationId: refreshCostForRuleExecution
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleExecutionId
          in: path
          required: true
          schema:
            type: string
      responses:
        '202':
          description: Job enqueued to refresh cost for a rule execution
          content:
            application/json: {}
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
  /ccm/api/governance/ruleClone:
    post:
      tags:
        - Rule
      summary: Clone a rule
      description: Clone a Rule with the given ID.
      operationId: CloneRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Rule uuid
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloneRuleDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Newly Created Cloned Rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORule'
  /ccm/api/governance/rule:
    put:
      tags:
        - Rule
      summary: Update a Rule
      description: Update a Rule
      operationId: updateRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing rule object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Updated Rule.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORule'
    post:
      tags:
        - Rule
      summary: Add a rule
      description: Create a new governance rule.
      operationId: CreateNewRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Rule object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns newly created rule
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORule'
  /ccm/api/governance/rule/{ruleID}:
    delete:
      tags:
        - Rule
      summary: Delete a rule
      description: Delete a Rule with the given ID.
      operationId: deleteRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleID
          in: path
          description: Unique identifier for the rule
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/enqueue:
    post:
      tags:
        - Rule
      summary: Enqueue jobs for evaluation.
      description: Enqueue jobs for evaluation.
      operationId: enqueueGovernanceJob
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Request body for queuing the governance job
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GovernanceJobEnqueueDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns evaluation id of jobs which are enqueued.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOGovernanceEnqueueResponseDTO'
  /ccm/api/governance/enqueueAdhocV2:
    post:
      tags:
        - Rule
      summary: Simple Request to enqueue rule for execution
      description: Simple Request to enqueue rule for execution
      operationId: simpleEnqueueAdhocGovernanceRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
      requestBody:
        description: Request body for queuing the governance rule for execution
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GovernanceAdhocEnqueueDTOV2'
        required: true
      responses:
        '202':
          description: >-
            Enqueued governance rule for evaluation and return list evaluation
            ids
          content:
            application/json: {}
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
  /ccm/api/governance/rule/costCoRelationSupportedResources:
    get:
      tags:
        - Rule
      summary: List resources for which cost co-relation is supported.
      description: List resources for which cost co-relation is supported.
      operationId: costCoRelationSupportedResources
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return List of resources for which cost co-relation is supported.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSetString'
  /ccm/api/governance/ruleSchema:
    get:
      tags:
        - Rule
      summary: Custodian Schema
      description: Get custodian schema for governance rule validation
      operationId: governanceRuleSchema
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Custodian Governance Rule Schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/governance/rule/list:
    post:
      tags:
        - Rule
      summary: Fetch rules for account
      description: 'Fetch rules '
      operationId: getPolicies
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: RuleNamePattern
          in: query
          description: Search by Rule name pattern
          schema:
            type: string
      requestBody:
        description: Request body containing rule object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of rules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleList'
  /ccm/api/governance/governanceTargetList:
    get:
      tags:
        - Rule
      summary: Governance Targets
      description: Get targets with governance enabled and valid permission
      operationId: governanceTargetList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: view
          in: query
          description: View governance target list
          schema:
            type: boolean
        - name: cloudProvider
          in: query
          description: Cloud Provider
          required: true
          schema:
            type: string
            enum:
              - AWS
              - AZURE
              - GCP
        - name: onlyTargetIds
          in: query
          description: Only Target ids
          schema:
            type: boolean
        - name: isDryRun
          in: query
          description: Dry Run
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: List of Governance Targets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMapStringString'
  /ccm/api/governance/regions:
    get:
      tags:
        - Rule
      summary: List of Regions for Aws/Azure
      description: List Aws/Azure Regions for filtering resources.
      operationId: regions
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: cloudProvider
          in: query
          description: Cloud Provider
          required: true
          schema:
            type: string
            enum:
              - AWS
              - AZURE
              - GCP
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Return List of Aws/Azure Regions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ccm/api/governance/rule/toggleForRecommendation:
    put:
      tags:
        - Rule
      summary: Enable/Disable a custom Rule to be considered for recommendation
      description: Toggle a Rule for Recommendation
      operationId: toggleForRecommendation
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleId
          in: query
          description: Rule Id
          schema:
            type: string
        - name: enableRuleForRecommendation
          in: query
          description: Enable rule for Recommendation
          schema:
            type: boolean
      requestBody:
        description: List of target IDs to be associated with the rule
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ToggleForRecommendationRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: True/false if toggle is successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORule'
  /ccm/api/governance/ruleValidate:
    post:
      tags:
        - Rule
      summary: Validate Governance Rule
      description: Validate governance rule for syntactical errors.
      operationId: validateGovernanceRule
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Rule with set rulesYaml to validate
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          content:
            application/json: {}
  /ccm/api/governance/ruleSet:
    put:
      tags:
        - Rule Sets
      summary: Update a Rule set
      description: Update a Rule set
      operationId: updateRuleSet
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Rule Set object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleSetDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: update a existing Rule Set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleSet'
    post:
      tags:
        - Rule Sets
      summary: 'Add a rule Set '
      operationId: addRuleSet
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing rule Set object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleSetDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns newly created rule Set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleSet'
  /ccm/api/governance/ruleSet/{ruleSetId}:
    delete:
      tags:
        - Rule Sets
      summary: Delete a rule set
      description: Delete a Rule set for the given a ID.
      operationId: deleteRuleSet
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: ruleSetId
          in: path
          description: Unique identifier for the rule
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/governance/ruleSet/list:
    post:
      tags:
        - Rule Sets
      summary: Fetch rule sets for account
      description: List all rule sets
      operationId: listRuleSets
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing rule set object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRuleSetFilterDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of rule sets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORuleSetList'
  /ccm/api/perspectiveFolders/create:
    post:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Create a Perspective folder
      description: Create a Perspective Folder.
      operationId: createPerspectiveFolder
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing Perspective's CEViewFolder object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePerspectiveFolderDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a created CEViewFolder object with all its details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEViewFolder'
  /ccm/api/perspectiveFolders/{folderId}:
    delete:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Delete a folder
      description: Delete a Folder for the given Folder ID.
      operationId: deleteFolder
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: folderId
          in: path
          description: Unique identifier for the Perspective folder
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A boolean whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/perspectiveFolders:
    get:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Fetch folders for an account
      description: Fetch folders given an accountId
      operationId: getFolders
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: folderNamePattern
          in: query
          description: Search by folder name pattern
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of CEViewFolders
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListCEViewFolder'
    put:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Update a folder
      description: Update a folder
      operationId: updateFolder
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing ceViewFolder object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CEViewFolder'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: CEViewFolder object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEViewFolder'
  /ccm/api/perspectiveFolders/{folderId}/perspectives:
    get:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Return details of all the Perspectives
      description: >-
        Return details of all the Perspectives for the given account ID and
        folder
      operationId: getAllFolderPerspectives
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: folderId
          in: path
          description: Unique identifier for folder
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a List of Perspectives
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListPerspective'
  /ccm/api/perspectiveFolders/movePerspectives:
    post:
      tags:
        - Cloud Cost Perspectives Folders
      summary: Move a Perspective
      description: Move a perspective from a folder to another.
      operationId: movePerspectives
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing perspectiveIds to be moved and newFolderId
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MovePerspectiveDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the new CEView object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListCEView'
  /ccm/api/perspectiveReport/{accountIdentifier}:
    get:
      tags:
        - Cloud Cost Perspective Reports
      summary: Fetch details of a cost Report
      description: Fetch cost Report details for the given Report ID or a Perspective ID.
      operationId: getReportSetting
      parameters:
        - name: perspectiveId
          in: query
          description: Unique identifier for the Perspective
          schema:
            type: string
        - name: reportId
          in: query
          description: Unique identifier for the Report
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a list of Report Schedules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListCEReportSchedule'
    put:
      tags:
        - Cloud Cost Perspective Reports
      summary: Update a cost Perspective Report
      description: Update cost Perspective Reports.
      operationId: updateReportSetting
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CEReportSchedule object to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CEReportSchedule'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a list of Report Schedules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListCEReportSchedule'
    post:
      tags:
        - Cloud Cost Perspective Reports
      summary: Create a schedule for a Report
      description: Create a report schedule for the given Report ID or a Perspective ID.
      operationId: createReportSetting
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CEReportSchedule object to be saved
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CEReportSchedule'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a list of Report Schedules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListCEReportSchedule'
    delete:
      tags:
        - Cloud Cost Perspective Reports
      summary: Delete cost Perspective report
      description: >-
        Delete cost Perspective Report for the given Report ID or a Perspective
        ID.
      operationId: deleteReportSetting
      parameters:
        - name: reportId
          in: query
          description: Unique identifier for the Report
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Unique identifier for the Perspective
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a generic string message when the operation is successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/perspectiveReport/getAllReports:
    post:
      tags:
        - Cloud Cost Perspective Reports
      summary: Fetch cost Report details accessible to a user
      description: Fetch cost Report details accessible to a user.
      operationId: getAllReports
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Filters for perspective reports
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PerspectiveReportsFiltersDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a list of Report Schedules
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEReportScheduleResponseDTO'
  /ccm/api/perspective:
    get:
      tags:
        - Cloud Cost Perspectives
      summary: Fetch details of a Perspective
      description: Fetch details of a Perspective for the given Perspective ID.
      operationId: getPerspective
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Unique identifier for the Perspective
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns a CEView object with all the rules and filters, returns null
            if no Perspective exists for that particular identifier
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEView'
    put:
      tags:
        - Cloud Cost Perspectives
      summary: Update a Perspective
      description: >-
        Update a Perspective. It accepts a CEView object and upserts it using
        the uuid mentioned in the definition.
      operationId: updatePerspective
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: updateTotalCost
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Perspective's CEView object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CEView'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Upserted CEView object with all the rules and filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEView'
    post:
      tags:
        - Cloud Cost Perspectives
      summary: Create a Perspective
      description: >-
        Create a Perspective. You can set the clone parameter as true to clone a
        Perspective.
      operationId: createPerspective
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: clone
          in: query
          description: Set the clone parameter as true to clone a Perspective.
          required: true
          schema:
            type: boolean
        - name: updateTotalCost
          in: query
          schema:
            type: boolean
            default: true
      requestBody:
        description: Request body containing Perspective's CEView object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CEView'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a created CEView object with all the rules and filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCEView'
    delete:
      tags:
        - Cloud Cost Perspectives
      summary: Delete a Perspective
      description: Delete a Perspective for the given Perspective ID.
      operationId: deletePerspective
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: Unique identifier for the Perspective
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: A string text message whether the delete was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /ccm/api/perspective/getAllPerspectives:
    get:
      tags:
        - Cloud Cost Perspectives
      summary: Return details of all the Perspectives
      description: Return details of all the Perspectives for the given account ID.
      operationId: getAllPerspectives
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of perspectives to be shown
          required: true
          schema:
            type: integer
            format: int32
            default: 20
        - name: pageNo
          in: query
          description: Number of records to be skipped
          required: true
          schema:
            type: integer
            format: int32
            default: 0
        - name: searchKey
          in: query
          description: Characters in search bar
          schema:
            type: string
        - name: sortType
          in: query
          description: ' sorting filters in UI'
          schema:
            type: string
            default: TIME
            enum:
              - TIME
              - COST
              - CLUSTER_COST
              - NAME
        - name: sortOrder
          in: query
          description: sorting order
          schema:
            type: string
            default: DESCENDING
            enum:
              - ASCENDING
              - DESCENDING
        - name: cloudFilters
          in: query
          description: filters for clouds and clusters
          schema:
            type: array
            items:
              type: string
              enum:
                - AWS
                - AZURE
                - GCP
                - CLUSTER
                - DEFAULT
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a List of Perspectives
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPerspectiveData'
  /ccm/api/perspective/lastPeriodCost:
    get:
      tags:
        - Cloud Cost Perspectives
      summary: Get the last period cost for a Perspective
      description: Get last period cost for a Perspective
      operationId: getLastPeriodCost_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: The Perspective identifier for which we want the cost
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: The Start time (timestamp in millis) for the current period
          required: true
          schema:
            type: integer
            format: int64
        - name: period
          in: query
          description: >-
            The period (DAILY, WEEKLY, MONTHLY, QUARTERLY, YEARLY) for which we
            want the cost
          required: true
          schema:
            type: string
            enum:
              - DAILY
              - WEEKLY
              - MONTHLY
              - QUARTERLY
              - YEARLY
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a number having the cost of last period
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTODouble'
  /ccm/api/perspective/lastYearMonthlyCost:
    get:
      tags:
        - Cloud Cost Perspectives
      summary: Get the last twelve month cost for a Perspective
      description: Get last twelve month cost for a Perspective
      operationId: getLastYearMonthlyCost
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: perspectiveId
          in: query
          description: The Perspective identifier for which we want the cost
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          description: The Start time (timestamp in millis) for the current period
          required: true
          schema:
            type: integer
            format: int64
        - name: period
          in: query
          description: Only support for YEARLY budget period
          required: true
          schema:
            type: string
            enum:
              - DAILY
              - WEEKLY
              - MONTHLY
              - QUARTERLY
              - YEARLY
        - name: type
          in: query
          description: Only support for PREVIOUS_PERIOD_SPEND budget type
          required: true
          schema:
            type: string
            description: >-
              Whether the Budget is based on a specified amount or based on
              previous month's actual spend
            enum:
              - SPECIFIED_AMOUNT
              - PREVIOUS_MONTH_SPEND
              - PREVIOUS_PERIOD_SPEND
        - name: breakdown
          in: query
          description: Only support for MONTHLY breakdown
          required: true
          schema:
            type: string
            description: Whether the Yearly budget breakdown is yearly or monthly
            enum:
              - YEARLY
              - MONTHLY
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Return list of actual monthly budget cost and respective month in
            epoch
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListValueDataPoint'
  /ccm/api/recommendation/details/azure-vm:
    get:
      tags:
        - Cloud Cost Recommendations Details
      summary: Return Azure VM Recommendation
      description: >-
        Returns Azure VM Recommendation details for the given Recommendation
        identifier.
      operationId: azureVmRecommendationDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Azure VM Recommendation identifier.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the Azure VM Recommendation for the given identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOAzureVmRecommendation'
  /ccm/api/recommendation/details/ec2-instance:
    get:
      tags:
        - Cloud Cost Recommendations Details
      summary: Return EC2 Recommendation
      description: >-
        Returns EC2 Recommendation details for the given Recommendation
        identifier.
      operationId: ec2RecommendationDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: EC2 Recommendation identifier.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the EC2 Recommendation for the given identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOEC2InstanceRecommendation'
  /ccm/api/recommendation/details/ecs-service:
    get:
      tags:
        - Cloud Cost Recommendations Details
      summary: Return ECS Recommendation
      description: >-
        Returns ECS Recommendation details for the given Recommendation
        identifier.
      operationId: ecsRecommendationDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: ECS Recommendation identifier.
          required: true
          schema:
            type: string
        - name: from
          in: query
          description: >-
            Should use org.joda.time.DateTime parsable format. Example,
            '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'
            Defaults to Today-7days
          schema:
            type: string
        - name: to
          in: query
          description: >-
            Should use org.joda.time.DateTime parsable format. Example,
            '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'
            Defaults to Today
          schema:
            type: string
        - name: bufferPercentage
          in: query
          description: Buffer Percentage defaults to zero
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the ECS Recommendation for the given identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOECSRecommendationDTO'
  /ccm/api/recommendation/details/node-pool:
    get:
      tags:
        - Cloud Cost Recommendations Details
      summary: Return node pool Recommendation
      description: Returns node pool Recommendation details for the given identifier.
      operationId: nodeRecommendationDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Node pool Recommendation identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns node pool Recommendation details for the given identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTONodeRecommendationDTO'
  /ccm/api/recommendation/details/workload:
    get:
      tags:
        - Cloud Cost Recommendations Details
      summary: Return workload Recommendation
      description: >-
        Returns workload Recommendation details for the given Recommendation
        identifier.
      operationId: workloadRecommendationDetail
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Workload Recommendation identifier.
          required: true
          schema:
            type: string
        - name: from
          in: query
          description: >-
            Should use org.joda.time.DateTime parsable format. Example,
            '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'
            Defaults to Today-7days
          schema:
            type: string
        - name: to
          in: query
          description: >-
            Should use org.joda.time.DateTime parsable format. Example,
            '2022-01-31', '2022-01-31T07:54Z' or '2022-01-31T07:54:51.264Z'
            Defaults to Today
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the workload Recommendation for the given identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOWorkloadRecommendationDTO'
  /ccm/api/recommendation/overview/stats/applied:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: >-
        Returns Applied Recommendations statistics grouped by Resource type with
        total savings
      description: >-
        Returns the Applied Cloud Cost Recommendations statistics grouped by
        resource type with total savings.
      operationId: appliedRecommendationResourceStats
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the statistics of applied Recommendations.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListAppliedRecommendationResourceStatsDTO
  /ccm/api/recommendation/overview/change-state:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return void
      description: Mark recommendation as applied/open
      operationId: changeRecommendationState
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: recommendationId
          in: query
          required: true
          schema:
            type: string
        - name: state
          in: query
          required: true
          schema:
            type: string
            enum:
              - OPEN
              - APPLIED
              - IGNORED
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns void.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOVoid'
  /ccm/api/recommendation/overview/count:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return the number of Recommendations
      description: >-
        Returns the total number of Cloud Cost Recommendations based on the
        specified filters.
      operationId: recommendationsCount
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the count of all Recommendations available.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOInteger'
  /ccm/api/recommendation/overview/filter-values:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return the list of filter values for the Recommendations
      description: Returns the list of filter values for all the specified filters.
      operationId: recommendationFilterValues
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Recommendation Filter Values Body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterValues'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the values available for a filter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListFilterStats'
  /ccm/api/recommendation/overview/list:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return the list of Recommendations
      description: >-
        Returns the list of Cloud Cost Recommendations for the specified
        filters.
      operationId: listRecommendations
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of Recommendations available.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendations'
  /ccm/api/recommendation/overview/override-savings:
    put:
      tags:
        - Cloud Cost Recommendations
      summary: Return boolean
      description: Override  savings for recommendation
      operationId: overrideRecommendationSavings
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: recommendationId
          in: query
          required: true
          schema:
            type: string
        - name: overriddenSavings
          in: query
          required: true
          schema:
            type: number
            format: double
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns boolean
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/recommendation/overview/realized-savings:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return time series statistics for realized savings with date information
      description: >-
        Returns the time series statistics for realized savings from applied
        recommendations.
      operationId: realizedSavingsTimeSeries
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns the time series statistics for realized savings from applied
            recommendations.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListRecommendationRealizedSavingStatsDTO
  /ccm/api/recommendation/overview/resource-type/stats:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return Recommendations statistics Grouped on Resource Type
      description: >-
        Returns the Cloud Cost Recommendations statistics for the specified
        filters Grouped on Resource Type.
      operationId: recommendationResourceTypeStats
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns the statistics of all Recommendations available Grouped on
            Resource Type.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOListRecommendationResourceTypeStats
  /ccm/api/recommendation/overview/stats:
    post:
      tags:
        - Cloud Cost Recommendations
      summary: Return Recommendations statistics
      description: >-
        Returns the Cloud Cost Recommendations statistics for the specified
        filters.
      operationId: recommendationStats
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: CCM Recommendations filter body.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMRecommendationFilterProperties'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the statistics of all Recommendations available.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationOverviewStats'
  /ccm/api/recommendation/jira/create:
    post:
      tags:
        - Cloud Cost Recommendation Jira
      summary: Create jira for recommendation
      description: Create jira for recommendation
      operationId: createRecommendationJira
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing CCMJiraDetails
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMJiraCreateDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a created CCMJiraDetails object with all the jira details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCCMJiraDetails'
  /ccm/api/recommendation/jira/statuses:
    get:
      tags:
        - Cloud Cost Recommendation Jira
      summary: Get all jira statuses
      description: Get all jira statuses
      operationId: getJiraStatuses
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns applied preferences
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ccm/api/recommendation/preference:
    get:
      tags:
        - Cloud Cost Recommendation Preferences
      summary: Get applied preferences for given account
      description: Get applied preferences for given account
      operationId: getRecommendationPreferences
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns applied preferences
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationPreferenceDTO'
    put:
      tags:
        - Cloud Cost Recommendation Preferences
      summary: Update preference
      description: update preferences for your recommendations
      operationId: updatePreset
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Preference definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecommendationPreference'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns true or false
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/recommendation/preset/{id}:
    put:
      tags:
        - Cloud Cost Recommendation Presets
      summary: Update an existing preset
      description: Update an existing Recommendation Preset for the given Preset ID.
      operationId: updatePreset_1
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the budget
          required: true
          schema:
            type: string
      requestBody:
        description: The preset object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecommendationPreset'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a generic string message when the operation is successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
    delete:
      tags:
        - Cloud Cost Recommendation Presets
      summary: Delete a preset
      description: Delete a Recommendation preset for the given preset ID.
      operationId: deletePreset
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: id
          in: path
          description: Unique identifier for the preset
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a text message whether the operation was successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/recommendation/preset:
    get:
      tags:
        - Cloud Cost Recommendation Presets
      summary: Get all presets for given account
      description: Get all presets for given account
      operationId: getRecommendationPresets
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: resourceType
          in: query
          schema:
            type: string
            enum:
              - WORKLOAD
              - NODE_POOL
              - ECS_SERVICE
              - EC2_INSTANCE
              - GOVERNANCE
              - AZURE_INSTANCE
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns presets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListRecommendationPreset'
    post:
      tags:
        - Cloud Cost Recommendation Presets
      summary: Create a Preset
      description: Create a Preset to set preferences for your recommendations
      operationId: createPreset
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Preset definition
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecommendationPreset'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns true or false
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/recommendation/servicenow/create:
    post:
      tags:
        - Cloud Cost Recommendation Servicenow
      summary: Create servicenow ticket for recommendation
      description: Create Servicenow ticket for recommendation
      operationId: createRecommendationServicenowTicket
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing CCMServiceNowDetails
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CCMServiceNowCreateDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: >-
            Returns a created CCMServiceNowDetails object with all the
            servicenow ticket details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOCCMServiceNowDetails'
  /ccm/api/recommendation/tags:
    get:
      tags:
        - Cloud Cost Recommendation Tags
      summary: Get tags for given recommendation
      description: Get tags key value pairs for given recommendation
      operationId: getRecommendationTags
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: recommendationId
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns tags
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationTagDTO'
  /ccm/api/recommendation/tags/filter-panel:
    get:
      tags:
        - Cloud Cost Recommendation Tags
      summary: >-
        Get tag (keys)/(values for a particular tag key) for recommendation
        filter panel
      description: >-
        Get tag (keys)/(values for a particular tag key) for recommendation
        filter panel
      operationId: getTagsForFilterPanel
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: tagKey
          in: query
          schema:
            type: string
        - name: search
          in: query
          schema:
            type: string
        - name: limit
          in: query
          schema:
            type: integer
            format: int32
        - name: offset
          in: query
          schema:
            type: integer
            format: int32
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns List of tagKeys/tagValues
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOListString'
  /ccm/api/recommendation/ignore-list/add:
    post:
      tags:
        - Cloud Cost Recommendation Ignore List
      summary: Add resources to recommendations ignore list
      description: Add resources to recommendations ignore list
      operationId: addRecommendationsIgnoreList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing IgnoreList
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecommendationsIgnoreResourcesDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns ignore list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationsIgnoreList'
  /ccm/api/recommendation/ignore-list:
    get:
      tags:
        - Cloud Cost Recommendation Ignore List
      summary: Get resources in recommendations ignore list
      description: Get resources in recommendations ignore list
      operationId: getRecommendationsIgnoreList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns ignore list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationsIgnoreList'
  /ccm/api/recommendation/ignore-list/remove:
    post:
      tags:
        - Cloud Cost Recommendation Ignore List
      summary: Remove resources from recommendations ignore list
      description: Remove resources from recommendations ignore list
      operationId: removeRecommendationsIgnoreList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Request body containing IgnoreList
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RecommendationsIgnoreResourcesDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns ignore list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORecommendationsIgnoreList'
  /ccm/api/filters:
    get:
      tags:
        - Filter
      summary: List Filters
      description: Lists Filters for the given criteria.
      operationId: CcmgetFilterList
      parameters:
        - name: pageIndex
          in: query
          description: >-
            Page number of navigation. If left empty, default value of 0 is
            assumed.
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page. If left empty, default value of 100 is
            assumed
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
        - name: searchTerm
          in: query
          description: Text to search/filter the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the list of Filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
    put:
      tags:
        - Filter
      summary: Update a Filter
      description: Updates the filter for the given ID.
      operationId: CcmupdateFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Filter. This should have all the fields not just
          the updated ones
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns the updated Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    post:
      tags:
        - Filter
      summary: Create a Filter
      description: Creates a Filter.
      operationId: CcmpostFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Connector to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns created Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
  /ccm/api/filters/{identifier}:
    get:
      tags:
        - Filter
      summary: Return Filter Details
      description: Returns the settings of a filter for the given ID.
      operationId: CcmgetFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns Filter having filterIdentifier as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    delete:
      tags:
        - Filter
      summary: Delete a Filter
      description: Deletes a filter for the given ID.
      operationId: CcmdeleteFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /ccm/api/usage/cd/active-services/csv/download:
    get:
      tags:
        - Usage
      summary: Download CSV Active Services report
      operationId: CcmdownloadActiveServiceCSVReport
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Download CSV Active Services report
  /ccm/api/usage/CD/serviceInstancesLicense:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: CcmgetCDLicenseUsageForServiceInstances
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceInstanceUsageDTO'
  /ccm/api/usage/CD/servicesLicense:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: CcmgetCDLicenseUsageForServices
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOServiceUsageDTO'
  /ccm/api/usage/{module}:
    get:
      tags:
        - Usage
      summary: Gets License Usage By Module, Timestamp, and Account Identifier
      operationId: CcmgetLicenseUsage
      parameters:
        - name: accountIdentifier
          in: query
          description: Account id to get the license usage.
          schema:
            type: string
        - name: module
          in: path
          description: A Harness platform module.
          required: true
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
        - name: CDLicenseType
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CcmError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CcmError'
        default:
          description: Returns a license usage object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOLicenseUsage'
  /cf/admin/anomalies/{identifier}/dismiss:
    put:
      description: >-
        Dismisses A CCM Anomaly, which essentially sets it as acknowledged in
        the database
      operationId: DismissAnomaly
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '200':
          description: Anomaly Dismissed.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Dismisses an Anomaly
      tags:
        - Anomalies
  /cf/admin/apikey:
    get:
      description: Returns all the API Keys for an Environment
      operationId: GetAllAPIKeys
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
      responses:
        '200':
          $ref: '#/components/responses/APIKeysResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns API Keys for an Environment
      tags:
        - API Keys
    post:
      description: Creates an API key for the given Environment
      operationId: AddAPIKey
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/APIKeyRequest'
      responses:
        '201':
          $ref: '#/components/responses/APIKeyResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates an API key for the given Environment
      tags:
        - API Keys
  /cf/admin/apikey/{identifier}:
    delete:
      description: Deletes an API key for the given identifier
      operationId: DeleteAPIKey
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      responses:
        '204':
          description: No content
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Deletes an API Key
      tags:
        - API Keys
    get:
      description: Returns all the API Keys for the given identifier
      operationId: GetAPIKey
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/APIKeyResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns API keys
      tags:
        - API Keys
    put:
      description: Updates an API key for the given identifier
      operationId: UpdateAPIKey
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/APIKeyUpdateRequest'
      responses:
        '200':
          description: Updated
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates an API Key
      tags:
        - API Keys
  /cf/admin/attributes:
    get:
      description: Returns all the custom attributes the given environment
      operationId: GetAttributes
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/customAttributeQueryParam'
        - $ref: '#/components/parameters/attributeCounts'
      responses:
        '200':
          $ref: '#/components/responses/AttributesResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all custom attributes for the project
      tags:
        - Attributes
    post:
      description: Creates a custom attribute for given environment
      operationId: CreateAttribute
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/AttributeRequest'
      responses:
        '201':
          $ref: '#/components/responses/AttributeEditResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a custom Attribute
      tags:
        - Attributes
  /cf/admin/attributes/{key}:
    delete:
      description: Delete an Attribute for the given key and environmentID
      operationId: DeleteAttribute
      parameters:
        - $ref: '#/components/parameters/key'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '204':
          description: No content
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete an Attribute
      tags:
        - Attributes
    get:
      description: Returns Attribute
      operationId: GetAttribute
      parameters:
        - $ref: '#/components/parameters/key'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/AttributeResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns an Attribute
      tags:
        - Attributes
    patch:
      description: Updates Attribute key details for the given environment
      operationId: PatchAttribute
      parameters:
        - $ref: '#/components/parameters/key'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/AttributePatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/AttributeEditResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Update Attribute for the environment
      tags:
        - Attributes
  /cf/admin/environments/perspectives:
    delete:
      description: >-
        Deletes a perspective from an environment. An Environment can only have
        one Perspective
      operationId: DeletePerspective
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '204':
          description: No content
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete a Perspective - Environment link.
      tags:
        - Environment Perspectives
    put:
      description: >-
        Adds a perspective to an environment, or updates an existing. An
        Environment can only have one Perspective
      operationId: UpsertPerspective
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/EnvironmentPerspectiveUpsertRequest'
      responses:
        '200':
          $ref: '#/components/responses/EnvironmentPerspectiveResponse'
        '201':
          $ref: '#/components/responses/EnvironmentPerspectiveResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Upsert a Perspective to an Environment.
      tags:
        - Environment Perspectives
  /cf/admin/features:
    get:
      description: Returns all the Feature Flag details for the given project
      operationId: GetAllFeatures
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentOptionalQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/sortByField'
        - $ref: '#/components/parameters/nameQueryParam'
        - $ref: '#/components/parameters/identifierQueryParam'
        - $ref: '#/components/parameters/archivedQueryParam'
        - $ref: '#/components/parameters/kindQueryParam'
        - $ref: '#/components/parameters/targetOptionalParam'
        - $ref: '#/components/parameters/targetFilterOptionalParam'
        - $ref: '#/components/parameters/featuresOptionalParam'
        - $ref: '#/components/parameters/excludedFeaturesOptionalParam'
        - $ref: '#/components/parameters/flagStatus'
        - $ref: '#/components/parameters/flagLifetime'
        - $ref: '#/components/parameters/flagEnabled'
        - $ref: '#/components/parameters/flagCounts'
        - $ref: '#/components/parameters/flagSummary'
        - $ref: '#/components/parameters/flagTags'
      responses:
        '200':
          $ref: '#/components/responses/FeaturesResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all Feature Flags for the project
      tags:
        - Feature Flags
    post:
      description: Creates a Feature Flag in the Project
      operationId: CreateFeatureFlag
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/FeatureFlagRequest'
      responses:
        '201':
          $ref: '#/components/responses/FeatureEditResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a Feature Flag
      tags:
        - Feature Flags
  /cf/admin/features/{identifier}:
    delete:
      description: Delete Feature Flag for the given identifier and account ID
      operationId: DeleteFeatureFlag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/commitMsgQueryParam'
        - $ref: '#/components/parameters/forceDeleteQueryParam'
      responses:
        '204':
          description: No content
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete a Feature Flag
      tags:
        - Feature Flags
    get:
      description: >-
        Returns details such as Variation name, identifier etc for the given
        Feature Flag
      operationId: GetFeatureFlag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentOptionalQueryParam'
        - $ref: '#/components/parameters/archivedQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/FeatureResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns a Feature Flag
      tags:
        - Feature Flags
    patch:
      description: >
        This operation is used to modify a Feature Flag.  The request body can
        include one or more instructions that can modify

        flag attributes such as the state (off|on), the variations that are
        returned and serving rules.

        For example if you want to turn a flag off you can use this opeartion
        and send the setFeatureFlagState


        {
          "kind": "setFeatureFlagState",
          "parameters": {
            "state": "off"
          }
        }
      operationId: PatchFeature
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentOptionalQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/FeaturePatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/FeatureEditResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Feature Flag
      tags:
        - Feature Flags
    put:
      description: Updates a Feature Flag in the Project
      operationId: PutFeatureFlag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/FeatureFlagPutRequest'
      responses:
        '200':
          $ref: '#/components/responses/FeatureEditResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Feature Flag
      tags:
        - Feature Flags
  /cf/admin/features/{identifier}/dependants:
    get:
      description: Given identifier return list all the flags which depend on it.
      operationId: GetDependentFeatures
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentOptionalQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/sortByField'
        - $ref: '#/components/parameters/nameQueryParam'
        - $ref: '#/components/parameters/archivedQueryParam'
        - $ref: '#/components/parameters/kindQueryParam'
        - $ref: '#/components/parameters/targetOptionalParam'
        - $ref: '#/components/parameters/targetFilterOptionalParam'
        - $ref: '#/components/parameters/metricsOptionalParam'
        - $ref: '#/components/parameters/featuresOptionalParam'
        - $ref: '#/components/parameters/excludedFeaturesOptionalParam'
        - $ref: '#/components/parameters/flagStatus'
        - $ref: '#/components/parameters/flagLifetime'
        - $ref: '#/components/parameters/flagEnabled'
        - $ref: '#/components/parameters/flagCounts'
        - $ref: '#/components/parameters/flagSummary'
        - $ref: '#/components/parameters/flagTags'
      responses:
        '200':
          $ref: '#/components/responses/FeaturesResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Return a list of dependant flags
      tags:
        - Feature Flags
  /cf/admin/features/{identifier}/restore:
    post:
      description: Restore Feature Flag for the given identifier and account ID
      operationId: RestoreFeatureFlag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/commitMsgQueryParam'
      responses:
        '204':
          description: No content
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Restore a Feature Flag
      tags:
        - Feature Flags
  /cf/admin/proxy/keys:
    get:
      description: Returns all the Proxy keys in an account
      operationId: GetProxyKeys
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/nameQueryParam'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/proxyKeySortByField'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
      responses:
        '200':
          $ref: '#/components/responses/ProxyKeysResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all Proxy keys in an account
      tags:
        - Proxy
    post:
      description: Creates a Proxy Key in the account & org
      operationId: CreateProxyKey
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/ProxyKeysPostRequest'
      responses:
        '201':
          $ref: '#/components/responses/ProxyKeysCreateResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a Proxy Key in the account & org
      tags:
        - Proxy
  /cf/admin/proxy/keys/{identifier}:
    delete:
      description: Deletes a ProxyKey
      operationId: DeleteProxyKey
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/identifier'
      responses:
        '204':
          description: No content
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Deletes a ProxyKey
      tags:
        - Proxy
    get:
      description: Returns a ProxyKey
      operationId: GetProxyKey
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/identifier'
      responses:
        '200':
          $ref: '#/components/responses/ProxyKeyResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns a ProxyKey
      tags:
        - Proxy
    patch:
      description: >
        This operation is used to modify which environments a ProxyKey has
        access to. The request body can include one or more instructions that
        can assign or unassign environmnets to the ProxyKey
      operationId: PatchProxyKey
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/ProxyKeysPatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/ProxyKeysCreateResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Proxy Key in the account & org
      tags:
        - Proxy
  /cf/admin/segments:
    get:
      description: Returns Target Group details for the given account
      operationId: GetAllSegments
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/sortByField'
        - $ref: '#/components/parameters/nameQueryParam'
        - $ref: '#/components/parameters/identifierQueryParam'
        - $ref: '#/components/parameters/segmentRulesV2QueryParam'
      responses:
        '200':
          $ref: '#/components/responses/SegmentsResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all Target Groups
      tags:
        - Target Groups
    post:
      description: Creates a Target Group in the given Project
      operationId: CreateSegment
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/SegmentRequest'
      responses:
        '201':
          description: Created
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a Target Group
      tags:
        - Target Groups
  /cf/admin/segments/{identifier}:
    delete:
      description: Deletes a Target Group for the given ID
      operationId: DeleteSegment
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '204':
          description: No content
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Deletes a Target Group
      tags:
        - Target Groups
    get:
      description: Returns Target Group details for the given ID
      operationId: GetSegment
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/segmentRulesV2QueryParam'
      responses:
        '200':
          $ref: '#/components/responses/SegmentResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns Target Group details for the given identifier
      tags:
        - Target Groups
    patch:
      description: Updates a Target Group for the given identifier
      operationId: PatchSegment
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/identifier'
      requestBody:
        $ref: '#/components/requestBodies/SegmentPatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/SegmentResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Target Group
      tags:
        - Target Groups
  /cf/admin/segments/{identifier}/available_flags:
    get:
      description: >-
        Returns the list of Feature Flags that the Target Group can be added
        to.  This list will exclude any Feature Flag that the Target Group is
        already part of.
      operationId: GetAvailableFlagsForSegment
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/safSortOrder'
        - $ref: '#/components/parameters/safSortByField'
        - $ref: '#/components/parameters/flagNameQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/AvailableFlagResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: >-
        Returns Feature Flags that are available to be added to the given Target
        Group
      tags:
        - Target Groups
  /cf/admin/segments/{identifier}/flags:
    get:
      description: >-
        Returns the details of a Feature Flag in a Target Group for the given
        identifier
      operationId: GetSegmentFlags
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/SegmentFlagsResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns Feature Flags in a Target Group
      tags:
        - Target Groups
  /cf/admin/tags:
    get:
      description: Returns all the Tags for the given Account ID
      operationId: GetAllTags
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/sortOrder'
        - $ref: '#/components/parameters/sortByField'
        - $ref: '#/components/parameters/tagFilterOptionalParam'
      responses:
        '200':
          $ref: '#/components/responses/TagsResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all Tags
      tags:
        - Tags
    post:
      description: Create Tags for the given identifier
      operationId: CreateTag
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/TagRequest'
      responses:
        '201':
          $ref: '#/components/responses/TagEditResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a Tag
      tags:
        - Tags
  /cf/admin/tags/{identifier}:
    delete:
      description: Delete Tag for the given identifier and account ID
      operationId: DeleteTag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/commitMsgQueryParam'
        - $ref: '#/components/parameters/forceDeleteQueryParam'
      responses:
        '204':
          description: No content
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '424':
          $ref: '#/components/responses/GitSyncError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete a Tag
      tags:
        - Tags
    get:
      description: >-
        Returns details such as identifier,Associated Feature Flag etc for the
        given Tag
      operationId: GetTag
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentOptionalQueryParam'
        - $ref: '#/components/parameters/metricsOptionalParam'
        - $ref: '#/components/parameters/archivedQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/FeatureResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns a Tag
      tags:
        - Tags
  /cf/admin/targets:
    get:
      description: Returns all the Targets for the given Account ID
      operationId: GetAllTargets
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/pageNumber'
        - $ref: '#/components/parameters/pageSize'
        - $ref: '#/components/parameters/targetSortOrder'
        - $ref: '#/components/parameters/targetSortByField'
        - $ref: '#/components/parameters/targetNameQueryParam'
        - $ref: '#/components/parameters/targetIdentifierQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/TargetsResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns all Targets
      tags:
        - Targets
    post:
      description: Create Targets for the given identifier
      operationId: CreateTarget
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/TargetRequest'
      responses:
        '201':
          description: Created
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Creates a Target
      tags:
        - Targets
  /cf/admin/targets/upload:
    post:
      description: Add targets by uploading a CSV file
      operationId: UploadTargets
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      requestBody:
        content:
          multipart/form-data:
            schema:
              properties:
                fileName:
                  format: binary
                  type: string
              type: object
      responses:
        '200':
          description: Created
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Add Target details
      tags:
        - Targets
  /cf/admin/targets/{identifier}:
    delete:
      description: Deletes a Target for the given identifier
      operationId: DeleteTarget
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '204':
          description: No content
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Deletes a Target
      tags:
        - Targets
    get:
      description: Returns details of a Target for the given identifier
      operationId: GetTarget
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/TargetResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns details of a Target
      tags:
        - Targets
    patch:
      description: Updates a Target for the given identifier
      operationId: PatchTarget
      parameters:
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
        - $ref: '#/components/parameters/identifier'
      requestBody:
        $ref: '#/components/requestBodies/TargetPatchRequest'
      responses:
        '200':
          $ref: '#/components/responses/TargetResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Target
      tags:
        - Targets
    put:
      description: Modifies a Target for the given account identifier
      operationId: ModifyTarget
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/TargetRequest'
      responses:
        '200':
          $ref: '#/components/responses/TargetResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '409':
          $ref: '#/components/responses/Conflict'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Modifies a Target
      tags:
        - Targets
  /cf/admin/targets/{identifier}/segments:
    get:
      description: Returns the Target Groups that the specified Target belongs to.
      operationId: GetTargetSegments
      parameters:
        - $ref: '#/components/parameters/identifier'
        - $ref: '#/components/parameters/accountQueryParam'
        - $ref: '#/components/parameters/orgQueryParam'
        - $ref: '#/components/parameters/projectQueryParam'
        - $ref: '#/components/parameters/environmentQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/TargetDetailResponse'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns Target Groups for the given Target
      tags:
        - Targets
  /gateway/lw/api/accounts/{account_id}/autostopping/rules:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: List AutoStopping Rules
      description: Lists all the AutoStopping rules separated by comma-separated strings.
      operationId: ListAutoStoppingRules
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: dry_run
          description: Flag which if enabled lists out only dry run rules.
          in: query
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServicesResponse'
        '400':
          description: Invalid status value
          content: {}
    post:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Create an AutoStopping Rule
      description: Creates a new AutoStopping Rule.
      operationId: UpdateAutoStoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Service definition of an AutoStopping rule
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SaveServiceRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LwServiceResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return AutoStopping Rule details
      description: Returns details of an AutoStopping Rule for the given identifier.
      operationId: AutoStoppingRuleDetails
      parameters:
        - name: account_id
          in: path
          description: Account Identifier for the Entity
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping Rule for which you need to fetch the details
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    $ref: '#/components/schemas/SaveServiceRequest'
        '400':
          description: Invalid status value
          content: {}
    delete:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Delete an AutoStopping Rule
      description: Deletes an AutoStopping Rule for the given identifier.
      operationId: DeleteAutoStoppingRule
      parameters:
        - name: rule_id
          description: ID of the AutoStopping Rule that you want to delete
          in: path
          required: true
          schema:
            type: number
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content: {}
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/health:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return health status of an AutoStopping Rule
      description: Returns health status of an AutoStopping Rule for the given identifier.
      operationId: HealthOfAutoStoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: >-
            ID of the AutoStopping Rule for which you need to fetch the health
            status
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceHealthResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/savings:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return savings details for an AutoStopping Rule
      description: >-
        Returns savings details for an AutoStopping rule for the given
        identifier and the specified time duration.
      operationId: SavingsFromAutoStoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: >-
            ID of the AutoStopping Rule for which you want to fetch savings
            detail
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: from
          description: Start time for the computation of savings
          in: query
          schema:
            type: string
        - name: to
          description: End time for the computation of savings
          in: query
          schema:
            type: string
        - name: group_by
          in: query
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: object
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/resources:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: List all the resources for an AutoStopping Rule
      description: >-
        Lists all the resources for an AutoStopping Rule for the given
        identifier.
      operationId: AllAutoStoppingResources
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: cloud_account_id
          description: Connector ID
          in: query
          required: true
          schema:
            type: string
        - name: region
          description: Cloud region where resources belong to
          in: query
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping Rule for which you need to list the resources
          in: path
          required: true
          schema:
            type: number
            format: int64
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AllResourcesOfAccountResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/diagnostics:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return diagnostics result of an AutoStopping Rule
      description: >-
        Returns the diagnostics result of an AutoStopping rule for the given
        identifier.
      operationId: GetAutoStoppingDiagnostics
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: >-
            ID of the AutoStopping rule for which you need to fetch the
            diagnostics details
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDiagnosticsResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/warmup:
    post:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Warm up an AutoStopping Rule
      description: Warm up resources under an Autostopping rule
      operationId: WarmUpAutostoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping rule which you want to warm up
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Warm Up Options
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/WarmUpOption'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal error
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/cooldown:
    post:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Cool down an AutoStopping Rule
      description: Cool down resources under an Autostopping rule
      operationId: CoolDownAutostoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping rule you want to cool down
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Cool Down Options
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/CoolDownOption'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: string
        '500':
          description: Internal error
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/cooldown_meta:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return metadata of cool down of an AutoStopping Rule
      description: Return metadata of cool down of an AutoStopping Rule
      operationId: GetAutoStoppingCoolDownMeta
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: >-
            ID of the AutoStopping rule for which you need to fetch the
            diagnostics details
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CoolDownMetaSuccessResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CoolDownMetaFailureResponse'
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/savings/cumulative:
    get:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Return cumulative savings for all the AutoStopping Rules
      description: Returns cumulative savings for all the AutoStopping Rules.
      operationId: CumulativeAutoStoppingSavings
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CumulativeSavingsResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/rules/{rule_id}/toggle_state:
    put:
      tags:
        - Cloud Cost AutoStopping Rules
      summary: Disable/Enable an Autostopping Rule
      description: Disables or enables an Autostopping Rule for the given identifier.
      operationId: ToggleAutostoppingRule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping rule to be enabled/disabled
          in: path
          required: true
          schema:
            type: string
        - name: disable
          in: query
          required: true
          schema:
            type: boolean
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServicesResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/v2/rules:
    post:
      tags:
        - Cloud Cost AutoStopping Rules V2
      summary: Create an AutoStopping Rule
      description: Creates a new AutoStopping Rule.
      operationId: CreateAutoStoppingRuleV2
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Service definition of an AutoStopping rule
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SaveServiceRequestV2'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LwServiceResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/autostopping/v2/rules/{rule_id}:
    put:
      tags:
        - Cloud Cost AutoStopping Rules V2
      summary: Update an existing AutoStopping Rule
      description: Updates an existing AutoStopping Rule.
      operationId: UpdateAutoStoppingRuleV2
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: rule_id
          description: ID of the AutoStopping rule to be enabled/disabled
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Service definition of an AutoStopping rule
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SaveServiceRequestV2'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LwServiceResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers:
    get:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Return all the load balancers
      description: Returns all the load balancers for the given identifier.
      operationId: ListLoadBalancers
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: vpc
          description: Virtual Private Cloud (VPC)
          in: query
          schema:
            type: string
        - name: region
          description: Cloud region where access point is installed
          in: query
          schema:
            type: string
        - name: cloud_account_id
          description: Connector ID
          in: query
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAccessPointResponse'
        '400':
          description: Invalid status value
          content: {}
    put:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Update a load balancer
      description: Updates a load balancer for the given identifier.
      operationId: EditLoadBalancer
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/AccessPoint'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAccessPointResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: accessPoint
    post:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Create a load balancer
      description: Creates a load balancer.
      operationId: CreateLoadBalancer
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/AccessPoint'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAccessPointResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: accessPoint
    delete:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Delete load balancers and the associated resources
      description: >-
        Deletes load balancers and the associated resources for the given
        identifier.
      operationId: DeleteLoadBalancer
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/DeleteAccessPointPayload'
        required: true
      responses:
        '200':
          description: OK
          content: {}
      x-codegen-request-body-name: accessPoint
  /gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}:
    get:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Return details of a load balancer
      description: Retuns details of a load balancer for the given identifier.
      operationId: DescribeLoadBalancer
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: lb_id
          description: ID of the load balancer for which you want to fetch the details
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAccessPointResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}/rules:
    get:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Return all the AutoStopping Rules in a load balancer
      description: >-
        Returns all the AutoStopping Rules for the given load balancer
        identifier.
      operationId: AccessPointRules
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: lb_id
          description: >-
            ID of the load balancer for which you want to fetch the list of
            AutoStopping Rules
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServicesResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/autostopping/loadbalancers/{lb_id}/last_active_at:
    get:
      tags:
        - Cloud Cost AutoStopping Load Balancers
      summary: Return last activity details of a load balancer
      description: >-
        Returns the last activity details for the given load balancer
        identifier.
      operationId: LoadBalancerActivity
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: lb_id
          description: >-
            ID of the load balancer for which you want to fetch the most recent
            activity details
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccessPointActivityResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/schedules:
    get:
      tags:
        - Cloud Cost AutoStopping Fixed Schedules
      summary: Return all the AutoStopping Rule fixed schedules
      description: >-
        Returns all the AutoStopping Rule fixed schedules for the given
        identifier.
      operationId: listAutoStoppingSchedules
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: cloud_account_id
          description: Connector ID
          in: query
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: res_id
          description: >-
            IDs of resources whose fixed schedules are to be fetched. This can
            be an AutoStopping rule ID if the res_type is "autostop_rule"
          in: query
          required: true
          schema:
            type: string
        - name: res_type
          description: Type of resource to which schedules are attached
          in: query
          required: true
          schema:
            type: string
            enum:
              - autostop_rule
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FixedSchedulesListResponse'
        '400':
          description: Invalid
          content: {}
    post:
      tags:
        - Cloud Cost AutoStopping Fixed Schedules
      summary: Create a fixed schedule for an AutoStopping Rule
      description: Creates an AutoStopping rule to run resources based on the schedule.
      operationId: createAutoStoppingSchedules
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: cloud_account_id
          description: Connector ID
          in: query
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Fixed schedule payload
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SaveStaticSchedulesRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FixedSchedule'
        '400':
          description: Invalid
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/schedules/{schedule_id}:
    delete:
      tags:
        - Cloud Cost AutoStopping Fixed Schedules
      summary: Delete a fixed schedule for AutoStopping Rule.
      description: Deletes a fixed schedule for the given AutoStopping Rule.
      operationId: deleteAutoStoppingSchedule
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: schedule_id
          description: ID of a fixed schedule added to an AutoStopping rule
          in: path
          required: true
          schema:
            type: number
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  response:
                    type: string
  /gateway/lw/api/accounts/{account_id}/clusters:
    get:
      tags:
        - Cloud Cost Cluster Orchestrator
      summary: Return all connected clusters to Harness CCM
      description: >-
        Return all connected clusters to Harness CCM, the ones onboarded to
        cluster orchestrator will have the id field populated
      operationId: listConnectedKubernetesClusters
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectedKubernetesClustersListResponse'
        '400':
          description: Invalid
          content: {}
  /gateway/lw/api/accounts/{account_id}/clusters/orchestrator:
    post:
      tags:
        - Cloud Cost Cluster Orchestrator
      summary: >-
        Onboard a kubernetes cluster with an existing CCM Kubernetes Connector
        to Cluster Orchestrator
      description: >-
        Onboard a kubernetes cluster with an existing CCM Kubernetes Connector
        to Cluster Orchestrator
      operationId: onboardToClusterOrchestrator
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
      requestBody:
        description: Onboard to Cluster Orchestrator Payload
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/OnboardToClusterOrchestratorRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectedKubernetesClustersGetResponse'
        '400':
          description: Invalid
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/clusters/orchestrator/{orchestrator_id}:
    get:
      tags:
        - Cloud Cost Cluster Orchestrator
      summary: Get Details of a connected clusters by orchestrator id
      description: >-
        Fetches the details of the cluster connected to the orchestrator by
        orchestrator's ID
      operationId: getConnectedClusterDetails
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: orchestrator_id
          description: >-
            Identifier of the Orchestrator of the cluster, available in list
            response and onboard response
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectedKubernetesClustersGetResponse'
        '400':
          description: Invalid
          content: {}
  /gateway/lw/api/accounts/{account_id}/clusters/orchestrator/{orchestrator_id}/config:
    put:
      tags:
        - Cloud Cost Cluster Orchestrator
      summary: Update a Cluster Orchestrator Config
      description: Updates the config for a given cluster orchestrator
      operationId: updateClusterOrchestratorConfig
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: orchestrator_id
          description: >-
            Identifier of the Orchestrator of the cluster, available in list
            response and onboard response
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/AccessPoint'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAccessPointResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: accessPoint
  /gateway/lw/api/accounts/{account_id}/v1/events/logs:
    post:
      tags:
        - Commitment Orchestrator APIs
      summary: List event logs
      description: Obtains list of event logs generated as part of commitment orchestration
      operationId: EventLogs
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            description: Start time of the period
            example: '2021-10-19'
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            description: End time of the period
            example: '2021-10-19'
      requestBody:
        description: Input for Pagination
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/PaginationInput'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventLogsSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/events/chart:
    post:
      tags:
        - Commitment Orchestrator Events APIs
      summary: List event logs
      description: Obtains list of events and the count of their occurences grouped by date
      operationId: EventsChart
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            description: Start time of the period
            example: '2021-10-19'
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            description: End time of the period
            example: '2021-10-19'
      requestBody:
        description: Optional filters
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/EventsFilter'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventsChartsSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/setup:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: Create commitment orchestration setup
      description: >-
        Creates a new commitment orchestration setup configuration for a cloud
        account
      operationId: SetupConfiguration
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Setup configuration details
        content:
          application/json:
            schema:
              type: object
              properties:
                cloud_account_id:
                  type: string
                  description: >-
                    Cloud Account ID for which to create the commitment
                    orchestration setup
                cloud_account_name:
                  type: string
                  description: Name of the cloud account
                enabled:
                  type: boolean
                  description: Whether the commitment orchestration is enabled
                  default: true
                dry_run_mode:
                  type: boolean
                  description: Whether to run in dry run mode
                  default: false
                approval_mode:
                  type: string
                  description: Mode of approval for commitment actions
                  enum:
                    - auto
                    - manual
                    - semiAutomated
                  default: manual
                service:
                  type: string
                  description: Service for which to set up commitment orchestration
                  enum:
                    - Amazon Elastic Compute Cloud - Compute
                    - Amazon Relational Database Service
                  default: Amazon Elastic Compute Cloud - Compute
                config:
                  type: object
                  description: Configuration details for the commitment orchestration
                  properties:
                    exclusion_list:
                      type: array
                      description: >-
                        List of instance types to exclude from commitment
                        orchestration
                      items:
                        $ref: '#/components/schemas/ExclusionEntry'
                    excluded_cloud_accounts:
                      type: array
                      description: >-
                        List of cloud account IDs to exclude from commitment
                        orchestration
                      items:
                        type: string
                    savings_plans_coverage:
                      type: number
                      format: float
                      description: Target coverage percentage for savings plans (0-1)
                      minimum: 0
                      maximum: 1
                    reserved_instances_coverage:
                      type: number
                      format: float
                      description: Target coverage percentage for reserved instances (0-1)
                      minimum: 0
                      maximum: 1
                    total_coverage:
                      type: number
                      format: float
                      description: Total target coverage percentage (0-1)
                      minimum: 0
                      maximum: 1
                    seed_config:
                      type: object
                      description: Configuration for seed instances
                      properties:
                        start_with:
                          type: string
                          description: Strategy for starting with seed instances
                          enum:
                            - seed_auto_discovery
                            - purchase_new_seed
                          default: seed_auto_discovery
                        monthly_purchase_enabled:
                          type: boolean
                          description: >-
                            Whether monthly purchase of seed instances is
                            enabled
                          default: false
                        purchase_terms:
                          type: array
                          description: Purchase terms for seed instances in seconds
                          items:
                            type: integer
                            enum:
                              - 31536000
                              - 94608000
                            description: >-
                              Purchase term in seconds (1 year = 31536000, 3
                              years = 94608000)
                    payment_option:
                      type: string
                      description: Payment option for commitments
                      enum:
                        - No Upfront
                        - Partial Upfront
                        - All Upfront
                    savings_plan_renewal_rate:
                      type: number
                      format: float
                      description: >-
                        Renewal rate for savings plans (0-1), required for
                        semiAutomated approval mode
                      minimum: 0
                      maximum: 1
                  required:
                    - total_coverage
              required:
                - cloud_account_id
                - config
                - service
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                    description: Timestamp of the response
                  success:
                    type: boolean
                    description: Whether the operation was successful
                  response:
                    type: object
                    description: Empty object as no content is expected in the response
                    additionalProperties: false
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                  success:
                    type: boolean
                    enum:
                      - false
                  errors:
                    type: array
                    items:
                      type: string
  /gateway/lw/api/accounts/{account_id}/v1/setup/validate:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: Validate commitment Setup
      description: >-
        Obtains maximum allowed configuration values for Savings Plans given a
        target total coverage
      operationId: SetupValidate
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: cloud_account_id
          in: query
          required: true
          schema:
            type: string
            description: >-
              Account Identifier for which Commitment Orchestration Setup is
              being performed
      requestBody:
        description: Configured setup values
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/AutoCUDConfig'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetupValidateSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/setup/{cloud_account_id}/instance_types:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: Instance types in usage to support configuring exclusions
      description: Lists all instance types by region in usage for the given master account
      operationId: SetupInstanceTypes
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: cloud_account_id
          description: Cloud Account ID of the master account in Harness
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: cloud_account_id
          in: query
          required: true
          schema:
            type: string
            description: >-
              Account Identifier for which Commitment Orchestration Setup is
              being performed
      requestBody:
        description: Configured setup values
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/InstanceTypesPayload'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetupInstanceTypesSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v2/setup/{cloudAccountID}/estimated_savings:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: Get estimated savings for a target coverage
      description: Returns estimated savings data based on a target coverage percentage
      operationId: GetEstimatedSavingsForSetup
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: cloudAccountID
          in: path
          required: true
          schema:
            type: string
          description: Cloud Account ID for which to retrieve estimated savings data
      requestBody:
        description: Parameters for estimated savings calculation
        content:
          application/json:
            schema:
              type: object
              properties:
                instance_types:
                  type: array
                  items:
                    type: string
                  description: >-
                    List of instance types to filter by. Empty array means all
                    instance types.
                regions:
                  type: array
                  items:
                    type: string
                  description: List of regions to filter by. Empty array means all regions.
                linked_accounts:
                  type: array
                  items:
                    type: string
                  description: >-
                    List of linked accounts to filter by. Empty array means all
                    linked accounts.
                service:
                  type: string
                  description: >-
                    Service name to filter by, e.g., 'Amazon Elastic Compute
                    Cloud - Compute'. Defaults to EC2 if not specified.
                target_coverage:
                  type: number
                  format: float
                  description: Target coverage percentage (between 0 and 100)
                  minimum: 0
                  maximum: 100
              required:
                - target_coverage
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                    description: Timestamp of the response
                  success:
                    type: boolean
                    description: Whether the operation was successful
                  response:
                    type: object
                    properties:
                      current_coverage:
                        type: number
                        format: float
                        description: Current coverage percentage
                      target_coverage:
                        type: number
                        format: float
                        description: Target coverage percentage
                      current_savings:
                        type: number
                        format: float
                        description: Current savings amount
                      estimated_savings:
                        type: number
                        format: float
                        description: Estimated savings amount at target coverage
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                  success:
                    type: boolean
                    enum:
                      - false
                  errors:
                    type: array
                    items:
                      type: string
  /gateway/lw/api/accounts/{account_id}/v2/setup/{cloudAccountID}/cost_coverage:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: Get cost coverage data for setup
      description: >-
        Returns cost breakdown and coverage data for EC2 instances, grouped by
        instance type, region, or account
      operationId: GetCostCoverageForSetup
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: cloudAccountID
          in: path
          required: true
          schema:
            type: string
          description: Cloud Account ID for which to retrieve cost coverage data
      requestBody:
        description: Cost coverage filter parameters
        content:
          application/json:
            schema:
              type: object
              properties:
                instance_types:
                  type: array
                  items:
                    type: string
                  description: >-
                    List of instance types to filter by. Empty array means all
                    instance types.
                regions:
                  type: array
                  items:
                    type: string
                  description: List of regions to filter by. Empty array means all regions.
                linked_accounts:
                  type: array
                  items:
                    type: string
                  description: >-
                    List of linked accounts to filter by. Empty array means all
                    linked accounts.
                service:
                  type: string
                  description: >-
                    Service name to filter by, e.g., 'Amazon Elastic Compute
                    Cloud - Compute'
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                    description: Timestamp of the response
                  success:
                    type: boolean
                    description: Whether the operation was successful
                  response:
                    type: array
                    items:
                      type: object
                      properties:
                        start_date:
                          type: string
                          format: date
                          description: Start date of the cost data period
                        end_date:
                          type: string
                          format: date
                          description: End date of the cost data period
                        costs:
                          type: object
                          additionalProperties:
                            type: number
                          description: >-
                            Map of purchase types to costs. For instance type
                            breakdown, this contains region as keys.
                        total_cost:
                          type: number
                          description: Total cost for the period
                        committed_cost:
                          type: number
                          description: Committed cost for the period
                        coverage:
                          type: number
                          description: >-
                            Coverage percentage (committed_cost/total_cost *
                            100)
                        breakdown_type:
                          type: string
                          description: >-
                            Type of breakdown used (instance_type_breakdown,
                            region_breakdown, or account_breakdown)
                        region_breakdown:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              costs:
                                type: object
                                additionalProperties:
                                  type: number
                                description: Map of purchase types to costs
                              total_cost:
                                type: number
                                description: Total cost for this region
                              committed_cost:
                                type: number
                                description: Committed cost for this region
                              coverage:
                                type: number
                                description: Coverage percentage for this region
                          description: Breakdown of costs by region
                        instance_type_breakdown:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              costs:
                                type: object
                                additionalProperties:
                                  type: number
                                description: Map of purchase types to costs
                              total_cost:
                                type: number
                                description: Total cost for this instance type
                              committed_cost:
                                type: number
                                description: Committed cost for this instance type
                              coverage:
                                type: number
                                description: Coverage percentage for this instance type
                              region:
                                type: string
                                description: Region for this instance type
                          description: Breakdown of costs by instance type
                        account_breakdown:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              costs:
                                type: object
                                additionalProperties:
                                  type: number
                                description: Map of purchase types to costs
                              total_cost:
                                type: number
                                description: Total cost for this account
                              committed_cost:
                                type: number
                                description: Committed cost for this account
                              coverage:
                                type: number
                                description: Coverage percentage for this account
                              account_name:
                                type: string
                                description: Name of the account
                          description: Breakdown of costs by account
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    format: int64
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
  /gateway/lw/api/accounts/{account_id}/v1/setup/listMasterAccounts:
    post:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: List master accounts for commitment Setup
      description: Lists master accounts available for commitment orchestrator setup
      operationId: ListMasters
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMasterSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/setup/{cloud_account_id}/child_accounts:
    get:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: List child accounts for a given master account
      description: Lists child accounts with their name and id for a given master account
      operationId: ListAccounts
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: cloud_account_id
          description: Cloud Account ID of the master account in Harness
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListChildAccountsSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/v1/setup/list:
    get:
      tags:
        - Commitment Orchestrator Setup APIs
      summary: List of commitment Setups
      description: Lists setups available for commitment orchestrator
      operationId: ListSetups
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListSetupsSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
  /gateway/lw/api/accounts/{account_id}/v2/approvals/list:
    post:
      tags:
        - Commitment Orchestrator User Approval APIs
      summary: List of Commitment transactions with filtering options
      description: List of commitment related transactions with advanced filtering options
      operationId: ApprovalsListV2
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: routingId
          description: Routing Identifier for the request
          in: query
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
        - name: start_date
          in: query
          schema:
            type: string
            format: date
          description: Start date for the approval period.
        - name: end_date
          in: query
          schema:
            type: string
            format: date
          description: End date for the approval period.
      requestBody:
        description: Input for filtering and pagination
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApprovalsListRequestV2'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApprovalsListResponseV2'
        '400':
          description: Invalid request
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/approvals/list:
    post:
      tags:
        - Commitment Orchestrator User Approval APIs
      summary: List of Commitment transactions awaiting user approvals
      description: List of commitment related transactions waiting for user approvals
      operationId: ApprovalsList
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Input for Pagination
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/PaginationInput'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApprovalEventsSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v1/approvals/update:
    post:
      tags:
        - Commitment Orchestrator User Approval APIs
      summary: Approve/Reject commitment transactions
      description: Approve or Reject commitment transactions
      operationId: ApprovalsUpdate
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Actions and their approval or rejection status
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/ApprovalPayload'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v2/approvals/overview:
    post:
      tags:
        - Commitment Orchestrator User Approval APIs
      summary: Overview API with summary for different types of approval events
      description: >-
        Overview API with summary of event types with the status and potential
        savings opportunities
      operationId: ApprovalsOverview
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity
          in: query
          required: true
          schema:
            type: string
      requestBody:
        description: Input for Supported optional filters
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/ApprovalsOverviewRequestFilters'
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApprovalOverviewSuccessResponse'
        '400':
          description: Invalid status value
          content: {}
      x-codegen-request-body-name: body
  /gateway/lw/api/accounts/{account_id}/v2/savings/overview:
    post:
      tags:
        - Savings Overview
      summary: Get Savings Overview
      description: >-
        Fetches the overall savings, managed, and unmanaged savings for the
        provided account.
      operationId: GetSavingsOverview
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            format: date
          description: Start date for the savings period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            format: date
          description: End date for the savings period.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavingsOverviewResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{accountId}/v2/savings/detail:
    post:
      tags:
        - Savings Detail
      summary: Fetch savings details
      parameters:
        - name: accountId
          in: path
          required: true
          schema:
            type: string
          description: The account ID
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing ID
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            format: date
          description: Start date for the savings query
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            format: date
          description: End date for the savings query
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Account identifier
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group_by:
                  type: string
                  enum:
                    - Regions
                    - Commitment Type
                    - Instance family
                  description: The dimension to group savings by
                is_harness_managed:
                  type: boolean
                  description: Indicates whether the savings are managed by Harness
              required:
                - group_by
                - is_harness_managed
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavingsDetailResponse'
  /gateway/lw/api/accounts/{account_id}/v1/detail/commitment_utilisation:
    get:
      tags:
        - Commitment Utilization
      summary: Get commitment utilization details
      description: >-
        Retrieves detailed utilization data for savings plans and reserved
        instances with charts and trends
      operationId: GetCommitmentUtilizationDetails
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Account identifier
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-01-01'
          description: Start date for the utilization data period
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-01-31'
          description: End date for the utilization data period
        - name: regions
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
          description: >-
            Filter by regions (Note: Regional filtering has limitations for
            savings plans)
          style: form
          explode: true
        - name: cloud_account_ids
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
          description: Filter by cloud account IDs
          style: form
          explode: true
        - name: service
          in: query
          required: false
          schema:
            type: string
            enum:
              - Amazon Elastic Compute Cloud - Compute
              - Amazon Relational Database Service
          description: Filter by AWS service
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommitmentUtilizationDetailResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/savings/savings-rate:
    post:
      tags:
        - Savings Rate
      summary: Get Effective Savings Rate
      description: >-
        Fetches the effective savings rate and total spend percentage for the
        given account within the specified date range.
      operationId: GetSavingsRate
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: Start date for the savings calculation period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: End date for the savings calculation period.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UtilizationOverviewRequestFilters'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavingsRateResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{accountId}/v2/utilisation/overview:
    post:
      tags:
        - Utilization Overview
      summary: Get Utilization Overview
      parameters:
        - in: path
          name: accountId
          required: true
          schema:
            type: string
          description: The unique identifier of the account
        - in: query
          name: routingId
          required: true
          schema:
            type: string
          description: The routing ID for the account
        - in: query
          name: start_date
          required: true
          schema:
            type: string
            format: date
          description: The start date for the utilization data
        - in: query
          name: end_date
          required: true
          schema:
            type: string
            format: date
          description: The end date for the utilization data
        - in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
          description: The identifier of the account for context
      responses:
        '200':
          description: Successful response with utilization overview
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UtilizationOverviewResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/spend/overview:
    post:
      tags:
        - Spend Overview
      summary: Get overall spend breakdown across RI, SP and Ondemand cost
      description: >-
        Fetches spend breakdown across RI, SP and Ondemand cost in terms of cost
        incurred for the given account within the specified date range.
      operationId: SpendOverview
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: Start date for the spend calculation period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: End date for the spend calculation period.
      requestBody:
        required: false
        description: Filters for Spend Overview
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SpendBreakdownFilter'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SpendBreakdownResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/spend/detail:
    post:
      tags:
        - Spend Details
      summary: >-
        Get detailed breakdown of spend across RI, SP and Ondemand cost with
        charts and tabular data
      description: Get detailed breakdown of spend across RI, SP and Ondemand cost
      operationId: SpendDetails
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: Start date for the spend calculation period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: End date for the spend calculation period.
      requestBody:
        required: false
        description: Supported filters for Spends
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SpendBreakdownFilter'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SpendBreakdownResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/coverage/overview:
    post:
      tags:
        - Coverage Overview
      summary: Get overall coverage across RI, SP and Ondemand
      description: >-
        Fetches coverage across RI, SP and Ondemand cost in terms of cost
        incurred for the given account within the specified date range.
      operationId: CoverageOverview
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: Start date for the compute coverage calculation period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            example: '2021-10-19'
          description: End date for the compute coverage calculation period.
      requestBody:
        required: false
        description: Service definition
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/CopmputeCoverageFilter'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComputeCoverageResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/coverage/detail:
    post:
      tags:
        - Coverage Detail
      summary: Get detailed coverage breakdown by specified grouping
      description: >-
        Fetches detailed coverage breakdown for specific dimensions like
        Instance Family, Region, etc. within the specified date range.
      operationId: CoverageDetail
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the entity.
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing.
        - name: start_date
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-01-01'
          description: Start date for the coverage calculation period.
        - name: end_date
          in: query
          required: true
          schema:
            type: string
            format: date
            example: '2025-01-31'
          description: End date for the coverage calculation period.
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
          description: Identifier of the account.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group_by:
                  type: string
                  enum:
                    - Instance Family
                    - Region
                    - Machine Type
                  description: Dimension to group coverage data by
              required:
                - group_by
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComputeCoveragesDetailResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/inventory/ri/overview:
    post:
      tags:
        - RI Inventory Overview
      summary: Get Reserved Instance Inventory Overview
      description: >-
        Fetches overview of Reserved Instance inventory including total counts,
        distribution, status, and pending actions
      operationId: GetRIInventoryOverview
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2022-01-01'
          description: Start date for the inventory period
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2025-08-30'
          description: End date for the inventory period
      requestBody:
        description: Optional filters for the RI inventory
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InventoryRIAPIFilter'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RIInventoryOverviewResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/inventory/sp/overview:
    post:
      tags:
        - SP Inventory Overview
      summary: Get Savings Plans Inventory Overview
      description: >-
        Fetches overview of Savings Plans inventory including total counts,
        distribution, status, and pending actions
      operationId: GetSPInventoryOverview
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2024-01-01'
          description: Start date for the inventory period
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2025-08-30'
          description: End date for the inventory period
      requestBody:
        description: Optional filters for the SP inventory
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InventorySPAPIFilter'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SPInventoryOverviewResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/inventory/ri/list:
    post:
      tags:
        - RI Inventory APIs
      summary: List Reserved Instances
      description: Retrieves a paginated list of Reserved Instances with optional filtering
      operationId: ListReservedInstances
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2020-01-01'
          description: Start date for filtering Reserved Instances
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2025-08-30'
          description: End date for filtering Reserved Instances
      requestBody:
        description: Pagination and filtering options
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListReservedInstancesRequest'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListReservedInstancesResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/inventory/sp/list:
    post:
      tags:
        - SP Inventory APIs
      summary: List Savings Plans
      description: Retrieves a paginated list of Savings Plans with optional filtering
      operationId: ListSavingsPlans
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2020-01-01'
          description: Start date for filtering Savings Plans
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2025-08-30'
          description: End date for filtering Savings Plans
      requestBody:
        description: Pagination and filtering options
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListSavingsPlansRequest'
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListSavingsPlansResponse'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/inventory/ri/{riId}/detail:
    get:
      tags:
        - RI Inventory APIs
      summary: Get Reserved Instance Details
      description: Retrieves detailed information about a specific Reserved Instance
      operationId: GetReservedInstanceDetails
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: riId
          in: path
          required: true
          schema:
            type: string
          description: Unique identifier of the Reserved Instance
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReservedInstanceDetailsResponse'
        '400':
          description: Invalid request parameters
        '404':
          description: Reserved Instance not found
  /gateway/lw/api/accounts/{account_id}/v2/inventory/sp/{spId}/detail:
    get:
      tags:
        - SP Inventory APIs
      summary: Get Savings Plan Details
      description: Retrieves detailed information about a specific Savings Plan
      operationId: GetSavingsPlanDetails
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: spId
          in: path
          required: true
          schema:
            type: string
          description: Unique identifier of the Savings Plan
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavingsPlanDetailsResponse'
        '400':
          description: Invalid request parameters
        '404':
          description: Savings Plan not found
  /gateway/lw/api/accounts/{account_id}/v2/filters/ri:
    get:
      tags:
        - RI Inventory APIs
      summary: Get Reserved Instance Filter Options
      description: >-
        Retrieves available filter options for Reserved Instances including
        account IDs, instance types, platforms, etc.
      operationId: GetRIFilterOptions
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    description: Response timestamp
                  success:
                    type: boolean
                    description: Indicates if the request was successful
                  errors:
                    type: string
                    nullable: true
                    description: Error details, if any
                  response:
                    $ref: '#/components/schemas/InventoryRIAPIFilter'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/filters/sp:
    get:
      tags:
        - SP Inventory APIs
      summary: Get Savings Plans Filter Options
      description: >-
        Retrieves available filter options for Savings Plans including account
        IDs, instance families, payment options, etc.
      operationId: GetSPFilterOptions
      parameters:
        - name: account_id
          in: path
          required: true
          schema:
            type: string
          description: Account Identifier for the Entity
        - name: routingId
          in: query
          required: true
          schema:
            type: string
          description: Routing identifier for request processing
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  ts:
                    type: integer
                    description: Response timestamp
                  success:
                    type: boolean
                    description: Indicates if the request was successful
                  errors:
                    type: string
                    nullable: true
                    description: Error details, if any
                  response:
                    $ref: '#/components/schemas/InventorySPAPIFilter'
        '400':
          description: Invalid request parameters
  /gateway/lw/api/accounts/{account_id}/v2/landing:
    get:
      tags:
        - Commitment Orchestrator Landing Page
      summary: Get commitment landing page data
      description: >-
        Obtains list of cloud account connectors with their commitment status,
        coverage, and savings information
      operationId: LandingPageHandler
      parameters:
        - name: account_id
          description: Account Identifier for the Entity
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LandingPageResponse'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
  /audit/api/auditFilters:
    get:
      tags:
        - AuditFilters
      summary: >-
        Get the list of Filters of type Audit satisfying the criteria (if any)
        in the request
      operationId: getAuditFilterList
      parameters:
        - name: pageIndex
          in: query
          description: >-
            Page number of navigation. If left empty, default value of 0 is
            assumed
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page. If left empty, default value of 100 is
            assumed
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: searchTerm
          in: query
          description: Text to search/filter the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: Returns the list of Filters of type Audit
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
    put:
      tags:
        - AuditFilters
      summary: Updates the Filter of type Audit
      operationId: updateAuditFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Filter. This should have all the fields not just
          the updated ones
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: Returns the updated Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    post:
      tags:
        - AuditFilters
      summary: Creates a Filter
      operationId: postAuditFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Filter to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: Returns created Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
  /audit/api/auditFilters/{identifier}:
    get:
      tags:
        - AuditFilters
      summary: Gets a Filter of type Audit by identifier
      operationId: getAuditFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: >-
            Returns Filter of type Audit and having filterIdentifier as
            specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    delete:
      tags:
        - AuditFilters
      summary: Delete a Filter of type Audit by identifier
      operationId: deleteAuditFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /audit/api/audits/list:
    post:
      tags:
        - Audit
      summary: List Audit Events
      operationId: getAuditEventList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: This has the filter attributes for listing Audit Events
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditFilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AuditFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: This has a paginated list of Audit Events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseAuditEvent'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseAuditEvent'
  /audit/api/audits/listV2:
    post:
      tags:
        - Audit
      summary: List Audit Events
      operationId: getAuditEventListV2
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageIndex
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: 'Results per page(max 100)Default Value: 50'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 50
        - name: sortOrders
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SortOrder'
        - name: pageToken
          in: query
          description: 'Page Token of the next results to fetch.Default Value: '''''
          schema:
            type: string
      requestBody:
        description: This has the filter attributes for listing Audit Events
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuditFilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/AuditFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/AuditError'
        default:
          description: This has a paginated list of Audit Events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSliceResponseAuditEvent'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOSliceResponseAuditEvent'
  /audit/api/auditYaml:
    get:
      tags:
        - AuditYaml
      summary: Gets the YamlDiff of the Audit.
      operationId: getYamlDiff
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: auditId
          in: query
          required: true
          schema:
            type: string
      responses:
        default:
          description: Returns the old Yaml and new Yaml.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOYamlDiffRecord'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOYamlDiffRecord'
  /template/api/filters:
    get:
      tags:
        - Filter
      summary: List Filters
      description: Lists Filters for the given criteria.
      operationId: TemplategetFilterList
      parameters:
        - name: pageIndex
          in: query
          description: >-
            Page number of navigation. If left empty, default value of 0 is
            assumed.
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: >-
            Number of entries per page. If left empty, default value of 100 is
            assumed
          schema:
            type: integer
            format: int32
            default: 100
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
        - name: searchTerm
          in: query
          description: Text to search/filter the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the list of Filters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseFilter'
    put:
      tags:
        - Filter
      summary: Update a Filter
      description: Updates the filter for the given ID.
      operationId: TemplateupdateFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          This is the updated Filter. This should have all the fields not just
          the updated ones
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the updated Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    post:
      tags:
        - Filter
      summary: Create a Filter
      description: Creates a Filter.
      operationId: TemplatepostFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Connector to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Filter'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Filter'
          text/html:
            schema:
              $ref: '#/components/schemas/Filter'
          text/plain:
            schema:
              $ref: '#/components/schemas/Filter'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns created Filter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
  /template/api/filters/{identifier}:
    get:
      tags:
        - Filter
      summary: Return Filter Details
      description: Returns the settings of a filter for the given ID.
      operationId: TemplategetFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns Filter having filterIdentifier as specified in request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOFilter'
    delete:
      tags:
        - Filter
      summary: Delete a Filter
      description: Deletes a filter for the given ID.
      operationId: TemplatedeleteFilter
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Filter Identifier
          required: true
          schema:
            type: string
        - name: type
          in: query
          description: Type of Filter
          required: true
          schema:
            type: string
            enum:
              - Connector
              - Secret
              - DelegateProfile
              - Delegate
              - PipelineSetup
              - PipelineExecution
              - Deployment
              - Audit
              - Template
              - Trigger
              - EnvironmentGroup
              - FileStore
              - CCMRecommendation
              - Anomaly
              - RIInventory
              - SPInventory
              - Autocud
              - CCMConnector
              - CCMK8sConnector
              - Environment
              - RuleExecution
              - Override
              - InputSet
              - Webhook
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Boolean status whether request was successful or not
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            text/html:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /template/api/refresh-template/refreshed-yaml:
    post:
      tags:
        - Templates
      summary: Get YAML with updated Template Inputs
      description: Returns YAML with updated Template Inputs for a given YAML
      operationId: getRefreshedYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
      requestBody:
        description: YAML
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RefreshRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/RefreshRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: >-
            Returns YAML with updated Template Inputs, when an underlying
            Template has been updated and a reconciliation is pending in a given
            YAML.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTORefreshResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTORefreshResponse'
  /template/api/refresh-template/validate-template-inputs:
    get:
      tags:
        - Templates
      summary: Validate Template Inputs in a YAML
      description: >-
        Validates the Template Inputs in a pipeline's YAML specification. If the
        Template Inputs are invalid, the operation returns an error summary.
      operationId: TemplatevalidateTemplateInputs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: query
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Template version
          required: true
          schema:
            type: string
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: >-
            Returns a validation result for Template Inputs present in a YAML
            specification.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TemplateResponseDTOValidateTemplateInputsResponseDTO
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/TemplateResponseDTOValidateTemplateInputsResponseDTO
  /template/api/templates/v2/applyTemplates:
    post:
      tags:
        - Templates
      summary: Gets complete yaml with templateRefs resolved
      operationId: getYamlWithTemplateRefsResolvedV2
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          schema:
            type: string
        - name: projectIdentifier
          in: query
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: AppendInputSetValidator
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TemplateApplyRequestDTO'
          application/yaml:
            schema:
              $ref: '#/components/schemas/TemplateApplyRequestDTO'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Gets complete yaml with templateRefs resolved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateMergeResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateMergeResponse'
  /template/api/templates:
    post:
      tags:
        - Templates
      summary: Create a Template
      operationId: createTemplate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: storeType
          in: query
          description: Tells whether the Entity is to be saved on Git or not
          schema:
            type: string
            enum:
              - INLINE
              - REMOTE
              - INLINE_HC
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: setDefaultTemplate
          in: query
          description: Specify true if Default Template is to be set
          schema:
            type: boolean
            default: false
        - name: comments
          in: query
          description: Comments
          schema:
            type: string
        - name: isNewTemplate
          in: query
          description: >-
            When isNewTemplate flag is set user will not be able to create a new
            version for an existing template
          schema:
            type: boolean
            default: false
      requestBody:
        description: Template YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Template YAML
                description: Sample Template YAML
                value: |
                  template:
                    name: pipelineTemplate
                    identifier: pipelineTemplate
                    versionLabel: v1
                    type: Pipeline
                    projectIdentifier: TemplateDemo
                    orgIdentifier: default
                    tags: {}
                    spec:
                      stages:
                        - stage:
                            name: stage1
                            identifier: stage1
                            description: ""
                            type: Deployment
                            spec:
                              deploymentType: Kubernetes
                              service:
                                serviceRef: <+input>
                                serviceInputs: <+input>
                              environment:
                                environmentRef: <+input>
                                deployToAll: false
                                environmentInputs: <+input>
                                infrastructureDefinitions: <+input>
                              execution:
                                steps:
                                  - step:
                                      type: ShellScript
                                      name: Shell Script_1
                                      identifier: ShellScript_1
                                      spec:
                                        shell: Bash
                                        onDelegate: true
                                        source:
                                          type: Inline
                                          spec:
                                            script: <+input>
                                        environmentVariables: []
                                        outputVariables: []
                                      timeout: 10m
                                rollbackSteps: []
                            tags: {}
                            failureStrategies:
                              - onFailure:
                                  errors:
                                    - AllErrors
                                  action:
                                    type: StageRollback
          application/yaml:
            schema:
              type: string
            examples:
              Create:
                summary: Sample Create Template YAML
                description: Sample Template YAML
                value: |
                  template:
                    name: pipelineTemplate
                    identifier: pipelineTemplate
                    versionLabel: v1
                    type: Pipeline
                    projectIdentifier: TemplateDemo
                    orgIdentifier: default
                    tags: {}
                    spec:
                      stages:
                        - stage:
                            name: stage1
                            identifier: stage1
                            description: ""
                            type: Deployment
                            spec:
                              deploymentType: Kubernetes
                              service:
                                serviceRef: <+input>
                                serviceInputs: <+input>
                              environment:
                                environmentRef: <+input>
                                deployToAll: false
                                environmentInputs: <+input>
                                infrastructureDefinitions: <+input>
                              execution:
                                steps:
                                  - step:
                                      type: ShellScript
                                      name: Shell Script_1
                                      identifier: ShellScript_1
                                      spec:
                                        shell: Bash
                                        onDelegate: true
                                        source:
                                          type: Inline
                                          spec:
                                            script: <+input>
                                        environmentVariables: []
                                        outputVariables: []
                                      timeout: 10m
                                rollbackSteps: []
                            tags: {}
                            failureStrategies:
                              - onFailure:
                                  errors:
                                    - AllErrors
                                  action:
                                    type: StageRollback
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the created Template
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateWrapperResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateWrapperResponse'
  /template/api/templates/{templateIdentifier}/{versionLabel}:
    delete:
      tags:
        - Templates
      summary: Delete Template Version
      operationId: deleteTemplateVersion
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: path
          description: Version Label
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: Last Object Id
          schema:
            type: string
        - name: comments
          in: query
          schema:
            type: string
        - name: forceDelete
          in: query
          description: >-
            If true, the Entity will be forced delete, without checking any
            references/usages
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns true if the Template is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /template/api/templates/{templateIdentifier}:
    get:
      tags:
        - Templates
      summary: Get Template
      operationId: getTemplate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Version Label
          schema:
            type: string
        - name: deleted
          in: query
          description: Specifies whether Template is deleted or not
          schema:
            type: boolean
            default: false
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: loadFromFallbackBranch
          in: query
          schema:
            type: boolean
            default: false
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the saved Template
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateResponse'
  /template/api/templates/templateInputs/{templateIdentifier}:
    get:
      tags:
        - Templates
      summary: Gets Template Input Set YAML
      operationId: getTemplateInputSetYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Template Label
          required: true
          schema:
            type: string
        - name: Load-From-Cache
          in: header
          schema:
            type: string
            default: 'false'
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the Template Input Set YAML
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /template/api/templates/list-metadata:
    post:
      tags:
        - Templates
      summary: Gets all metadata of template list
      operationId: getTemplateMetadataList
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 25
        - name: sort
          in: query
          description: >-
            Specifies sorting criteria of the list. Like sorting based on the
            last updated entity, alphabetical sorting in an ascending or
            descending order
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          description: The word to be searched and included in the list response
          schema:
            type: string
        - name: filterIdentifier
          in: query
          description: Filter Identifier
          schema:
            type: string
        - name: templateListType
          in: query
          description: Template List Type
          required: true
          schema:
            type: string
            enum:
              - Stable
              - LastUpdated
              - All
        - name: includeAllTemplatesAvailableAtScope
          in: query
          description: Specify true if all accessible Templates are to be included
          schema:
            type: boolean
        - name: getDistinctFromBranches
          in: query
          schema:
            type: boolean
        - name: isGlobal
          in: query
          schema:
            type: boolean
            default: false
      requestBody:
        description: >-
          This contains details of Template filters based on Template Types and
          Template Names 
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TemplateFilterProperties'
          application/yaml:
            schema:
              $ref: '#/components/schemas/TemplateFilterProperties'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns a list of all the metadata of all Templates
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageTemplateMetadataSummaryResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageTemplateMetadataSummaryResponse
  /template/api/templates/move-config/{templateIdentifier}:
    post:
      tags:
        - Templates
      summary: Move Template YAML from inline to remote
      operationId: moveTemplateConfigs
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: repoName
          in: query
          description: Name of the repository.
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: moveConfigType
          in: query
          description: >-
            Tells weather the entity has to be moved from inline to remote or
            remote to inline
          schema:
            type: string
            enum:
              - INLINE_TO_REMOTE
        - name: versionLabel
          in: query
          description: Version Label
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Fetches Template YAML from Harness DB and creates a remote entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateMoveConfigResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateMoveConfigResponse'
  /template/api/templates/update/{templateIdentifier}/{versionLabel}:
    put:
      tags:
        - Templates
      summary: Update Template Version
      operationId: updateExistingTemplateVersion
      parameters:
        - name: If-Match
          in: header
          schema:
            type: string
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: path
          description: Version Label
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: rootFolder
          in: query
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
          schema:
            type: string
        - name: filePath
          in: query
          description: File Path of the Entity.
          schema:
            type: string
        - name: commitMsg
          in: query
          description: Commit Message to use for the merge commit.
          schema:
            type: string
        - name: lastObjectId
          in: query
          description: >-
            Its required field during update call request. It can be fetched
            from the response of GET API call for the entity
          schema:
            type: string
        - name: resolvedConflictCommitId
          in: query
          description: >-
            If the entity is git-synced, this parameter represents the commit id
            against which file conflicts are resolved
          schema:
            type: string
        - name: baseBranch
          in: query
          description: Name of the default branch.
          schema:
            type: string
        - name: connectorRef
          in: query
          description: >-
            Identifier of Connector needed for CRUD operations on the respective
            Entity
          schema:
            type: string
        - name: lastCommitId
          in: query
          description: last commit id of the file
          schema:
            type: string
        - name: isNewBranch
          in: query
          description: Checks the new branch
          schema:
            type: boolean
            default: false
        - name: isHarnessCodeRepo
          in: query
          description: Is Harness code repo enabled
          schema:
            type: boolean
        - name: setDefaultTemplate
          in: query
          description: Specify true if Default Template is to be set
          schema:
            type: boolean
            default: false
        - name: comments
          in: query
          description: Comments
          schema:
            type: string
      requestBody:
        description: Template YAML
        content:
          application/json:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Template YAML
                description: Sample Template YAML
                value: |
                  template:
                    name: pipelineTemplate
                    identifier: pipelineTemplate
                    versionLabel: v1
                    type: Pipeline
                    projectIdentifier: TemplateDemo
                    orgIdentifier: default
                    tags: {}
                    spec:
                      stages:
                        - stage:
                            name: stage1
                            identifier: stage1
                            description: ""
                            type: Deployment
                            spec:
                              deploymentType: Kubernetes
                              service:
                                serviceRef: <+input>
                                serviceInputs: <+input>
                              environment:
                                environmentRef: <+input>
                                deployToAll: false
                                environmentInputs: <+input>
                                infrastructureDefinitions: <+input>
                              execution:
                                steps:
                                  - step:
                                      type: ShellScript
                                      name: Shell Script_1
                                      identifier: ShellScript_1
                                      spec:
                                        shell: Bash
                                        onDelegate: true
                                        source:
                                          type: Inline
                                          spec:
                                            script: <+input>
                                        environmentVariables: []
                                        outputVariables: []
                                      timeout: 10m
                                rollbackSteps: []
                            tags: {}
                            failureStrategies:
                              - onFailure:
                                  errors:
                                    - AllErrors
                                  action:
                                    type: StageRollback
          application/yaml:
            schema:
              type: string
            examples:
              Update:
                summary: Sample Update Template YAML
                description: Sample Template YAML
                value: |
                  template:
                    name: pipelineTemplate
                    identifier: pipelineTemplate
                    versionLabel: v1
                    type: Pipeline
                    projectIdentifier: TemplateDemo
                    orgIdentifier: default
                    tags: {}
                    spec:
                      stages:
                        - stage:
                            name: stage1
                            identifier: stage1
                            description: ""
                            type: Deployment
                            spec:
                              deploymentType: Kubernetes
                              service:
                                serviceRef: <+input>
                                serviceInputs: <+input>
                              environment:
                                environmentRef: <+input>
                                deployToAll: false
                                environmentInputs: <+input>
                                infrastructureDefinitions: <+input>
                              execution:
                                steps:
                                  - step:
                                      type: ShellScript
                                      name: Shell Script_1
                                      identifier: ShellScript_1
                                      spec:
                                        shell: Bash
                                        onDelegate: true
                                        source:
                                          type: Inline
                                          spec:
                                            script: <+input>
                                        environmentVariables: []
                                        outputVariables: []
                                      timeout: 10m
                                rollbackSteps: []
                            tags: {}
                            failureStrategies:
                              - onFailure:
                                  errors:
                                    - AllErrors
                                  action:
                                    type: StageRollback
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the updated Template Version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateWrapperResponse'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOTemplateWrapperResponse'
  /template/api/templates/update/git-metadata/{templateIdentifier}/{versionLabel}:
    post:
      tags:
        - Templates
      summary: Update git metadata details for a remote template
      operationId: updateGitDetails
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: path
          description: Version Label
          required: true
          schema:
            type: string
      requestBody:
        description: This contains details of Git Entity like Git Branch info to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TemplateUpdateGitDetailsRequest'
          application/yaml:
            schema:
              $ref: '#/components/schemas/TemplateUpdateGitDetailsRequest'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Update git metadata details for a remote template
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOTemplateUpdateGitDetailsResponse
            application/yaml:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOTemplateUpdateGitDetailsResponse
  /template/api/templates/updateStableTemplate/{templateIdentifier}/{versionLabel}:
    put:
      tags:
        - Templates
      summary: Update Stable Template Version
      operationId: updateStableTemplate
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: path
          description: Template Identifier for the entity
          required: true
          schema:
            type: string
        - name: versionLabel
          in: path
          description: Version Label
          required: true
          schema:
            type: string
        - name: branch
          in: query
          description: Name of the branch.
          schema:
            type: string
        - name: repoIdentifier
          in: query
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
          schema:
            type: string
        - name: getDefaultFromOtherRepo
          in: query
          description: if true, return all the default entities
          schema:
            type: boolean
        - name: comments
          in: query
          description: Comments
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Failure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/Failure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/TemplateError'
        default:
          description: Returns the updated Template Version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
            application/yaml:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /cv/api/monitored-service/create-default:
    post:
      tags:
        - Monitored Services
      operationId: createDefaultMonitoredService
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}:
    get:
      tags:
        - Monitored Services
      summary: Get monitored service data
      operationId: getMonitoredService
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Get monitored service data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOMonitoredServiceResponse'
    put:
      tags:
        - Monitored Services
      summary: Updates monitored service data
      operationId: updateMonitoredService
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/MonitoredService'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Updates monitored service data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseMonitoredServiceResponse'
    delete:
      tags:
        - Monitored Services
      summary: Delete monitored service data
      operationId: deleteMonitoredService
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Delete monitored service data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvRestResponseBoolean'
  /cv/api/monitored-service/{identifier}/detach-template:
    put:
      tags:
        - Monitored Services
      summary: delete template reference from monitored service
      operationId: detachMonitoredServiceFromTemplate
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: delete template reference from monitored service
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /cv/api/monitored-service/all/time-series-health-sources:
    get:
      tags:
        - Monitored Services
      operationId: getAllMonitoredServicesWithHealthSources
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}/anomaliesCount:
    get:
      tags:
        - Monitored Services
      operationId: CvgetAnomaliesSummary
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/count-of-services:
    get:
      tags:
        - Monitored Services
      operationId: getCountOfServices
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          schema:
            type: string
        - name: filter
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/environments:
    get:
      tags:
        - Monitored Services
      operationId: getEnvironments
      parameters:
        - name: accountId
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/health-sources:
    get:
      tags:
        - Monitored Services
      operationId: getHealthSources
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{monitoredServiceIdentifier}/health-sources:
    get:
      tags:
        - Monitored Services
      operationId: getHealthSourcesForMonitoredServiceIdentifier
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/list:
    get:
      tags:
        - Monitored Services
      operationId: getList
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          schema:
            type: string
        - name: environmentIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: offset
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: filter
          in: query
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/platform/list:
    get:
      tags:
        - Monitored Services
      operationId: getListV2
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: environmentIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: offset
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: filter
          in: query
          schema:
            type: string
        - name: monitoredServiceType
          in: query
          schema:
            type: string
            enum:
              - Application
              - Infrastructure
        - name: hideNotConfiguredServices
          in: query
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}/secondary-events:
    get:
      tags:
        - Monitored Services
      operationId: getMSSecondaryEvents
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/secondary-events-details:
    get:
      tags:
        - Monitored Services
      operationId: getMSSecondaryEventsDetails
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: secondaryEventType
          in: query
          required: true
          schema:
            type: string
            enum:
              - Downtime
              - DataCollectionFailure
              - Annotation
              - ErrorBudgetReset
              - SrmAnalysisImpact
        - name: identifiers
          in: query
          required: true
          schema:
            maxItems: 2147483647
            minItems: 1
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{monitoredServiceIdentifier}/change-details:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceChangeDetails
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: sloIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{monitoredServiceIdentifier}/service-details:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceDetails
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/service-details:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceDetails_1
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
      deprecated: true
  /cv/api/monitored-service/service-environment:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceFromServiceAndEnvironment
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: serviceIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{monitoredServiceIdentifier}/logs:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceLogs
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: logType
          in: query
          required: true
          schema:
            type: string
            enum:
              - ApiCallLog
              - ExecutionLog
        - name: errorLogsOnly
          in: query
          schema:
            type: boolean
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: healthSources
          in: query
          schema:
            type: array
            items:
              type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/reconciliation-status:
    get:
      tags:
        - Monitored Services
      summary: fetch reconciliation status for template referenced monitored services
      operationId: getMonitoredServiceReconciliationStatuses
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: templateIdentifier
          in: query
          description: Scoped template identifier used to create the monitored service
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Template version Label
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: >-
            fetch reconciliation status for template referenced monitored
            services
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponsePageResponseMonitoredServiceReference
  /cv/api/monitored-service/{identifier}/resolved-template-inputs:
    get:
      tags:
        - Monitored Services
      summary: get monitored service resolved template inputs
      operationId: getMonitoredServiceResolvedTemplateInputs
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: templateIdentifier
          in: query
          description: Scoped template identifier used to create the monitored service
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Template version Label
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: get monitored service resolved template inputs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOString'
  /cv/api/monitored-service/{identifier}/scores:
    get:
      tags:
        - Monitored Services
      operationId: getMonitoredServiceScore
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}/notification-rules:
    get:
      tags:
        - Monitored Services
      summary: Get notification rules for MonitoredService
      operationId: getNotificationRulesForMonitoredService
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Get notification rules for MonitoredService
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseNotificationRuleResponse
  /cv/api/monitored-service/{identifier}/overall-health-score:
    get:
      tags:
        - Monitored Services
      operationId: getOverAllHealthScore
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: duration
          in: query
          schema:
            type: string
            enum:
              - FOUR_HOURS
              - TWENTY_FOUR_HOURS
              - THREE_DAYS
              - SEVEN_DAYS
              - THIRTY_DAYS
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/services:
    get:
      tags:
        - Monitored Services
      operationId: getServices
      parameters:
        - name: accountId
          in: query
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{monitoredServiceIdentifier}/health-source/{healthSourceIdentifier}/slo-metrics:
    get:
      tags:
        - Monitored Services
      operationId: getSloMetrics
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: path
          required: true
          schema:
            type: string
        - name: healthSourceIdentifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/reconciliation-required:
    get:
      tags:
        - Monitored Services
      summary: >-
        check if a template referenced monitored service(s) require
        reconciliation
      operationId: isReconciliationRequiredForMonitoredServices
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: templateIdentifier
          in: query
          description: Scoped template identifier used to create the monitored service
          required: true
          schema:
            type: string
        - name: versionLabel
          in: query
          description: Template version Label
          required: true
          schema:
            type: string
        - name: monitoredServiceIdentifier
          in: query
          description: >-
            filter to check if reconciliation required for a particular
            monitored service
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: >-
            check if a template referenced monitored service(s) require
            reconciliation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOBoolean'
  /cv/api/monitored-service:
    get:
      tags:
        - Monitored Services
      operationId: list
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: environmentIdentifier
          in: query
          schema:
            type: string
        - name: environmentIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: serviceIdentifier
          in: query
          schema:
            type: string
        - name: offset
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: filter
          in: query
          schema:
            type: string
        - name: monitoredServiceType
          in: query
          schema:
            type: string
            enum:
              - Application
              - Infrastructure
        - name: servicesAtRiskFilter
          in: query
          required: true
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    post:
      tags:
        - Monitored Services
      summary: Saves monitored service data
      operationId: saveMonitoredService
      parameters:
        - name: accountId
          in: query
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/MonitoredService'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Saves monitored service data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseMonitoredServiceResponse'
  /cv/api/monitored-service/template-input:
    post:
      tags:
        - Monitored Services
      summary: Saves monitored service from template input
      operationId: saveMonitoredServiceFromTemplateInput
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Template input yaml for the monitored service creation from given
          template
        content:
          '*/*':
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Saves monitored service from template input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseMonitoredServiceResponse'
  /cv/api/monitored-service/yaml:
    post:
      tags:
        - Monitored Services
      operationId: saveMonitoredServiceFromYaml
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}/health-monitoring-flag:
    put:
      tags:
        - Monitored Services
      operationId: setHealthMonitoringFlag
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: enable
          in: query
          required: true
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/{identifier}/template-input:
    put:
      tags:
        - Monitored Services
      summary: Update monitored service from yaml or template
      operationId: updateMonitoredServiceFromTemplateInput
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: >-
          Template input yaml for the monitored service creation from given
          template
        content:
          '*/*':
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Update monitored service from yaml or template
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseMonitoredServiceResponse'
  /cv/api/monitored-service/{identifier}/yaml:
    put:
      tags:
        - Monitored Services
      operationId: updateMonitoredServiceFromYaml
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              type: string
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/monitored-service/yaml-template:
    get:
      tags:
        - Monitored Services
      operationId: yamlTemplate
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: type
          in: query
          schema:
            type: string
            enum:
              - Application
              - Infrastructure
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/identifier/{identifier}:
    get:
      tags:
        - Downtime
      operationId: getDowntime
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    put:
      tags:
        - Downtime
      operationId: updateDowntimeData
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Downtime to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Downtime'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    delete:
      tags:
        - Downtime
      operationId: deleteDowntimeData
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/monitored-services/{identifier}:
    get:
      tags:
        - Downtime
      operationId: getAssociatedMonitoredServices
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/monitored-services:
    get:
      tags:
        - Downtime
      operationId: getDowntimeAssociatedMonitoredServices
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/history:
    get:
      tags:
        - Downtime
      operationId: getHistory
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: monitoredServiceIdentifier
          in: query
          description: For filtering on the basis of monitored services' identifiers
          schema:
            type: string
        - name: filter
          in: query
          description: For filtering on the basis of name
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/list:
    get:
      tags:
        - Downtime
      operationId: listDowntimes
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
        - name: monitoredServiceIdentifier
          in: query
          description: For filtering on the basis of monitored services' identifiers
          schema:
            type: string
        - name: filter
          in: query
          description: For filtering on the basis of name
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime:
    post:
      tags:
        - Downtime
      operationId: saveDowntime
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the Downtime to be saved
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Downtime'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/downtime/flag/{identifier}:
    put:
      tags:
        - Downtime
      operationId: updateDowntimeEnabled
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: enable
          in: query
          required: true
          schema:
            type: boolean
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/notification-rule/{identifier}:
    get:
      tags:
        - Srm Notification
      operationId: getNotificationRuleData
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    put:
      tags:
        - Srm Notification
      operationId: updateNotificationRuleData
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/NotificationRule'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    delete:
      tags:
        - Srm Notification
      operationId: deleteNotificationRuleData
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/notification-rule:
    get:
      tags:
        - Srm Notification
      operationId: getNotificationRuleData_1
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: notificationRuleIdentifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: pageNumber
          in: query
          required: true
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          required: true
          schema:
            type: integer
            format: int32
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
    post:
      tags:
        - Srm Notification
      operationId: saveNotificationRuleData
      parameters:
        - name: accountId
          in: query
          required: true
          schema:
            type: string
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/NotificationRule'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/slo-dashboard/environment-identifiers:
    get:
      tags:
        - SLOs dashboard
      operationId: getSLOAssociatedEnvironmentIdentifiers
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/slo-dashboard/monitored-services:
    get:
      tags:
        - SLOs dashboard
      operationId: getSLOAssociatedMonitoredServices
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/slo-dashboard/secondary-events-details:
    get:
      tags:
        - SLOs dashboard
      operationId: getSecondaryEventDetails
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: secondaryEventType
          in: query
          required: true
          schema:
            type: string
            enum:
              - Downtime
              - DataCollectionFailure
              - Annotation
              - ErrorBudgetReset
              - SrmAnalysisImpact
        - name: identifiers
          in: query
          required: true
          schema:
            maxItems: 2147483647
            minItems: 1
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/slo-dashboard/secondary-events/{identifier}:
    get:
      tags:
        - SLOs dashboard
      operationId: getSecondaryEvents
      parameters:
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
  /cv/api/slo-dashboard/risk-count:
    get:
      tags:
        - SLOs dashboard
      summary: Get all SLOs count by risk
      operationId: getServiceLevelObjectivesRiskCount
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: userJourneyIdentifiers
          in: query
          description: For filtering on the basis of user journeys' identifiers
          schema:
            type: array
            items:
              type: string
        - name: monitoredServiceIdentifier
          in: query
          description: For filtering on the basis of monitored services' identifiers
          schema:
            type: string
        - name: targetTypes
          in: query
          description: For filtering on the basis of target types
          schema:
            type: array
            items:
              type: string
              enum:
                - Rolling
                - Calender
        - name: errorBudgetRisks
          in: query
          description: For filtering on the basis of error budget risks
          schema:
            type: array
            items:
              type: string
              enum:
                - EXHAUSTED
                - UNHEALTHY
                - NEED_ATTENTION
                - OBSERVE
                - HEALTHY
        - name: filter
          in: query
          description: For filtering on the basis of name
          schema:
            type: string
        - name: sloType
          in: query
          description: For filtering on the basis of SLO type
          schema:
            type: string
            enum:
              - Simple
              - Composite
        - name: evaluationType
          in: query
          description: For filtering on the basis of SLI Evaluation type
          schema:
            type: string
            enum:
              - Window
              - Request
              - MetricLess
        - name: evaluationTypes
          in: query
          description: For filtering on the basis of SLI Evaluation types
          schema:
            type: array
            items:
              type: string
              enum:
                - Window
                - Request
                - MetricLess
        - name: envIdentifiers
          in: query
          description: For Filtering on the basis of environment identifiers
          schema:
            type: array
            items:
              type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Get the risk count for all SLOs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSLORiskCountResponse'
  /cv/api/slo-dashboard/widget/{identifier}/consumption:
    get:
      tags:
        - SLOs dashboard
      summary: Get SLO consumption breakdown
      operationId: getSloConsumptionBreakdownView
      parameters:
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLO's details
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseSLOConsumptionBreakdown
  /cv/api/slo-dashboard/widget/{identifier}:
    get:
      tags:
        - SLOs dashboard
      summary: Get SLO dashboard details
      operationId: getSLODetails
      parameters:
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
        - name: startTime
          in: query
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          schema:
            type: integer
            format: int64
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLO's details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSLODashboardDetail'
  /cv/api/slo-dashboard/widgets/list:
    get:
      tags:
        - SLOs dashboard
      summary: Get SLO list view
      operationId: getSLOHealthListView
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: userJourneyIdentifiers
          in: query
          description: For filtering on the basis of user journeys' identifiers
          schema:
            type: array
            items:
              type: string
        - name: monitoredServiceIdentifier
          in: query
          description: For filtering on the basis of monitored services' identifiers
          schema:
            type: string
        - name: targetTypes
          in: query
          description: For filtering on the basis of target types
          schema:
            type: array
            items:
              type: string
              enum:
                - Rolling
                - Calender
        - name: errorBudgetRisks
          in: query
          description: For filtering on the basis of error budget risks
          schema:
            type: array
            items:
              type: string
              enum:
                - EXHAUSTED
                - UNHEALTHY
                - NEED_ATTENTION
                - OBSERVE
                - HEALTHY
        - name: filter
          in: query
          description: For filtering on the basis of name
          schema:
            type: string
        - name: sloType
          in: query
          description: For filtering on the basis of SLO type
          schema:
            type: string
            enum:
              - Simple
              - Composite
        - name: evaluationType
          in: query
          description: For filtering on the basis of SLI Evaluation type
          schema:
            type: string
            enum:
              - Window
              - Request
              - MetricLess
        - name: evaluationTypes
          in: query
          description: For filtering on the basis of SLI Evaluation types
          schema:
            type: array
            items:
              type: string
              enum:
                - Window
                - Request
                - MetricLess
        - name: envIdentifiers
          in: query
          description: For Filtering on the basis of environment identifiers
          schema:
            type: array
            items:
              type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLOs for list view
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSLOHealthListView'
    post:
      tags:
        - SLOs dashboard
      summary: Get SLO list view
      operationId: getSLOHealthListViewV2
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SLODashboardApiFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLOs for list view
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSLOHealthListView'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/identifier/{identifier}:
    get:
      tags:
        - NG SLOs
      summary: Get SLO data
      operationId: getServiceLevelObjectiveNg
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLO's data
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponseServiceLevelObjectiveV2Response
    put:
      tags:
        - NG SLOs
      summary: Update SLO data
      operationId: updateSLODataNg
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the SLO to be updated
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AbstractServiceLevelObjective'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the updated SLO
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponseServiceLevelObjectiveV2Response
    delete:
      tags:
        - NG SLOs
      summary: Delete SLO data
      operationId: deleteSLODataNg
      parameters:
        - name: identifier
          in: path
          description: Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Returns true if the SLO is deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvRestResponseBoolean'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/composite-slo/onboarding-graph:
    post:
      tags:
        - NG SLOs
      summary: Get onBoarding graph for composite slo
      operationId: getOnboardingGraphNg
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Composite SLO spec which consists of list of SLO details
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/CompositeServiceLevelObjectiveSpec'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the time series data points for composite slo onBoarding graph
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseTimeGraphResponse'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2/status-list:
    post:
      tags:
        - NG SLOs
      summary: Get SLO list view
      operationId: getSLOHealthListViewNg
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SLODashboardApiFilter'
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLOs for list view
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageResponseSLOHealthListView'
  /cv/api/account/{accountIdentifier}/org/{orgIdentifier}/project/{projectIdentifier}/slo/v2:
    get:
      tags:
        - NG SLOs
      summary: Get all SLOs
      operationId: getServiceLevelObjectivesNg
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: offset
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          required: true
          schema:
            type: integer
            format: int32
        - name: pageSize
          in: query
          description: Results per page
          required: true
          schema:
            type: integer
            format: int32
        - name: userJourneys
          in: query
          schema:
            type: array
            items:
              type: string
        - name: identifiers
          in: query
          schema:
            type: array
            items:
              type: string
        - name: targetTypes
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - Rolling
                - Calender
        - name: errorBudgetRisks
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - EXHAUSTED
                - UNHEALTHY
                - NEED_ATTENTION
                - OBSERVE
                - HEALTHY
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLOs
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseServiceLevelObjectiveV2Response
    post:
      tags:
        - NG SLOs
      summary: Saves SLO data
      operationId: saveSLODataNg
      parameters:
        - name: accountIdentifier
          in: path
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: path
          description: Organization Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: projectIdentifier
          in: path
          description: Project Identifier for the Entity.
          required: true
          schema:
            type: string
      requestBody:
        description: Details of the SLO to be saved
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AbstractServiceLevelObjective'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the saved SLO
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/RestResponseServiceLevelObjectiveV2Response
  /cv/api/slo/{identifier}/errorBudgetResetHistory:
    get:
      tags:
        - SLOs
      summary: Get Error budget reset history
      operationId: getErrorBudgetResetHistory
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the error budget reset history
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseListSLOErrorBudgetReset'
  /cv/api/slo/{identifier}/notification-rules:
    get:
      tags:
        - SLOs
      summary: Get notification rules for SLO
      operationId: getNotificationRulesForSLO
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the notification rules for SLO
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ResponseDTOPageResponseNotificationRuleResponse
  /cv/api/slo/{identifier}/logs:
    get:
      tags:
        - SLOs
      summary: Get SLO logs
      operationId: getServiceLevelObjectiveLogs
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
        - name: logType
          in: query
          required: true
          schema:
            type: string
            enum:
              - ApiCallLog
              - ExecutionLog
        - name: errorLogsOnly
          in: query
          schema:
            type: boolean
        - name: startTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: endTime
          in: query
          required: true
          schema:
            type: integer
            format: int64
        - name: pageNumber
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: pageSize
          in: query
          description: Results per page
          schema:
            type: integer
            format: int32
            default: 10
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Gets the SLO's logs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponsePageResponseCVNGLog'
  /cv/api/slo/{identifier}/resetErrorBudget:
    post:
      tags:
        - SLOs
      summary: Reset Error budget history
      operationId: resetErrorBudget
      parameters:
        - name: accountId
          in: query
          description: Account Identifier for the Entity.
          required: true
          schema:
            type: string
        - name: orgIdentifier
          in: query
          description: Organization Identifier for the Entity.
          schema:
            type: string
        - name: projectIdentifier
          in: query
          description: Project Identifier for the Entity.
          schema:
            type: string
        - name: identifier
          in: path
          description: SLO identifier for the entity
          required: true
          schema:
            type: string
      requestBody:
        description: Details needed to reset error budget
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/SLOErrorBudgetReset'
        required: true
      responses:
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvFailure'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvFailure'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CvError'
            application/yaml:
              schema:
                $ref: '#/components/schemas/CvError'
        default:
          description: Reset Error budget history
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RestResponseSLOErrorBudgetReset'
  /cv/api/v1/orgs/{org}/projects/{project}/metric-graph/{slo-identifier}:
    get:
      tags:
        - ServiceLevelObjective
        - SLOs
      summary: Get Metric Graph For SLO
      description: Get Underlying Metrics Graph for SLO
      operationId: getMetricGraphForSLO
      parameters:
        - name: org
          in: path
          description: Organization identifier
          required: true
          schema:
            type: string
        - name: project
          in: path
          description: Project identifier
          required: true
          schema:
            type: string
        - name: slo-identifier
          in: path
          description: SLO identifier.
          required: true
          schema:
            type: string
        - name: start_time
          in: query
          description: 'Start Time for the metric graphs. '
          schema:
            type: integer
            format: int64
        - name: end_time
          in: query
          description: End Time for the metric graphs.
          schema:
            type: integer
            format: int64
        - name: Harness-Account
          in: header
          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.
          schema:
            type: string
      responses:
        '200':
          description: Metric Graph response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MetricGraph'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
        '502':
          description: Bad Gateway
      security:
        - x-api-key: []
  /cv/api/v1/orgs/{org}/projects/{project}/slo:
    get:
      tags:
        - ServiceLevelObjective
        - SLOs
      summary: List SLOs
      description: Returns a list of Service Level Objectives
      operationId: listSlo
      parameters:
        - name: org
          in: path
          description: Organization identifier
          required: true
          schema:
            type: string
        - name: project
          in: path
          description: Project identifier
          required: true
          schema:
            type: string
        - name: Harness-Account
          in: header
          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.
          schema:
            type: string
        - name: page
          in: query
          description: >-
            Pagination page number strategy: Specify the page number within the
            paginated collection related to the number of items on each page.
          schema:
            type: integer
            format: int32
            default: 0
        - name: limit
          in: query
          description: 'Pagination: Number of items to return.'
          schema:
            maximum: 100
            type: integer
            format: int32
            default: 20
        - name: composite_slo_identifier
          in: query
          description: >-
            Identifier for the Composite SLO for which underlying SLOs needs to
            be listed.
          schema:
            type: string
        - name: monitored_service_identifier
          in: query
          description: For filtering on the basis of monitored service identifier
          schema:
            type: string
        - name: user_journey_identifiers
          in: query
          description: >-
            List of User Journey identifiers on the basis of which the SLOs are
            filtered.
          schema:
            type: array
            items:
              type: string
        - name: filter
          in: query
          description: SLO Name on the basis of which the SLOs are filtered.
          schema:
            pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
            type: string
        - name: slo_type
          in: query
          description: SLO Types on the basis of which the SLOs are filtered.
          schema:
            maxLength: 1024
            minLength: 0
            type: string
        - name: env_identifiers
          in: query
          description: >-
            Identifiers of Environments on the basis of which the SLOs are
            filtered.
          schema:
            maxItems: 128
            minItems: 0
            type: array
            items:
              type: string
        - name: target_types
          in: query
          description: Target Types on the basis of which the SLOs are filtered.
          schema:
            type: array
            items:
              type: string
        - name: error_budget_risks
          in: query
          description: Error Budgets on the basis of which the SLOs are filtered.
          schema:
            type: array
            items:
              type: string
        - name: evaluation_type
          in: query
          description: Evaluation Type on the basis of which the SLOs are filtered.
          schema:
            type: string
        - name: child_resource
          in: query
          description: >-
            For filtering the simple slo&#x27;s on the basis of accountId. Set
            it to true for Account Level SLOs.
          schema:
            type: boolean
            default: false
      responses:
        '200':
          description: SLO List Response body
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SLOHealthListView'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
        '502':
          description: Bad Gateway
      security:
        - x-api-key: []
  /cv/api/usage/SRM/active-monitored-services/csv/download:
    get:
      tags:
        - Usage
      summary: Download CSV Active Monitored Services report
      operationId: downloadActiveMonitoredServiceCSVReport
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      responses:
        default:
          description: Download CSV Active Monitored Services report
  /cv/api/usage/SRM/active-services-monitored/csv/download:
    get:
      tags:
        - Usage
      summary: Download CSV Active Services Monitored report
      operationId: downloadActiveServiceMonitoredCSVReport
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      responses:
        default:
          description: Download CSV Active Services Monitored report
  /cv/api/usage/CV:
    get:
      tags:
        - Usage
      operationId: CvgetLicenseUsage
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        default:
          description: default response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSRMLicenseUsageDTO'
  /cv/api/usage/SRM:
    get:
      tags:
        - Usage
      operationId: getSRMLicenseUsage
      parameters:
        - name: accountIdentifier
          in: query
          required: true
          schema:
            type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
      responses:
        default:
          description: default response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOSRMLicenseUsageDTO'
  /cv/api/usage/SRM/active-monitored-services:
    post:
      tags:
        - Usage
      summary: >-
        Returns a List of active monitored services along with identifier,Active
        Monitored Services Count and other details
      operationId: listSRMActiveMonitoredServices
      parameters:
        - name: accountIdentifier
          in: query
          description: Account Identifier for the Entity.
          schema:
            type: string
        - name: page
          in: query
          description: 'Page Index of the results to fetch.Default Value: 0'
          schema:
            type: integer
            format: int32
            default: 0
        - name: size
          in: query
          description: Results per page
          schema:
            maximum: 50
            type: integer
            format: int32
            default: 20
        - name: sort
          in: query
          description: Sort criteria for the elements.
          schema:
            type: array
            items:
              type: string
        - name: timestamp
          in: query
          schema:
            type: integer
            format: int64
            default: 0
      requestBody:
        description: Details of the Active Services Monitored Filter
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/ActiveServiceMonitoredFilterParams'
      responses:
        default:
          description: Returns a list of active monitored services
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseDTOPageActiveMonitoredService'
  /gitops/api/filters:
    get:
      summary: List filters
      description: List returns a list of filters.
      operationId: FilterService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1FilterList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: filterType
          description: Filter type. One of {APPLICATION}
          in: query
          required: false
          schema:
            type: string
            enum:
              - FILTER_TYPE_UNSET
              - APPLICATION
              - AGENT
              - CLUSTER
              - REPO
            default: FILTER_TYPE_UNSET
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Filters
    post:
      summary: Create a filter
      description: CreateFilter creates a filter
      operationId: FilterService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Filter'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1Filter'
      tags:
        - Filters
    put:
      summary: Update a filter
      description: Update updates a filter
      operationId: FilterService_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Filter'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1Filter'
      tags:
        - Filters
  /gitops/api/filters/{identifier}:
    get:
      summary: Get get filter details
      description: Get filter details.
      operationId: FilterService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Filter'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          description: Identifier for the filter.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: filterType
          description: Filter type. One of {APPLICATION}
          in: query
          required: false
          schema:
            type: string
            enum:
              - FILTER_TYPE_UNSET
              - APPLICATION
              - AGENT
              - CLUSTER
              - REPO
            default: FILTER_TYPE_UNSET
      tags:
        - Filters
    delete:
      summary: Delete deletes a filter
      description: Delete filter.
      operationId: FilterService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: boolean
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          description: Identifier for the filter.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: filterType
          description: Filter type. One of {APPLICATION}
          in: query
          required: false
          schema:
            type: string
            enum:
              - FILTER_TYPE_UNSET
              - APPLICATION
              - AGENT
              - CLUSTER
              - REPO
            default: FILTER_TYPE_UNSET
      tags:
        - Filters
  /gitops/api/v1/agents:
    get:
      description: List agents.
      operationId: AgentServiceForServer_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AgentList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
    post:
      description: Create agent.
      operationId: AgentServiceForServer_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        $ref: '#/components/requestBodies/v1Agent'
      tags:
        - Agents
  /gitops/api/v1/agents/ns:
    get:
      description: Get agent namespaces.
      operationId: AgentServiceForServer_ListNamespaces
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitopsservicev1NamespaceList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/search:
    post:
      description: Search agents.
      operationId: AgentServiceForServer_Search
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AgentList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1AgentQuery'
        required: true
      tags:
        - Agents
  /gitops/api/v1/agents/tags:
    get:
      description: Get agent tags.
      operationId: AgentServiceForServer_ListTags
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1TagMap'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/versions:
    get:
      description: Get agent versions.
      operationId: AgentServiceForServer_ListVersions
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1VersionList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/{agent.identifier}:
    put:
      summary: Update agents.
      description: >-
        This API can be used to update an agent's details in Harness. The
        following fields will be updated to the new values in the body - "tags",
        "metadata"(all nested fields in metadata will be replaced with new
        provided values including empty/nil values if they're sent),
        "description", "type".
      operationId: AgentServiceForServer_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agent.identifier
          description: The gitops-server generated ID for this gitops-agent
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1Agent'
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/applications:
    get:
      summary: List applications for a specific agent
      description: List returns a list of applications for a specific agent.
      operationId: AgentApplicationService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          description: the application's name.
          in: query
          required: false
          schema:
            type: string
        - name: query.refresh
          description: >-
            set to "normal" OR "hard" if an application refresh is required
            before fetching.


            normal refresh only if source has changed(commit, helm chart
            version, etc.)


            hard refresh will invalidate all generated manifest caches and force
            regeneration.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          description: the project names to restrict returned list applications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.resourceVersion
          description: >-
            when specified with a watch call, shows changes that occur after
            that particular version of a resource.
          in: query
          required: false
          schema:
            type: string
        - name: query.selector
          description: >-
            the selector to to restrict returned list to applications only with
            matched labels.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: the repoURL to restrict returned list applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: fetchFromHarness
          description: >-
            fetchFromHarness is used in Get Application API to fetch application
            directly from mongodb instead of from agent. Use in Get Application
            API to fetch application directly from harness. This is already the
            fallback if the task times out on Gitops Agent. Use with caution as
            this may not return the latest state of application.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Applications
    post:
      summary: Create an application
      description: Create creates a new application in the specified project.
      operationId: AgentApplicationService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: clusterIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: repoIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: skipRepoValidation
          in: query
          required: false
          schema:
            type: boolean
        - name: repoIdentifiers
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationCreateRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/parent/{query.name}:
    get:
      summary: Get parent application
      description: >-
        Parent returns a parent application (app of apps or appset) by child
        name
      operationId: AgentApplicationService_Parent
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          description: the application's name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.refresh
          description: >-
            set to "normal" OR "hard" if an application refresh is required
            before fetching.


            normal refresh only if source has changed(commit, helm chart
            version, etc.)


            hard refresh will invalidate all generated manifest caches and force
            regeneration.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          description: the project names to restrict returned list applications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.resourceVersion
          description: >-
            when specified with a watch call, shows changes that occur after
            that particular version of a resource.
          in: query
          required: false
          schema:
            type: string
        - name: query.selector
          description: >-
            the selector to to restrict returned list to applications only with
            matched labels.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: the repoURL to restrict returned list applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: fetchFromHarness
          description: >-
            fetchFromHarness is used in Get Application API to fetch application
            directly from mongodb instead of from agent. Use in Get Application
            API to fetch application directly from harness. This is already the
            fallback if the task times out on Gitops Agent. Use with caution as
            this may not return the latest state of application.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.applicationName}/managed-resources:
    get:
      summary: Get ManagedResources
      description: ManagedResources returns list of managed resources.
      operationId: AgentApplicationService_ManagedResources
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsManagedResourcesResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.applicationName
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.version
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.applicationName}/resource-tree:
    get:
      summary: Get resource tree
      description: ResourceTree returns resource tree.
      operationId: AgentApplicationService_ResourceTree
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationTree'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.applicationName
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.version
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}:
    get:
      summary: Get application
      description: Get returns an application by name.
      operationId: AgentApplicationService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          description: the application's name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.refresh
          description: >-
            set to "normal" OR "hard" if an application refresh is required
            before fetching.


            normal refresh only if source has changed(commit, helm chart
            version, etc.)


            hard refresh will invalidate all generated manifest caches and force
            regeneration.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          description: the project names to restrict returned list applications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.resourceVersion
          description: >-
            when specified with a watch call, shows changes that occur after
            that particular version of a resource.
          in: query
          required: false
          schema:
            type: string
        - name: query.selector
          description: >-
            the selector to to restrict returned list to applications only with
            matched labels.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: the repoURL to restrict returned list applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: fetchFromHarness
          description: >-
            fetchFromHarness is used in Get Application API to fetch application
            directly from mongodb instead of from agent. Use in Get Application
            API to fetch application directly from harness. This is already the
            fallback if the task times out on Gitops Agent. Use with caution as
            this may not return the latest state of application.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/events:
    get:
      summary: List resource events
      description: ListResourceEvents returns a list of event resources.
      operationId: AgentApplicationService_ListResourceEvents
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsEventList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceUID
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/logs:
    get:
      summary: PodLogs returns stream of log entries for the specified pod(s).
      description: PodLogs returns stream of log entries for the specified pod(s).
      operationId: AgentApplicationService_PodLogs2
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsLogEntry'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsLogEntry
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.podName
          in: query
          required: false
          schema:
            type: string
        - name: query.container
          in: query
          required: false
          schema:
            type: string
        - name: query.sinceSeconds
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.seconds
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.nanos
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.tailLines
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.follow
          in: query
          required: false
          schema:
            type: boolean
        - name: query.untilTime
          in: query
          required: false
          schema:
            type: string
        - name: query.filter
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: query.previous
          in: query
          required: false
          schema:
            type: boolean
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/logs/batch:
    get:
      description: >-
        PodLogsBatch returns stream of log entry in batches of upto 1000 entries
        for the specified pod(s).
      operationId: AgentApplicationService_PodLogsBatch2
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsLogEntriesBatch'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsLogEntriesBatch
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.podName
          in: query
          required: false
          schema:
            type: string
        - name: query.container
          in: query
          required: false
          schema:
            type: string
        - name: query.sinceSeconds
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.seconds
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.nanos
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.tailLines
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.follow
          in: query
          required: false
          schema:
            type: boolean
        - name: query.untilTime
          in: query
          required: false
          schema:
            type: string
        - name: query.filter
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: query.previous
          in: query
          required: false
          schema:
            type: boolean
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/manifests:
    get:
      summary: Get application manifest
      description: GetManifests returns an application manifests.
      operationId: AgentApplicationService_GetManifests
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesManifestResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.revision
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
        - name: query.sourcePositions
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
              format: int64
        - name: query.revisions
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/pods/{query.podName}/logs:
    get:
      summary: PodLogs returns stream of log entries for the specified pod(s).
      description: PodLogs returns stream of log entries for the specified pod(s).
      operationId: AgentApplicationService_PodLogs
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsLogEntry'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsLogEntry
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: query.podName
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.container
          in: query
          required: false
          schema:
            type: string
        - name: query.sinceSeconds
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.seconds
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.nanos
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.tailLines
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.follow
          in: query
          required: false
          schema:
            type: boolean
        - name: query.untilTime
          in: query
          required: false
          schema:
            type: string
        - name: query.filter
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: query.previous
          in: query
          required: false
          schema:
            type: boolean
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/pods/{query.podName}/logs/batch:
    get:
      description: >-
        PodLogsBatch returns stream of log entry in batches of upto 1000 entries
        for the specified pod(s).
      operationId: AgentApplicationService_PodLogsBatch
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsLogEntriesBatch'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsLogEntriesBatch
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: query.podName
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.container
          in: query
          required: false
          schema:
            type: string
        - name: query.sinceSeconds
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.seconds
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.sinceTime.nanos
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.tailLines
          in: query
          required: false
          schema:
            type: string
            format: int64
        - name: query.follow
          in: query
          required: false
          schema:
            type: boolean
        - name: query.untilTime
          in: query
          required: false
          schema:
            type: string
        - name: query.filter
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: query.previous
          in: query
          required: false
          schema:
            type: boolean
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/revisions/{query.revision}/metadata:
    get:
      summary: Get revision metadata
      description: >-
        RevisionMetadata returns metadata for a specific revision of the
        application.
      operationId: AgentApplicationService_RevisionMetadata
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRevisionMetadata'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          description: the application's name
          in: path
          required: true
          schema:
            type: string
        - name: query.revision
          description: the revision of the app
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          description: the application's namespace.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
        - name: query.sourceIndex
          description: source index (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.versionId
          description: versionId from historical data (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{query.name}/syncwindows:
    get:
      summary: Get sync windows of the application
      description: GetApplicationSyncWindows returns sync windows of the application.
      operationId: AgentApplicationService_GetApplicationSyncWindows
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/applicationsApplicationSyncWindowsResponse
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.application.metadata.name}:
    put:
      summary: Update an application
      description: Update updates an application.
      operationId: AgentApplicationService_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.application.metadata.name
          description: >-
            Name must be unique within a namespace. Is required when creating
            resources, although

            some resources may allow a client to request the generation of an
            appropriate name

            automatically. Name is primarily intended for creation idempotence
            and configuration

            definition.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names

            +optional
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: clusterIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: repoIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: skipRepoValidation
          in: query
          required: false
          schema:
            type: boolean
        - name: repoIdentifiers
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationUpdateRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}:
    delete:
      summary: Delete an application
      description: Delete deletes an application.
      operationId: AgentApplicationService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.cascade
          in: query
          required: false
          schema:
            type: boolean
        - name: request.propagationPolicy
          in: query
          required: false
          schema:
            type: string
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
        - name: options.removeExistingFinalizers
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Applications
    patch:
      summary: Patch an application
      description: Patch applies a patch to an application.
      operationId: AgentApplicationService_Patch
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/servicev1ApplicationPatchRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/operation:
    delete:
      summary: Terminate operation
      description: TerminateOperation terminates the currently running operation.
      operationId: AgentApplicationService_TerminateOperation
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsOperationTerminateResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/resource:
    get:
      summary: Get an application resource
      description: GetResource returns single application resource.
      operationId: AgentApplicationService_GetResource
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationResourceResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.namespace
          in: query
          required: false
          schema:
            type: string
        - name: request.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: request.version
          in: query
          required: false
          schema:
            type: string
        - name: request.group
          in: query
          required: false
          schema:
            type: string
        - name: request.kind
          in: query
          required: false
          schema:
            type: string
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
    delete:
      summary: Delete resource
      description: DeleteResource deletes a single application resource.
      operationId: AgentApplicationService_DeleteResource
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.namespace
          in: query
          required: false
          schema:
            type: string
        - name: request.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: request.version
          in: query
          required: false
          schema:
            type: string
        - name: request.group
          in: query
          required: false
          schema:
            type: string
        - name: request.kind
          in: query
          required: false
          schema:
            type: string
        - name: request.force
          in: query
          required: false
          schema:
            type: boolean
        - name: request.orphan
          in: query
          required: false
          schema:
            type: boolean
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
    post:
      summary: Patch an application resource
      description: PatchResource patch single application resource.
      operationId: AgentApplicationService_PatchResource
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationResourceResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationResourcePatchRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/resource/actions:
    get:
      summary: List resource actions
      description: ListResourceActions returns a list of resource actions.
      operationId: AgentApplicationService_ListResourceActions
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsResourceActionsListResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.namespace
          in: query
          required: false
          schema:
            type: string
        - name: request.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: request.version
          in: query
          required: false
          schema:
            type: string
        - name: request.group
          in: query
          required: false
          schema:
            type: string
        - name: request.kind
          in: query
          required: false
          schema:
            type: string
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
    post:
      summary: Run resource action
      description: RunResourceAction runs a resource action.
      operationId: AgentApplicationService_RunResourceAction
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsResourceActionRunRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/rollback:
    post:
      summary: Rollback syncs an application to its target state
      description: >-
        Rollback syncs an application to its target state. Harness Event type
        (rollback).
      operationId: AgentApplicationService_Rollback
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationRollbackRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/rollouts/status:
    get:
      description: Get current status for the given Rollout resource
      operationId: RolloutsService_GetRolloutStatus
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RolloutInfo'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: request.namespace
          in: query
          required: false
          schema:
            type: string
        - name: request.resourceName
          in: query
          required: false
          schema:
            type: string
        - name: request.version
          in: query
          required: false
          schema:
            type: string
        - name: request.group
          in: query
          required: false
          schema:
            type: string
        - name: request.kind
          in: query
          required: false
          schema:
            type: string
        - name: request.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: request.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Rollouts
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/spec:
    put:
      summary: Update application spec
      description: UpdateSpec updates an application spec.
      operationId: AgentApplicationService_UpdateSpec
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationSpec'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationUpdateSpecRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/applications/{request.name}/sync:
    post:
      summary: Sync an application
      description: >-
        Sync syncs an application to its target state. Harness Event type
        (deploy)
      operationId: AgentApplicationService_Sync
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Application'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationSyncRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/appprojectsmapping:
    get:
      summary: Get Harness-Argo project mapping by agent
      description: >-
        GetAppProjectMappingListByAgent retrieves Harness-Argo project mappings
        list by agent.
      operationId: AppProjectMappingService_GetAppProjectMappingListByAgent
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1AppProjectMapping'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
    post:
      summary: Create Harness-Argo project mapping
      description: Create creates Harness-Argo project mappings.
      operationId: AppProjectMappingService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Empty'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/servicev1AppProjectMapping'
        required: true
      tags:
        - Project mappings
  /gitops/api/v1/agents/{agentIdentifier}/appprojectsmapping/{name}:
    delete:
      summary: Delete Harness-Arog project mapping
      description: Delete deletes Harness-Argo project mapping.
      operationId: AppProjectMappingService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Empty'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
  /gitops/api/v1/agents/{agentIdentifier}/certificates:
    get:
      summary: List all available repository certificates
      description: List repository certificates.
      operationId: AgentCertificateService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/certificatesRepositoryCertificateList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: query.hostNamePattern
          description: >-
            A file-glob pattern (not regular expression) the host name has to
            match.
          in: query
          required: false
          schema:
            type: string
        - name: query.certType
          description: The type of the certificate to match (ssh or https).
          in: query
          required: false
          schema:
            type: string
        - name: query.certSubType
          description: >-
            The sub type of the certificate to match (protocol dependent,
            usually only used for ssh certs).
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repository Certificates
    delete:
      summary: Delete the certificates that match the RepositoryCertificateQuery
      description: Delete repository certificates.
      operationId: AgentCertificateService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/certificatesRepositoryCertificateList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: query.hostNamePattern
          description: >-
            A file-glob pattern (not regular expression) the host name has to
            match.
          in: query
          required: false
          schema:
            type: string
        - name: query.certType
          description: The type of the certificate to match (ssh or https).
          in: query
          required: false
          schema:
            type: string
        - name: query.certSubType
          description: >-
            The sub type of the certificate to match (protocol dependent,
            usually only used for ssh certs).
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repository Certificates
    post:
      summary: Creates repository certificates on the server
      description: Create repository certificates.
      operationId: AgentCertificateService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/certificatesRepositoryCertificateList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/certificatesRepositoryCertificateCreateRequest
        required: true
      tags:
        - Repository Certificates
  /gitops/api/v1/agents/{agentIdentifier}/cluster_byname:
    get:
      summary: Get a cluster managed by an agent by name
      description: Get a cluster managed by agent using name
      operationId: AgentClusterService_GetByName
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: fetchScopePrefixedIdentifier
          description: >-
            Indicates whether the identifier of cluster fetched must contain
            harness scope prefix (account./org.)
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Clusters
  /gitops/api/v1/agents/{agentIdentifier}/cluster_byurl:
    get:
      summary: Get a cluster managed by an agent by URL
      description: Get a cluster managed by agent using URL
      operationId: AgentClusterService_GetByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: server
          in: query
          required: false
          schema:
            type: string
        - name: fetchScopePrefixedIdentifier
          description: >-
            Indicates whether the identifier of cluster fetched must contain
            harness scope prefix (account./org.)
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Clusters
  /gitops/api/v1/agents/{agentIdentifier}/clusters:
    get:
      summary: List returns list of clusters
      description: List clusters.
      operationId: AgentClusterService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/clustersClusterList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.server
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.id.type
          description: >-
            type is the type of the specified cluster identifier ( "server" -
            default, "name" ).
          in: query
          required: false
          schema:
            type: string
        - name: query.id.value
          description: value holds the cluster server URL or cluster name.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Clusters
    post:
      summary: Create creates a cluster
      description: Create cluster.
      operationId: AgentClusterService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/clustersClusterCreateRequest'
        required: true
      tags:
        - Clusters
  /gitops/api/v1/agents/{agentIdentifier}/clusters/{identifier}:
    get:
      summary: Get returns a cluster by identifier
      description: Get cluster.
      operationId: AgentClusterService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.server
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.id.type
          description: >-
            type is the type of the specified cluster identifier ( "server" -
            default, "name" ).
          in: query
          required: false
          schema:
            type: string
        - name: query.id.value
          description: value holds the cluster server URL or cluster name.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Clusters
    delete:
      summary: Delete deletes a cluster
      description: Delete cluster.
      operationId: AgentClusterService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/clustersClusterResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.server
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.id.type
          description: >-
            type is the type of the specified cluster identifier ( "server" -
            default, "name" ).
          in: query
          required: false
          schema:
            type: string
        - name: query.id.value
          description: value holds the cluster server URL or cluster name.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
        - name: forceDelete
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Clusters
    put:
      summary: Update updates a cluster
      description: Update cluster.
      operationId: AgentClusterService_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: forceUpdate
          in: query
          required: false
          schema:
            type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/clustersClusterUpdateRequest'
        required: true
      tags:
        - Clusters
  /gitops/api/v1/agents/{agentIdentifier}/deploy.yaml:
    get:
      description: GetDeployYaml returns deployment yamls for agents.
      operationId: AgentServiceForServer_GetDeployYaml
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: namespace
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          description: Disaster Recovery Identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: skipCrds
          in: query
          required: false
          schema:
            type: boolean
        - name: caData
          description: Certificate chain for the agent, must be base64 encoded.
          in: query
          required: false
          schema:
            type: string
        - name: proxy.http
          in: query
          required: false
          schema:
            type: string
        - name: proxy.https
          in: query
          required: false
          schema:
            type: string
        - name: proxy.username
          in: query
          required: false
          schema:
            type: string
        - name: proxy.password
          in: query
          required: false
          schema:
            type: string
        - name: proxy.skipSSLVerify
          in: query
          required: false
          schema:
            type: boolean
        - name: privateKey
          in: query
          required: false
          schema:
            type: string
        - name: argocdSettings.enableHelmPathTraversal
          description: >-
            Controls the Environment variable
            HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny
            dot-dot-slash values file paths. Disabled by default for security
            reasons. This config is pushed as an env variable to the
            repo-server.
          in: query
          required: false
          schema:
            type: boolean
        - name: argocdSettings.forceEnableInCluster
          description: >-
            For a Namespaced gitops agent, incluster is disabled by default.
            (controlled through variable `cluster.inclusterEnabled` in argocd-cm
            configmap. NOTE that you will have to manually restrict your
            namespaced agent's scope to its own cluster since this essentially
            makes the namespaced agent have access to incluster completely
            including creating clusterroles.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/deployment-spec/helm:
    post:
      description: PostDeployHelmChart returns the Helm Chart for deploying the agents.
      operationId: AgentServiceForServer_PostDeployHelmChart
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/octet-stream:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1DownloadResponse'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of v1DownloadResponse
        default:
          description: An unexpected error response.
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1AgentYamlQuery'
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/deployment-spec/yaml:
    post:
      description: PostDeployYaml returns deployment yamls for agents.
      operationId: AgentServiceForServer_PostDeployYaml
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1AgentYamlQuery'
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/gpgkeys:
    get:
      summary: List all available repository certificates
      description: List all available repository certificates.
      operationId: AgentGPGKeyService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gpgkeysGnuPGPublicKeyList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.keyID
          description: The GPG key ID to query for.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Clusters
    post:
      summary: Create one or more GPG public keys in the server's configuration
      description: Create one or more GPG public keys in the server's configuration.
      operationId: AgentGPGKeyService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gpgkeysGnuPGPublicKeyCreateResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gpgkeysGnuPGPublicKeyCreateRequest'
        required: true
      tags:
        - GnuPGP Keys
  /gitops/api/v1/agents/{agentIdentifier}/gpgkeys/{query.keyID}:
    get:
      summary: Get information about specified GPG public key from the server
      description: Get information about specified GPG public key from the server.
      operationId: AgentGPGKeyService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gpgkeysGnuPGPublicKey'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.keyID
          description: The GPG key ID to query for
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - GnuPGP Keys
    delete:
      summary: Delete specified GPG public key from the server's configuration
      description: Delete specified GPG public key from the server's configuration.
      operationId: AgentGPGKeyService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gpgkeysGnuPGPublicKeyResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.keyID
          description: The GPG key ID to query for
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - GnuPGP Keys
  /gitops/api/v1/agents/{agentIdentifier}/helm-chart:
    get:
      description: GetDeployHelmChart returns the Helm Chart for deploying the agents.
      operationId: AgentServiceForServer_GetDeployHelmChart
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/octet-stream:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/v1DownloadResponse'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of v1DownloadResponse
        default:
          description: An unexpected error response.
          content:
            application/octet-stream:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: namespace
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          description: Disaster Recovery Identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: skipCrds
          in: query
          required: false
          schema:
            type: boolean
        - name: caData
          description: Certificate chain for the agent, must be base64 encoded.
          in: query
          required: false
          schema:
            type: string
        - name: proxy.http
          in: query
          required: false
          schema:
            type: string
        - name: proxy.https
          in: query
          required: false
          schema:
            type: string
        - name: proxy.username
          in: query
          required: false
          schema:
            type: string
        - name: proxy.password
          in: query
          required: false
          schema:
            type: string
        - name: proxy.skipSSLVerify
          in: query
          required: false
          schema:
            type: boolean
        - name: privateKey
          in: query
          required: false
          schema:
            type: string
        - name: argocdSettings.enableHelmPathTraversal
          description: >-
            Controls the Environment variable
            HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny
            dot-dot-slash values file paths. Disabled by default for security
            reasons. This config is pushed as an env variable to the
            repo-server.
          in: query
          required: false
          schema:
            type: boolean
        - name: argocdSettings.forceEnableInCluster
          description: >-
            For a Namespaced gitops agent, incluster is disabled by default.
            (controlled through variable `cluster.inclusterEnabled` in argocd-cm
            configmap. NOTE that you will have to manually restrict your
            namespaced agent's scope to its own cluster since this essentially
            makes the namespaced agent have access to incluster completely
            including creating clusterroles.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/helm-overrides:
    get:
      description: GetDeployOverrides returns the Helm Chart overrides for the agents.
      operationId: AgentServiceForServer_GetDeployOverrides
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: namespace
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          description: Disaster Recovery Identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: skipCrds
          in: query
          required: false
          schema:
            type: boolean
        - name: caData
          description: Certificate chain for the agent, must be base64 encoded.
          in: query
          required: false
          schema:
            type: string
        - name: proxy.http
          in: query
          required: false
          schema:
            type: string
        - name: proxy.https
          in: query
          required: false
          schema:
            type: string
        - name: proxy.username
          in: query
          required: false
          schema:
            type: string
        - name: proxy.password
          in: query
          required: false
          schema:
            type: string
        - name: proxy.skipSSLVerify
          in: query
          required: false
          schema:
            type: boolean
        - name: privateKey
          in: query
          required: false
          schema:
            type: string
        - name: argocdSettings.enableHelmPathTraversal
          description: >-
            Controls the Environment variable
            HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny
            dot-dot-slash values file paths. Disabled by default for security
            reasons. This config is pushed as an env variable to the
            repo-server.
          in: query
          required: false
          schema:
            type: boolean
        - name: argocdSettings.forceEnableInCluster
          description: >-
            For a Namespaced gitops agent, incluster is disabled by default.
            (controlled through variable `cluster.inclusterEnabled` in argocd-cm
            configmap. NOTE that you will have to manually restrict your
            namespaced agent's scope to its own cluster since this essentially
            makes the namespaced agent have access to incluster completely
            including creating clusterroles.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
    post:
      description: >-
        PostDeployOverrides returns the Helm Chart overrides for deploying the
        agents.
      operationId: AgentServiceForServer_PostDeployOverrides
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1AgentYamlQuery'
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/hosted/cluster:
    post:
      summary: CreateHosted creates a harness hosted cluster
      description: Creates Harness hosted cluster.
      operationId: AgentClusterService_CreateHosted
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Cluster'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      tags:
        - Clusters
  /gitops/api/v1/agents/{agentIdentifier}/operator/yaml:
    get:
      description: GetOperatorYaml returns operator yaml for deploying the agents.
      operationId: AgentServiceForServer_GetOperatorYaml
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: namespace
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          description: Disaster Recovery Identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: skipCrds
          in: query
          required: false
          schema:
            type: boolean
        - name: caData
          description: Certificate chain for the agent, must be base64 encoded.
          in: query
          required: false
          schema:
            type: string
        - name: proxy.http
          in: query
          required: false
          schema:
            type: string
        - name: proxy.https
          in: query
          required: false
          schema:
            type: string
        - name: proxy.username
          in: query
          required: false
          schema:
            type: string
        - name: proxy.password
          in: query
          required: false
          schema:
            type: string
        - name: proxy.skipSSLVerify
          in: query
          required: false
          schema:
            type: boolean
        - name: privateKey
          in: query
          required: false
          schema:
            type: string
        - name: argocdSettings.enableHelmPathTraversal
          description: >-
            Controls the Environment variable
            HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny
            dot-dot-slash values file paths. Disabled by default for security
            reasons. This config is pushed as an env variable to the
            repo-server.
          in: query
          required: false
          schema:
            type: boolean
        - name: argocdSettings.forceEnableInCluster
          description: >-
            For a Namespaced gitops agent, incluster is disabled by default.
            (controlled through variable `cluster.inclusterEnabled` in argocd-cm
            configmap. NOTE that you will have to manually restrict your
            namespaced agent's scope to its own cluster since this essentially
            makes the namespaced agent have access to incluster completely
            including creating clusterroles.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
    post:
      description: PostOperatorYaml returns operator yaml for deploying the agents.
      operationId: AgentServiceForServer_PostOperatorYaml
      responses:
        '200':
          description: A successful response.
          content:
            application/yaml:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/yaml:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/v1AgentYamlQuery'
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/primaryNode:
    patch:
      description: Set primary disaster recovery node.
      operationId: AgentServiceForServer_SetPrimaryNode
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1AgentSetPrimaryNodeRequest'
        required: true
      tags:
        - Agents
  /gitops/api/v1/agents/{agentIdentifier}/projects:
    get:
      summary: List returns list of Argo projects
      description: Lists lists Argo projects.
      operationId: AgentProjectService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/appprojectsAppProjectList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
      tags:
        - Projects
    post:
      summary: Create a new Argo project
      description: Create a new Argo project
      operationId: AgentProjectService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/appprojectsAppProject'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/projectsProjectCreateRequest'
        required: true
      tags:
        - Projects
  /gitops/api/v1/agents/{agentIdentifier}/projects/{query.name}:
    get:
      summary: Get returns an Argo project by name
      description: Get returns an Argo project by name.
      operationId: AgentProjectService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/appprojectsAppProject'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Projects
    delete:
      summary: Delete deletes an Argo project
      description: Delete deletes an Argo project.
      operationId: AgentProjectService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/projectsEmptyResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Projects
  /gitops/api/v1/agents/{agentIdentifier}/projects/{request.project.metadata.name}:
    put:
      summary: Update updates an Argo project
      description: Update updates an Argo project.
      operationId: AgentProjectService_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/appprojectsAppProject'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: request.project.metadata.name
          description: >-
            Name must be unique within a namespace. Is required when creating
            resources, although

            some resources may allow a client to request the generation of an
            appropriate name

            automatically. Name is primarily intended for creation idempotence
            and configuration

            definition.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names

            +optional
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/projectsProjectUpdateRequest'
        required: true
      tags:
        - Projects
  /gitops/api/v1/agents/{agentIdentifier}/reconcile/counts:
    post:
      summary: Collect entity counts on cluster via agent
      description: >-
        Returns number of entities that exist in the cluster on the agent. 

        Filter can be used to count only global entities (with empty project)
        and those specified by the filter.
      operationId: ReconcilerService_CollectCounts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reconcilerReconcileCountsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/servicev1ReconcilerFilter'
      tags:
        - Reconciler
  /gitops/api/v1/agents/{agentIdentifier}/reconcile/import:
    post:
      summary: Import data from cluster via agent
      description: >-
        Imports data from cluster via agent. There must be at least one project
        mapping in the database.

        Returns number of entities imported.
      operationId: ReconcilerService_ImportData
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/reconcilerReconcileCountsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/servicev1ReconcilerFilter'
      tags:
        - Reconciler
  /gitops/api/v1/agents/{agentIdentifier}/repocreds:
    post:
      summary: Create a new repository credential
      description: CreateRepositoryCredentials creates a new repository credential.
      operationId: AgentRepositoryCredentialsService_CreateRepositoryCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1RepositoryCredentials'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/hrepocredsRepoCredsCreateRequest'
        required: true
      tags:
        - Repository credentials
  /gitops/api/v1/agents/{agentIdentifier}/repocreds/get:
    post:
      summary: Get credentials for repository url
      description: >-
        GetCredentialsForRepositoryUrl returns a repository credential given its
        url.
      operationId: AgentRepositoryCredentialsService_GetCredentialsForRepositoryUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1RepositoryCredentials'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/hrepocredsRepoCredsQuery'
        required: true
      tags:
        - Repository credentials
  /gitops/api/v1/agents/{agentIdentifier}/repocreds/{identifier}:
    get:
      summary: Get repository credential by identifier
      description: >-
        GetRepositoryCredentials retrieves a repository credential given its
        identifier.
      operationId: AgentRepositoryCredentialsService_GetRepositoryCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1RepositoryCredentials'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.url
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.repoCredsType
          description: RepoCreds type - git or helm.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repository credentials
    delete:
      summary: Delete a repository credential
      description: DeleteRepositoryCredentials deletes a specific repository credential.
      operationId: AgentRepositoryCredentialsService_DeleteRepositoryCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/hrepocredsRepoCredsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repository credentials
    put:
      summary: Update a repository credential
      description: UpdateRepositoryCredentials updates a specific repository credential.
      operationId: AgentRepositoryCredentialsService_UpdateRepositoryCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1RepositoryCredentials'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/hrepocredsRepoCredsUpdateRequest'
        required: true
      tags:
        - Repository credentials
  /gitops/api/v1/agents/{agentIdentifier}/repositories:
    get:
      summary: ListRepositories gets a list of all configured repositories
      description: ListRepositories gets a list of all configured repositories.
      operationId: AgentRepositoryService_ListRepositories
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepositoryList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
    post:
      summary: CreateRepository creates a new repository configuration
      description: CreateRepository creates a new repository configuration.
      operationId: AgentRepositoryService_CreateRepository
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Repository'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: repoCredsId
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/repositoriesRepoCreateRequest'
        required: true
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/eso/check:
    get:
      summary: Checks whether External Secrets Operator is installed
      description: >-
        CheckExternalSecretsOperator Checks whether External Secrets Operator is
        installed or not
      operationId: AgentRepositoryService_CheckExternalSecretsOperator
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesCheckESOResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/eso/generators:
    get:
      summary: Returns a list of ESO generators installed in agent namespace.
      description: Returns a list of ESO generators installed in agent namespace.
      operationId: AgentRepositoryService_ListESOGenerators
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesESOGeneratorResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - UNSET
              - AWS_ECR
              - GOOGLE_GCR
            default: UNSET
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: url
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/oci/type:
    post:
      summary: Returns the Repository type of OCI repo
      description: CheckOCIRepoType Returns the Repository type of OCI repo
      operationId: AgentRepositoryService_CheckOCIRepoType
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1OCIRepoTypeResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1OCIRepoType'
        required: true
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/validate:
    post:
      summary: ValidateAccess gets connection state for a repository
      description: ValidateAccess gets connection state for a repository.
      operationId: AgentRepositoryService_ValidateAccess
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/commonsConnectionState'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/repositoriesRepoAccessQuery'
        required: true
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}:
    get:
      summary: Get returns a repository or its credentials
      description: Get returns a repository or its credentials.
      operationId: AgentRepositoryService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Repository'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
    delete:
      summary: DeleteRepository deletes a repository from the configuration
      description: DeleteRepository deletes a repository from the configuration.
      operationId: AgentRepositoryService_DeleteRepository
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepoResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
        - name: forceDelete
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Repositories
    put:
      summary: UpdateRepository updates a repository configuration
      description: UpdateRepository updates a repository configuration.
      operationId: AgentRepositoryService_UpdateRepository
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Repository'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/repositoriesRepoUpdateRequest'
        required: true
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/appdetails:
    get:
      summary: GetAppDetails returns application details by given path
      description: GetAppDetails returns application details by given path.
      operationId: AgentRepositoryService_GetAppDetails
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepoAppDetailsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.repoURL
          description: >-
            RepoURL is the URL to the repository (Git or Helm) that contains the
            application manifests.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.path
          description: >-
            Path is a directory path within the Git repository, and is only
            valid for applications sourced from Git.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.targetRevision
          description: >-
            TargetRevision defines the revision of the source to sync the
            application to.

            In case of Git, this can be commit, tag, or branch. If omitted, will
            equal to HEAD.

            In case of Helm, this is a semver tag for the Chart's version.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.valueFiles
          description: >-
            ValuesFiles is a list of Helm value files to use when generating a
            template.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.helm.releaseName
          description: >-
            ReleaseName is the Helm release name to use. If omitted it will use
            the application name.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.values
          description: >-
            Values specifies Helm values to be passed to helm template,
            typically defined as a block.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.version
          description: >-
            Version is the Helm version to use for templating (either "2" or
            "3").
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.passCredentials
          description: >-
            PassCredentials pass credentials to all domains (Helm's
            --pass-credentials).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.ignoreMissingValueFiles
          description: >-
            IgnoreMissingValueFiles prevents helm template from failing when
            valueFiles do not exist locally by not appending them to helm
            template --values.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.skipCrds
          description: >-
            SkipCrds skips custom resource definition installation step (Helm's
            --skip-crds).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.namespace
          description: >-
            Namespace is an optional namespace to template with. If left empty,
            defaults to the app's destination namespace.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.kubeVersion
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.apiVersions
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.helm.skipTests
          description: >-
            SkipTests skips test manifest installation step (Helm's
            --skip-tests).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.skipSchemaValidation
          description: >-
            SkipSchemaValidation skips JSON schema validation (Helm's
            --skip-schema-validation).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.namePrefix
          description: NamePrefix is a prefix appended to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.nameSuffix
          description: NameSuffix is a suffix appended to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.images
          description: Images is a list of Kustomize image override specifications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.kustomize.version
          description: >-
            Version controls which version of Kustomize to use for rendering
            manifests.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.forceCommonLabels
          description: >-
            ForceCommonLabels specifies whether to force applying common labels
            to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.forceCommonAnnotations
          description: >-
            ForceCommonAnnotations specifies whether to force applying common
            annotations to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.namespace
          description: Namespace sets the namespace that Kustomize adds to all resources.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.components
          description: >-
            Components specifies a list of kustomize components to add to the
            kustomization before building.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.kustomize.labelWithoutSelector
          description: >-
            LabelWithoutSelector specifies whether to apply common labels to
            resource selectors or not.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.kubeVersion
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.apiVersions
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.ksonnet.environment
          description: Environment is a ksonnet application environment name.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.directory.recurse
          description: >-
            Recurse specifies whether to scan a directory recursively for
            manifests.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.directory.jsonnet.libs
          description: Additional library search dirs.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.directory.exclude
          description: >-
            Exclude contains a glob pattern to match paths against that should
            be explicitly excluded from being used during manifest generation.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.directory.include
          description: >-
            Include contains a glob pattern to match paths against that should
            be explicitly included during manifest generation.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.plugin.name
          in: query
          required: false
          schema:
            type: string
        - name: query.source.chart
          description: >-
            Chart is a Helm chart name, and must be specified for applications
            sourced from a Helm repo.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.ref
          description: >-
            Ref is reference to another source within sources field. This field
            will not be used if used with a `source` tag.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.name
          description: >-
            Name is used to refer to a source and is displayed in the UI. It is
            used in multi-source Applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appName
          in: query
          required: false
          schema:
            type: string
        - name: query.appProject
          in: query
          required: false
          schema:
            type: string
        - name: query.sourceIndex
          description: source index (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.versionId
          description: versionId from historical data (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/apps:
    get:
      summary: ListApps returns list of apps in the repo
      description: ListApps returns list of apps in the repo.
      operationId: AgentRepositoryService_ListApps
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepoAppsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          in: query
          required: false
          schema:
            type: string
        - name: query.revision
          in: query
          required: false
          schema:
            type: string
        - name: query.appName
          in: query
          required: false
          schema:
            type: string
        - name: query.appProject
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/helmcharts:
    get:
      summary: GetHelmCharts returns list of helm charts in the specified repository
      description: GetHelmCharts returns list of helm charts in the specified repository.
      operationId: AgentRepositoryService_GetHelmCharts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesHelmChartsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories/{identifier}/refs:
    get:
      summary: Returns a list of refs (e.g. branches and tags) in the repo
      description: Returns a list of refs (e.g. branches and tags) in the repo.
      operationId: AgentRepositoryService_ListRefs
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRefs'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/appdetails:
    get:
      summary: >-
        GetAppDetailsByUrl returns application details by given path for
        repositories by URL
      description: GetAppDetails returns application details by given path.
      operationId: AgentRepositoryService_GetAppDetailsByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepoAppDetailsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.source.repoURL
          description: >-
            RepoURL is the URL to the repository (Git or Helm) that contains the
            application manifests.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.path
          description: >-
            Path is a directory path within the Git repository, and is only
            valid for applications sourced from Git.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.targetRevision
          description: >-
            TargetRevision defines the revision of the source to sync the
            application to.

            In case of Git, this can be commit, tag, or branch. If omitted, will
            equal to HEAD.

            In case of Helm, this is a semver tag for the Chart's version.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.valueFiles
          description: >-
            ValuesFiles is a list of Helm value files to use when generating a
            template.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.helm.releaseName
          description: >-
            ReleaseName is the Helm release name to use. If omitted it will use
            the application name.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.values
          description: >-
            Values specifies Helm values to be passed to helm template,
            typically defined as a block.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.version
          description: >-
            Version is the Helm version to use for templating (either "2" or
            "3").
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.passCredentials
          description: >-
            PassCredentials pass credentials to all domains (Helm's
            --pass-credentials).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.ignoreMissingValueFiles
          description: >-
            IgnoreMissingValueFiles prevents helm template from failing when
            valueFiles do not exist locally by not appending them to helm
            template --values.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.skipCrds
          description: >-
            SkipCrds skips custom resource definition installation step (Helm's
            --skip-crds).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.namespace
          description: >-
            Namespace is an optional namespace to template with. If left empty,
            defaults to the app's destination namespace.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.kubeVersion
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.helm.apiVersions
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.helm.skipTests
          description: >-
            SkipTests skips test manifest installation step (Helm's
            --skip-tests).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.helm.skipSchemaValidation
          description: >-
            SkipSchemaValidation skips JSON schema validation (Helm's
            --skip-schema-validation).
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.namePrefix
          description: NamePrefix is a prefix appended to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.nameSuffix
          description: NameSuffix is a suffix appended to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.images
          description: Images is a list of Kustomize image override specifications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.kustomize.version
          description: >-
            Version controls which version of Kustomize to use for rendering
            manifests.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.forceCommonLabels
          description: >-
            ForceCommonLabels specifies whether to force applying common labels
            to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.forceCommonAnnotations
          description: >-
            ForceCommonAnnotations specifies whether to force applying common
            annotations to resources for Kustomize apps.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.namespace
          description: Namespace sets the namespace that Kustomize adds to all resources.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.components
          description: >-
            Components specifies a list of kustomize components to add to the
            kustomization before building.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.kustomize.labelWithoutSelector
          description: >-
            LabelWithoutSelector specifies whether to apply common labels to
            resource selectors or not.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.kustomize.kubeVersion
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.kustomize.apiVersions
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.ksonnet.environment
          description: Environment is a ksonnet application environment name.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.directory.recurse
          description: >-
            Recurse specifies whether to scan a directory recursively for
            manifests.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.source.directory.jsonnet.libs
          description: Additional library search dirs.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.source.directory.exclude
          description: >-
            Exclude contains a glob pattern to match paths against that should
            be explicitly excluded from being used during manifest generation.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.directory.include
          description: >-
            Include contains a glob pattern to match paths against that should
            be explicitly included during manifest generation.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.plugin.name
          in: query
          required: false
          schema:
            type: string
        - name: query.source.chart
          description: >-
            Chart is a Helm chart name, and must be specified for applications
            sourced from a Helm repo.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.ref
          description: >-
            Ref is reference to another source within sources field. This field
            will not be used if used with a `source` tag.
          in: query
          required: false
          schema:
            type: string
        - name: query.source.name
          description: >-
            Name is used to refer to a source and is displayed in the UI. It is
            used in multi-source Applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appName
          in: query
          required: false
          schema:
            type: string
        - name: query.appProject
          in: query
          required: false
          schema:
            type: string
        - name: query.sourceIndex
          description: source index (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: query.versionId
          description: versionId from historical data (for multi source apps).
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/apps:
    get:
      summary: ListAppsByUrl returns list of apps in the repo
      description: ListApps returns list of apps in the repo.
      operationId: AgentRepositoryService_ListAppsByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRepoAppsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          in: query
          required: false
          schema:
            type: string
        - name: query.revision
          in: query
          required: false
          schema:
            type: string
        - name: query.appName
          in: query
          required: false
          schema:
            type: string
        - name: query.appProject
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/helmcharts:
    get:
      summary: GetHelmChartsByUrl returns list of helm charts in the repository by URL
      description: GetHelmCharts returns list of helm charts in the specified repository.
      operationId: AgentRepositoryService_GetHelmChartsByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesHelmChartsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repositories_byurl/refs:
    get:
      summary: Returns a list of refs (e.g. branches and tags) in the repo by URL
      description: Returns a list of refs (e.g. branches and tags) in the repo.
      operationId: AgentRepositoryService_ListRefsByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/repositoriesRefs'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: identifier
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: Repo URL for query.
          in: query
          required: false
          schema:
            type: string
        - name: query.forceRefresh
          description: Whether to force a cache refresh on repo's connection state.
          in: query
          required: false
          schema:
            type: boolean
        - name: query.project
          description: The associated project project.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/repository_byurl:
    get:
      summary: Get a repository configured in gitops by URL from Harness
      description: 'Returns a repository by URL '
      operationId: AgentRepositoryService_GetByUrl
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RepoByUrlRespList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Agent.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Agent.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Agent.
          in: query
          required: false
          schema:
            type: string
        - name: url
          description: URL by which to find the repository entity managed by agent.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: fetchScopePrefixedIdentifier
          description: >-
            Indicates whether the identifier of repo fetched must contain the
            harness scope prefix such (account./org.)
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Repositories
  /gitops/api/v1/agents/{agentIdentifier}/stream/applications:
    get:
      summary: Watch returns stream of application change events
      description: Watch returns stream of application change events.
      operationId: AgentApplicationService_Watch
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsApplicationWatchEvent'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsApplicationWatchEvent
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          description: the application's name.
          in: query
          required: false
          schema:
            type: string
        - name: query.refresh
          description: >-
            set to "normal" OR "hard" if an application refresh is required
            before fetching.


            normal refresh only if source has changed(commit, helm chart
            version, etc.)


            hard refresh will invalidate all generated manifest caches and force
            regeneration.
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          description: the project names to restrict returned list applications.
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: query.resourceVersion
          description: >-
            when specified with a watch call, shows changes that occur after
            that particular version of a resource.
          in: query
          required: false
          schema:
            type: string
        - name: query.selector
          description: >-
            the selector to to restrict returned list to applications only with
            matched labels.
          in: query
          required: false
          schema:
            type: string
        - name: query.repo
          description: the repoURL to restrict returned list applications.
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: fetchFromHarness
          description: >-
            fetchFromHarness is used in Get Application API to fetch application
            directly from mongodb instead of from agent. Use in Get Application
            API to fetch application directly from harness. This is already the
            fallback if the task times out on Gitops Agent. Use with caution as
            this may not return the latest state of application.
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Applications
  /gitops/api/v1/agents/{agentIdentifier}/stream/applications/{query.applicationName}/resource-tree:
    get:
      summary: WatchResourceTree returns stream of application resource tree
      description: WatchResourceTree returns stream of application resource tree.
      operationId: AgentApplicationService_WatchResourceTree
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/applicationsApplicationTree'
                  error:
                    $ref: '#/components/schemas/runtimeStreamError'
                title: Stream result of applicationsApplicationTree
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: query.applicationName
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.namespace
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.version
          in: query
          required: false
          schema:
            type: string
        - name: query.group
          in: query
          required: false
          schema:
            type: string
        - name: query.kind
          in: query
          required: false
          schema:
            type: string
        - name: query.appNamespace
          in: query
          required: false
          schema:
            type: string
        - name: query.project
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/agents/{identifier}:
    get:
      description: Get agents.
      operationId: AgentServiceForServer_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
    delete:
      description: Delete agents.
      operationId: AgentServiceForServer_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/agents/{identifier}/credentials:
    post:
      description: Regenerate credentials for agents.
      operationId: AgentServiceForServer_RegenerateCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      tags:
        - Agents
  /gitops/api/v1/agents/{identifier}/scale:
    post:
      description: Scale the Hosted agent.
      operationId: AgentServiceForServer_Scale
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Agent'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1AgentScaleRequest'
        required: true
      tags:
        - Agents
  /gitops/api/v1/agents/{identifier}/unique:
    get:
      description: Unique returns unique agents.
      operationId: AgentServiceForServer_Unique
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1UniqueMessage'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: type
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_TYPE_UNSET
              - CONNECTED_ARGO_PROVIDER
              - MANAGED_ARGO_PROVIDER
              - HOSTED_ARGO_PROVIDER
            default: AGENT_TYPE_UNSET
        - name: tags
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - AGENT_SCOPE_UNSET
              - ACCOUNT
              - ORG
              - PROJECT
            default: AGENT_SCOPE_UNSET
        - name: drIdentifier
          in: query
          required: false
          schema:
            type: string
        - name: sortBy
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_BY_NOT_SET
              - NAME
              - HEALTH_STATUS
              - CONNECTIVITY_STATUS
              - NAMESPACE
              - VERSION
            default: SORT_BY_NOT_SET
        - name: sortOrder
          in: query
          required: false
          schema:
            type: string
            enum:
              - SORT_ORDER_NOT_SET
              - ASC
              - DESC
            default: SORT_ORDER_NOT_SET
        - name: metadataOnly
          in: query
          required: false
          schema:
            type: boolean
        - name: ignoreScope
          in: query
          required: false
          schema:
            type: boolean
        - name: connectedStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - CONNECTED_STATUS_UNSET
              - CONNECTED
              - DISCONNECTED
            default: CONNECTED_STATUS_UNSET
        - name: healthStatus
          in: query
          required: false
          schema:
            type: string
            enum:
              - HEALTH_STATUS_UNSET
              - HEALTHY
              - UNHEALTHY
            default: HEALTH_STATUS_UNSET
        - name: withCredentials
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
          in: query
          required: false
          schema:
            type: boolean
        - name: includeSecondary
          in: query
          required: false
          schema:
            type: boolean
      tags:
        - Agents
  /gitops/api/v1/applications:
    post:
      summary: List applications
      description: ListApps retrieves a list of applications.
      operationId: ApplicationService_ListApps
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1Applicationlist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        $ref: '#/components/requestBodies/servicev1ApplicationQuery'
      tags:
        - Application
  /gitops/api/v1/applications/attributes:
    get:
      summary: List attributes for applications
      description: ListAttributes returns a list of attributes for applications
      operationId: ApplicationService_ListAttributes
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ApplicationAttributesList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: applicationIdentifiers
          description: List of application identifiers
          in: query
          required: false
          explode: true
          schema:
            type: array
            items:
              type: string
      tags:
        - Applications
  /gitops/api/v1/applications/bulk/refresh:
    post:
      summary: Bulk refresh multiple applications
      description: >-
        BulkRefresh refreshes the status of multiple applications at once,
        optionally performing a hard refresh if refresh is set to hard.
      operationId: ApplicationService_BulkRefresh
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/applicationsApplicationBulkRefreshResponse
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationBulkRefreshRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/applications/bulk/sync:
    post:
      summary: Bulk sync multiple applications
      description: >-
        BulkSync initiates sync for multiple applications to their target
        states.
      operationId: ApplicationService_BulkSync
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationBulkSyncResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationBulkSyncRequest'
        required: true
      tags:
        - Applications
  /gitops/api/v1/applications/multisource:
    get:
      summary: Check if multisource feature is enabled
      description: >-
        IsMultiSourceEnabled checks if multiple sources for an application
        feature is enabled
      operationId: ApplicationService_IsMultiSourceEnabled
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Enabled'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/applications/ns:
    post:
      summary: List namespaces for a specific query
      description: ListNs retrieves a list of namespaces for a specific query.
      operationId: ApplicationService_ListNs
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitopsservicev1NamespaceList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        $ref: '#/components/requestBodies/servicev1ApplicationQuery'
      tags:
        - Applications
  /gitops/api/v1/applications/sets:
    get:
      summary: List LegacyApplicationSets
      description: ListAppSets lists LegacyApplicationSets in the specified project
      operationId: ApplicationService_ListAppSets
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1LegacyApplicationSetList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Applications
  /gitops/api/v1/applications/sync:
    post:
      summary: List application sync status
      description: ListAppSync returns a list of application sync status
      operationId: ApplicationService_ListAppSync
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ApplicationSyncStatuslist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1ApplicationSyncStatusQuery'
        required: true
      tags:
        - Applications
  /gitops/api/v1/applications/{name}/exists:
    get:
      summary: Check if an application exists
      description: Exists checks whether an application with the given name exists.
      operationId: ApplicationService_Exists
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: boolean
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: name
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Applications
  /gitops/api/v1/applicationset:
    post:
      summary: Update updates an applicationset
      description: Update applicationset.
      operationId: ApplicationSetService_Create
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1ApplicationSet'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/applicationsApplicationSetCreateRequest'
      tags:
        - ApplicationSet
    put:
      summary: Update updates an applicationset
      description: Update existing applicationset.
      operationId: ApplicationSetService_Update
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1ApplicationSet'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/applicationsApplicationSetCreateRequest'
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/generate:
    post:
      summary: Generate child applications from application set
      description: Generate child applications from application set.
      operationId: ApplicationSetService_Generate
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/applicationsApplicationSetGenerateResponse
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/applicationsApplicationSetGenerateRequest'
        required: true
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/generators:
    get:
      summary: List applicationset generators
      description: List applicationset generators
      operationId: ApplicationSetService_ListApplicationSetGenerators
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ApplicationSetGeneratorList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/generators/{type}:
    get:
      summary: Get applicationset generator
      description: Get applicationset generator
      operationId: ApplicationSetService_GetApplicationSetGenerator
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: type
          in: path
          required: true
          schema:
            type: string
            enum:
              - GENERATOR_TYPE_NOT_SET
              - LIST
              - CLUSTERS
              - GIT
              - SCM_PROVIDER_GITHUB
              - SCM_PROVIDER_GITLAB
              - SCM_PROVIDER_GITEA
              - SCM_PROVIDER_BITBUCKET
              - SCM_PROVIDER_AZURE
              - SCM_PROVIDER_BITBUCKET_CLOUD
              - SCM_PROVIDER_AWS_CODE_COMMIT
              - DUCK_TYPE
              - PULL_REQUEST_GITHUB
              - PULL_REQUEST_GITLAB
              - PULL_REQUEST_GITEA
              - PULL_REQUEST_BITBUCKET
              - PULL_REQUEST_BITBUCKET_CLOUD
              - PULL_REQUEST_AZURE
              - MATRIX
              - MERGE
              - PLUGIN
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/templates/{type}:
    get:
      summary: Get applicationset template
      description: Get applicationset template
      operationId: ApplicationSetService_GetApplicationSetTemplate
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: type
          in: path
          required: true
          schema:
            type: string
            enum:
              - GENERATOR_TYPE_NOT_SET
              - LIST
              - CLUSTERS
              - GIT
              - SCM_PROVIDER_GITHUB
              - SCM_PROVIDER_GITLAB
              - SCM_PROVIDER_GITEA
              - SCM_PROVIDER_BITBUCKET
              - SCM_PROVIDER_AZURE
              - SCM_PROVIDER_BITBUCKET_CLOUD
              - SCM_PROVIDER_AWS_CODE_COMMIT
              - DUCK_TYPE
              - PULL_REQUEST_GITHUB
              - PULL_REQUEST_GITLAB
              - PULL_REQUEST_GITEA
              - PULL_REQUEST_BITBUCKET
              - PULL_REQUEST_BITBUCKET_CLOUD
              - PULL_REQUEST_AZURE
              - MATRIX
              - MERGE
              - PLUGIN
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/{identifier}:
    get:
      summary: Get applicationset
      description: Returns an applicationset by identifier.
      operationId: ApplicationSetService_Get
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1ApplicationSet'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          description: UUID for the Application Set.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: fetchMode
          description: Fetch mode for the entity.
          in: query
          required: false
          schema:
            type: string
            enum:
              - NOT_SET
              - LIVE
              - CACHED
            default: NOT_SET
      tags:
        - ApplicationSet
    delete:
      summary: Delete applicationset by id
      description: Delete applicationset.
      operationId: ApplicationSetService_Delete
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationSetResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          description: UUID for the Application Set.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationset/{identifier}/resource-tree:
    get:
      summary: ResourceTree returns resource tree
      description: ResourceTree returns resource tree
      operationId: ApplicationSetService_ResourceTree
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/applicationsApplicationSetTree'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: identifier
          description: UUID for the Application Set.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: query.name
          in: query
          required: false
          schema:
            type: string
        - name: query.appsetNamespace
          description: >-
            The application set namespace. Default empty is argocd control plane
            namespace.
          in: query
          required: false
          schema:
            type: string
      tags:
        - ApplicationSet
  /gitops/api/v1/applicationsets:
    post:
      summary: List applicationsets
      description: List applicationsets
      operationId: ApplicationSetService_List
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1ApplicationSetList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1ApplicationSetQuery'
        required: true
      tags:
        - ApplicationSet
  /gitops/api/v1/appprojectsmapping:
    get:
      summary: Get Harness-Argo project mappings
      description: GetAppProjectMappingList retrieves Harness-Argo project mappings list.
      operationId: AppProjectMappingService_GetAppProjectMappingList
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1AppProjectMapping'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
  /gitops/api/v1/certificates:
    get:
      summary: List certificates
      description: ListCerts retrieves a list of certificates
      operationId: CertificateService_ListCerts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Certificatelist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: name
          in: query
          required: false
          schema:
            type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Certificates
  /gitops/api/v1/clusters:
    post:
      summary: List clusters
      description: ListClusters returns a list of clusters.
      operationId: ClusterService_ListClusters
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Clusterlist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/servicev1ClusterQuery'
        required: true
      tags:
        - Clusters
  /gitops/api/v1/clusters/exists:
    get:
      summary: Check if a cluster exists
      description: Exists checks whether a cluster with the given identifier exists.
      operationId: ClusterService_Exists
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: boolean
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: server
          in: query
          required: false
          schema:
            type: string
      tags:
        - Clusters
  /gitops/api/v1/dashboard/activity:
    post:
      summary: Get recent deployment statistics
      description: RecentDeployments returns aggregate statistics of recent deployments.
      operationId: DashboardService_RecentDeployments
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RecentDeploymentsDetailsList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1RecentDeploymentQuery'
        required: true
      tags:
        - Dashboard Aggregates
  /gitops/api/v1/dashboard/counts:
    get:
      summary: Get recently created app, cluster, repo counts
      description: >-
        RecentlyCreatedCounts lists the count of clusters, repositories, and
        applications created within a specified time period.
      operationId: DashboardService_RecentlyCreatedCounts
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1RecentlyCreatedOverview'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: endTime
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: startTime
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Dashboards
  /gitops/api/v1/dashboard/overview:
    get:
      summary: Get dashboard overview
      description: >-
        GetDashboardOverview provides an overview of the dashboard including key
        metrics.
      operationId: DashboardService_GetDashboardOverview
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1DashboardOverview'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: disasterRecoveryIdentifier
          in: query
          required: false
          schema:
            type: string
      tags:
        - Dashboards
  /gitops/api/v1/dashboard/topapps:
    get:
      summary: List top 5 most deployed apps
      description: >-
        TopApplicationPhaseStats lists phase status counts for the top 5 most
        deployed applications.
      operationId: DashboardService_TopApplicationPhaseStats
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1TopApplicationPhaseStatsList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: endTime
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: startTime
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Dashboard Aggregates
  /gitops/api/v1/gpgkeys:
    get:
      summary: List all GPG keys
      description: ListGPGKeys retrieves all available GPG public keys.
      operationId: GnuPGKeyService_ListGPGKeys
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1GnuPGPublicKeyList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: gnuPG
          in: query
          required: false
          schema:
            type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - GPG Keys
  /gitops/api/v1/repocreds:
    post:
      summary: List repository credentials
      description: >-
        ListRepositoryCredentials retrieves a list of all repository
        credentials.
      operationId: AgentRepositoryCredentialsService_ListRepositoryCredentials
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicev1RepositoryCredentialsList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1RepositoryCredentialsQuery'
        required: true
      tags:
        - Repository credentials
  /gitops/api/v1/repositories:
    get:
      summary: List Repositories by repository credential template
      description: >-
        ListRepositoriesByRepositoryCredentialTemplate lists Repositories by
        repositories credential template
      operationId: RepositoryService_ListRepositoriesByRepositoryCredentialTemplate
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Repositorylist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: repositoryCredentialURL
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Repositories
    post:
      summary: List repositories
      description: ListRepositories retrieves a list of all configured repositories.
      operationId: RepositoryService_ListRepositories
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Repositorylist'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1RepoListReq'
        required: true
      tags:
        - Repositories
  /gitops/api/v1/repositories/exists:
    get:
      summary: Check if a repository exists
      description: Exists checks whether a repository with the given URL exists.
      operationId: RepositoryService_Exists
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                type: boolean
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: url
          in: query
          required: false
          schema:
            type: string
      tags:
        - Repositories
  /gitops/api/v2/agents/{agentIdentifier}/appprojectsmapping:
    post:
      summary: Create Harness-Argo project mapping V2
      description: CreateV2 creates Harness-Argo project mappings.
      operationId: AppProjectMappingService_CreateV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AppProjectMappingV2'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1AppProjectMappingCreateRequestV2'
        required: true
      tags:
        - Project mappings
  /gitops/api/v2/agents/{agentIdentifier}/appprojectsmapping/{identifier}:
    get:
      summary: Get Harness-Argo project mapping V2
      description: >-
        GetAppProjectMappingV2 retrieves Harness-Argo project mapping for the
        given identifier.
      operationId: AppProjectMappingService_GetAppProjectMappingV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AppProjectMappingV2'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          description: app project mapping identifier.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: argoProjectName
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
    delete:
      summary: Delete Harness-Argo project mapping
      description: DeleteV2 deletes Harness-Argo project mappings.
      operationId: AppProjectMappingService_DeleteV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Empty'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          description: app project mapping identifier.
          in: path
          required: true
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: argoProjectName
          description: Argo Project name for the Entity.
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
    put:
      summary: Update Harness-Argo project mappings V2
      description: UpdateV2 updates Harness-Argo project mappings.
      operationId: AppProjectMappingService_UpdateV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AppProjectMappingV2'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          description: app project mapping identifier.
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1AppProjectMappingQueryV2'
        required: true
      tags:
        - Project mappings
  /gitops/api/v2/agents/{agentIdentifier}/appprojectsmappings:
    get:
      summary: Get Harness-Argo project mapping list by agent V2
      description: >-
        GetAppProjectMappingsListByAgentV2 retrieves Harness-Argo project
        mappings list by agent.
      operationId: AppProjectMappingService_GetAppProjectMappingsListByAgentV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AppProjectMappingV2List'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: path
          required: true
          schema:
            type: string
        - name: identifier
          description: app project mapping identifier.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: argoProjectName
          in: query
          required: false
          schema:
            type: string
      tags:
        - Project mappings
  /gitops/api/v2/appprojectsmapping:
    get:
      summary: Get Harness-Argo project mappings with pagination and search
      description: >-
        ListAppProjectMappings retrieves Harness-Argo project mappings list with
        pagination and search.
      operationId: AppProjectMappingService_ListAppProjectMappings
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1AppProjectMappingList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: agentIdentifier
          description: Agent identifier for entity.
          in: query
          required: false
          schema:
            type: string
        - name: accountIdentifier
          description: Account Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: orgIdentifier
          description: Organization Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: projectIdentifier
          description: Project Identifier for the Entity.
          in: query
          required: false
          schema:
            type: string
        - name: searchTerm
          in: query
          required: false
          schema:
            type: string
        - name: pageSize
          in: query
          required: false
          schema:
            type: integer
            format: int32
        - name: pageIndex
          in: query
          required: false
          schema:
            type: integer
            format: int32
      tags:
        - Project mappings
  /gitops/api/v2/versions/agents/upgrade-available:
    get:
      description: Check for version updates.
      operationId: VersionUpgradeService_UpgradeAvailableV2
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1VersionUpgradeResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gatewayruntimeError'
      parameters:
        - name: existingVersion
          description: Current Agent Version
          in: query
          required: false
          schema:
            type: string
      tags:
        - Agents
  /pm/api/v1/aida/analyze:
    post:
      tags:
        - aida
      description: Describe Policy On Basis of rego
      operationId: aida#analyze
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Dolores cumque impedit aut hic.
          example: Beatae iste adipisci.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnalyzeRequestBody'
            example:
              entityType: encryptedJsonData example
              rego: query example
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyzeResponse'
              example:
                desc: policy example
                status: SUCCESS
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
  /pm/api/v1/aida/generate:
    post:
      tags:
        - aida
      description: Generate Policy On Basis of free Text
      operationId: aida#generate
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Veritatis fugit.
          example: Esse accusamus aut sit quia.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerateRequestBody'
            example:
              policyData: encryptedJsonData example
              query: query example
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicySample'
              example:
                policy: policy example
                status: SUCCESS
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
  /pm/api/v1/dashboard:
    get:
      tags:
        - dashboard
      description: Get metrics about policies, policy sets and evaluations
      operationId: dashboard#metrics
      parameters:
        - name: range
          in: query
          description: >-
            The time period over which to aggregate dashboard data. Can be: 24
            hours, 7 days or 30 days
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              The time period over which to aggregate dashboard data. Can be: 24
              hours, 7 days or 30 days
            default: 30d
            example: 30d
            enum:
              - 24h
              - 7d
              - 30d
          example: 30d
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Voluptas quis est ut numquam consequatur.
          example: Velit at non illum necessitatibus facere.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardMetrics'
              example:
                aggregates:
                  - error: 6675090623294860000
                    pass: 4584903984207240700
                    time: 5601335008037813000
                    warning: 6844872243202899000
                  - error: 6675090623294860000
                    pass: 4584903984207240700
                    time: 5601335008037813000
                    warning: 6844872243202899000
                  - error: 6675090623294860000
                    pass: 4584903984207240700
                    time: 5601335008037813000
                    warning: 6844872243202899000
                  - error: 6675090623294860000
                    pass: 4584903984207240700
                    time: 5601335008037813000
                    warning: 6844872243202899000
                policy_health:
                  total_evaluation_count: 1537750593145854200
                  total_evaluation_entity_count:
                    error: 5089901746955059000
                    pass: 8819252736165018000
                    warning: 6206446740737916000
                  total_policy_count: 2398117804330536400
                  total_policy_set_count: 1152162144167899100
                  total_policy_set_entity_count:
                    Ea tempora omnis numquam reiciendis.: 3538924427156737500
                    Et saepe.: 793292374565649800
                    Repudiandae numquam.: 6575232042203289000
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
  /pm/api/v1/evaluate:
    post:
      tags:
        - evaluate
      description: Evaluate arbitrary rego
      operationId: evaluate#evaluate
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Blanditiis modi delectus facere.
          example: Itaque nemo.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EvaluateRequestBody'
            example:
              input:
                message: everyone
              rego: |-
                package test
                deny["should say hello world"] {input.message != "world"}
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluatedPolicy'
              example:
                deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
        '400':
          description: 'PolicySetNotFound: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                fault: false
                id: 123abc
                identifier: policy-1
                message: parameter 'p' must be an integer
                name: bad_request
                temporary: true
                timeout: true
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization: []
        - api_key_header_x-api-key: []
  /pm/api/v1/evaluations:
    get:
      tags:
        - evaluations
      description: List evaluations
      operationId: evaluations#list
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: per_page
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 50
            example: 20
            format: int64
            minimum: 1
            maximum: 100
          example: 20
        - name: page
          in: query
          description: Page number (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: entity
          in: query
          description: Filter by the entity associated with the evaluation
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by the entity associated with the evaluation
            example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        - name: type
          in: query
          description: Filter by the type associated with the evaluation
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by the type associated with the evaluation
            example: pipeline
          example: pipeline
        - name: action
          in: query
          description: Filter by the action associated with the evaluation
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by the action associated with the evaluation
            example: onrun
          example: onrun
        - name: last_seen
          in: query
          description: Retrieve results starting after this last-seen result
          allowEmptyValue: true
          schema:
            type: integer
            description: Retrieve results starting after this last-seen result
            example: 123
            format: int64
          example: 123
        - name: created_date_from
          in: query
          description: Retrieve results created from this date
          allowEmptyValue: true
          schema:
            type: integer
            description: Retrieve results created from this date
            example: 123
            format: int64
          example: 123
        - name: created_date_to
          in: query
          description: Retrieve results created up to this date
          allowEmptyValue: true
          schema:
            type: integer
            description: Retrieve results created up to this date
            example: 123
            format: int64
          example: 123
        - name: status
          in: query
          description: Retrieve results with these statuses
          allowEmptyValue: true
          schema:
            type: string
            description: Retrieve results with these statuses
            example: pass,warning,error
          example: pass,warning,error
        - name: includeChildScopes
          in: query
          description: >-
            When true, evaluations from child scopes will be inculded in the
            results
          allowEmptyValue: true
          schema:
            type: boolean
            description: >-
              When true, evaluations from child scopes will be inculded in the
              results
            default: false
            example: true
          example: false
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Quaerat perferendis.
          example: Eveniet quis dicta.
      responses:
        '200':
          description: OK response.
          headers:
            Link:
              description: Link-based paging
              schema:
                type: string
                description: Link-based paging
                example: ''
              example: ''
            X-Page-Index:
              description: Page number
              schema:
                type: integer
                description: Page number
                example: 4
                format: int64
              example: 4
            X-Page-Item-Count:
              description: Number of results in this page
              schema:
                type: integer
                description: Number of results in this page
                example: 20
                format: int64
              example: 20
            X-Page-Size:
              description: Requested page size
              schema:
                type: integer
                description: Requested page size
                example: 20
                format: int64
              example: 20
            X-Total-Items:
              description: Total results available
              schema:
                type: integer
                description: Total results available
                example: 230
                format: int64
              example: 230
            X-Total-Pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 12
                format: int64
              example: 12
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Evaluation'
                example:
                  - account_id: XRQAjvT37acOiXx9PRaQMF
                    action: onrun
                    created: 1636370209475
                    details:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                    entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    id: 123
                    input: ''
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline,service
                  - account_id: XRQAjvT37acOiXx9PRaQMF
                    action: onrun
                    created: 1636370209475
                    details:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                    entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    id: 123
                    input: ''
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline,service
                  - account_id: XRQAjvT37acOiXx9PRaQMF
                    action: onrun
                    created: 1636370209475
                    details:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                    entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    id: 123
                    input: ''
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline,service
                  - account_id: XRQAjvT37acOiXx9PRaQMF
                    action: onrun
                    created: 1636370209475
                    details:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        action: onrun
                        created: 1636669297674
                        description: Captures critical production policies
                        details:
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                          - deny_messages:
                              - >-
                                deployment stage 'example-stage' does not have a
                                HarnessApproval step
                              - >-
                                deployment stage 'example-stage' has step
                                'run-script' that is forbidden type
                                'ShellScript'
                            error: >-
                              policy.rego:25: rego_parse_error: non-terminated
                              string m == "test
                            output: |-
                              {
                                  "deny": [
                                      "deployment stage 'deploy' does not have a HarnessApproval step"
                                  ],
                                  "stages_with_approval": []
                              }
                            policy:
                              account_id: eBqAoNchMLKigC_qZ5EdC
                              created: 1636669297674
                              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_connector_ref: .
                              git_default_branch: main
                              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_default_branch_file_url: ''
                              git_default_branch_update_error:
                                explanation: >-
                                  File with given filepath [file.rego] already
                                  exists in Github, thus couldn't create a new
                                  file
                                hint: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                                message: >-
                                  Please check if there's already a file
                                  [file.rego] in Github repository [rego-demo]
                                  for the given filepath and branch [main].
                              git_default_branch_updated: 1636669297674
                              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                              git_file_url: ''
                              git_path: .harness/policy.rego
                              git_repo: github.com/org/repo,omitempty
                              identifier: policy-1
                              name: Pipeline Approval
                              org_id: test-org
                              policy_set_count: 3
                              project_id: test-project
                              rego: ''
                              updated: 1636669297674
                            status: error
                        enabled: true
                        identifier: policyset-1
                        name: Production Policies
                        org_id: test-org
                        project_id: test-project
                        status: error
                        type: pipeline
                        updated: 1636669297674
                    entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                    id: 123
                    input: ''
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline,service
              example:
                - account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
                - account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
                - account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_connector_ref: .
                            git_default_branch: main
                            git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_default_branch_file_url: ''
                            git_default_branch_update_error:
                              explanation: >-
                                File with given filepath [file.rego] already
                                exists in Github, thus couldn't create a new
                                file
                              hint: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                              message: >-
                                Please check if there's already a file
                                [file.rego] in Github repository [rego-demo] for
                                the given filepath and branch [main].
                            git_default_branch_updated: 1636669297674
                            git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                            git_file_url: ''
                            git_path: .harness/policy.rego
                            git_repo: github.com/org/repo,omitempty
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            policy_set_count: 3
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_view
        - api_key_header_x-api-key: []
  /pm/api/v1/evaluations/getYaml:
    get:
      tags:
        - evaluations
      description: Get entity yaml
      operationId: evaluations#getYaml
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: entityIdentifier
          in: query
          description: Entity identifier
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Entity identifier
            example: testPipelineName
          example: testPipelineName
        - name: entityType
          in: query
          description: Entity type
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Entity type
            example: pipeline
            enum:
              - pipeline
          example: pipeline
        - name: validateAsync
          in: query
          description: Validate Async
          allowEmptyValue: true
          schema:
            type: boolean
            description: Validate Async
            example: true
          example: true
        - name: parentEntityConnectorRef
          in: query
          description: Connector Reference
          allowEmptyValue: true
          schema:
            type: string
            description: Connector Reference
            example: github_connector
          example: github_connector
        - name: parentEntityRepoName
          in: query
          description: Repo Name
          allowEmptyValue: true
          schema:
            type: string
            description: Repo Name
            example: testrepo
          example: testrepo
        - name: loadFromFallbackBranch
          in: query
          description: Load from fall back branch
          allowEmptyValue: true
          schema:
            type: boolean
            description: Load from fall back branch
            example: true
          example: true
        - name: branch
          in: query
          description: Git Branch
          allowEmptyValue: true
          schema:
            type: string
            description: Git Branch
            example: main
          example: main
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Repellat et in.
          example: Officia explicabo assumenda.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityYaml'
              example:
                yaml: 'x: asdf'
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization: []
        - api_key_header_x-api-key: []
  /pm/api/v1/evaluations/{id}:
    get:
      tags:
        - evaluations
      description: Find an evaluation by ID
      operationId: evaluations#find
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: id
          in: path
          description: The ID of the evaluation to retrieve
          required: true
          schema:
            type: integer
            description: The ID of the evaluation to retrieve
            example: 123
            format: int64
          examples:
            default:
              summary: default
              value: 123
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Aperiam quasi fuga.
          example: Consequatur error eligendi voluptas blanditiis sed officia.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Evaluation'
              example:
                account_id: XRQAjvT37acOiXx9PRaQMF
                action: onrun
                created: 1636370209475
                details:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    description: Captures critical production policies
                    details:
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    description: Captures critical production policies
                    details:
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    description: Captures critical production policies
                    details:
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                      - deny_messages:
                          - >-
                            deployment stage 'example-stage' does not have a
                            HarnessApproval step
                          - >-
                            deployment stage 'example-stage' has step
                            'run-script' that is forbidden type 'ShellScript'
                        error: >-
                          policy.rego:25: rego_parse_error: non-terminated
                          string m == "test
                        output: |-
                          {
                              "deny": [
                                  "deployment stage 'deploy' does not have a HarnessApproval step"
                              ],
                              "stages_with_approval": []
                          }
                        policy:
                          account_id: eBqAoNchMLKigC_qZ5EdC
                          created: 1636669297674
                          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_connector_ref: .
                          git_default_branch: main
                          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_default_branch_file_url: ''
                          git_default_branch_update_error:
                            explanation: >-
                              File with given filepath [file.rego] already
                              exists in Github, thus couldn't create a new file
                            hint: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                            message: >-
                              Please check if there's already a file [file.rego]
                              in Github repository [rego-demo] for the given
                              filepath and branch [main].
                          git_default_branch_updated: 1636669297674
                          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                          git_file_url: ''
                          git_path: .harness/policy.rego
                          git_repo: github.com/org/repo,omitempty
                          identifier: policy-1
                          name: Pipeline Approval
                          org_id: test-org
                          policy_set_count: 3
                          project_id: test-project
                          rego: ''
                          updated: 1636669297674
                        status: error
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    status: error
                    type: pipeline
                    updated: 1636669297674
                entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                id: 123
                input: ''
                org_id: test-org
                project_id: test-project
                status: error
                type: pipeline,service
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_view
        - api_key_header_x-api-key: []
  /pm/api/v1/examples:
    get:
      tags:
        - examples
      description: list examples
      operationId: examples#list
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Suscipit nisi non non enim culpa sint.
          example: Minima ipsa doloribus et.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PolicyExample'
                example:
                  - desc: This is a pipeline example
                    input: '{"message": "everyone"}'
                    name: Pipeline example
                    rego: |-
                      package test
                      deny["should say hello world"] {input.message != "world"}
                    type: pipeline
                    variables:
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                  - desc: This is a pipeline example
                    input: '{"message": "everyone"}'
                    name: Pipeline example
                    rego: |-
                      package test
                      deny["should say hello world"] {input.message != "world"}
                    type: pipeline
                    variables:
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                  - desc: This is a pipeline example
                    input: '{"message": "everyone"}'
                    name: Pipeline example
                    rego: |-
                      package test
                      deny["should say hello world"] {input.message != "world"}
                    type: pipeline
                    variables:
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                  - desc: This is a pipeline example
                    input: '{"message": "everyone"}'
                    name: Pipeline example
                    rego: |-
                      package test
                      deny["should say hello world"] {input.message != "world"}
                    type: pipeline
                    variables:
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
                      - default:
                          - JiraUpdate
                          - HarnessApproval
                        desc: The required steps that the policy enforces
                        id: requiredsteps
                        name: Required Steps
                        type: selectOne
                        values:
                          - JiraUpdate
                          - HarnessApproval
              example:
                - desc: This is a pipeline example
                  input: '{"message": "everyone"}'
                  name: Pipeline example
                  rego: |-
                    package test
                    deny["should say hello world"] {input.message != "world"}
                  type: pipeline
                  variables:
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
                - desc: This is a pipeline example
                  input: '{"message": "everyone"}'
                  name: Pipeline example
                  rego: |-
                    package test
                    deny["should say hello world"] {input.message != "world"}
                  type: pipeline
                  variables:
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
                    - default:
                        - JiraUpdate
                        - HarnessApproval
                      desc: The required steps that the policy enforces
                      id: requiredsteps
                      name: Required Steps
                      type: selectOne
                      values:
                        - JiraUpdate
                        - HarnessApproval
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
  /pm/api/v1/policies:
    get:
      tags:
        - policies
      description: List all policies
      operationId: policies#list
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: per_page
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 50
            example: 20
            format: int64
            minimum: 1
            maximum: 100
          example: 20
        - name: page
          in: query
          description: Page number (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: identifierFilter
          in: query
          description: Comma separated List of Identifiers to filter on
          allowEmptyValue: true
          schema:
            type: string
            description: Comma separated List of Identifiers to filter on
            default: ''
            example: test-projectId1, test-projectId2
          example: test-projectId1, test-projectId2
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: poli
          example: poli
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: name,ASC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: name,ASC
        - name: excludeRegoFromResponse
          in: query
          description: Set to true to exclude Rego content from the response
          allowEmptyValue: true
          schema:
            type: boolean
            description: Set to true to exclude Rego content from the response
            default: false
            example: true
          example: true
        - name: includePolicySetCount
          in: query
          description: >-
            Set to true to include the count of policy sets associated with each
            policy in the response
          allowEmptyValue: true
          schema:
            type: boolean
            description: >-
              Set to true to include the count of policy sets associated with
              each policy in the response
            default: false
            example: false
          example: false
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Doloremque omnis aliquam et atque.
          example: Quasi dignissimos sapiente.
      responses:
        '200':
          description: OK response.
          headers:
            Link:
              description: Link-based paging
              schema:
                type: string
                description: Link-based paging
                example: ''
              example: ''
            X-Page-Index:
              description: Page number
              schema:
                type: integer
                description: Page number
                example: 4
                format: int64
              example: 4
            X-Page-Item-Count:
              description: Number of results in this page
              schema:
                type: integer
                description: Number of results in this page
                example: 20
                format: int64
              example: 20
            X-Page-Size:
              description: Requested page size
              schema:
                type: integer
                description: Requested page size
                example: 20
                format: int64
              example: 20
            X-Total-Items:
              description: Total results available
              schema:
                type: integer
                description: Total results available
                example: 230
                format: int64
              example: 230
            X-Total-Pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 12
                format: int64
              example: 12
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PolicyManagementPolicy'
                example:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
              example:
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
    post:
      tags:
        - policies
      description: Create a policy
      operationId: policies#create
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: git_commit_msg
          in: query
          description: The commit message used in git when creating the policy
          allowEmptyValue: true
          schema:
            type: string
            description: The commit message used in git when creating the policy
            example: harness policy commit msg
          example: harness policy commit msg
        - name: git_import
          in: query
          description: >-
            A flag to determine if the api should try and import and existing
            policy from git
          allowEmptyValue: true
          schema:
            type: boolean
            description: >-
              A flag to determine if the api should try and import and existing
              policy from git
            example: true
          example: true
        - name: git_branch
          in: query
          description: The git branch the policy will be created in
          allowEmptyValue: true
          schema:
            type: string
            description: The git branch the policy will be created in
            example: main
          example: main
        - name: git_is_new_branch
          in: query
          description: A flag to determine if the api should try and commit to a new branch
          allowEmptyValue: true
          schema:
            type: boolean
            description: >-
              A flag to determine if the api should try and commit to a new
              branch
            example: true
          example: true
        - name: git_base_branch
          in: query
          description: >-
            If committing to a new branch, git_base_branch tells the api which
            branch to base the new branch from
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              If committing to a new branch, git_base_branch tells the api which
              branch to base the new branch from
            example: main
          example: main
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Nihil voluptatem aut odio.
          example: Delectus qui perspiciatis corrupti minus.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRequestBody'
            example:
              git_connector_ref: .
              git_path: .harness/policy.rego
              git_repo: github.com/org/repo
              identifier: policy-1
              name: Check that an approval step is present
              rego: |-
                package test
                deny["should say hello world"] {input.message != "world"}
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementPolicy'
              example:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_create
        - api_key_header_x-api-key: []
  /pm/api/v1/policies/{identifier}:
    delete:
      tags:
        - policies
      description: Delete a policy by identifier
      operationId: policies#delete
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: identifier
          in: path
          description: Identifier of the policy
          required: true
          schema:
            type: string
            description: Identifier of the policy
            example: policy-1
            minLength: 1
          examples:
            default:
              summary: default
              value: policy-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Dignissimos dolores et amet et dolorem.
          example: Ab esse nam doloremque facilis nesciunt.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_delete
        - api_key_header_x-api-key: []
    get:
      tags:
        - policies
      description: Find a policy by identifier
      operationId: policies#find
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: git_branch
          in: query
          description: The git branch the policy resides in
          allowEmptyValue: true
          schema:
            type: string
            description: The git branch the policy resides in
            example: main
          example: main
        - name: show_summary
          in: query
          description: "Setting to true returns the metadata about the\n\t\t\t    requested policy including the information held about the status of this policy in the default branch.\n\t\t\t    git_branch is ignored as no git operation takes place."
          allowEmptyValue: true
          schema:
            type: boolean
            description: "Setting to true returns the metadata about the\n\t\t\t    requested policy including the information held about the status of this policy in the default branch.\n\t\t\t    git_branch is ignored as no git operation takes place."
            example: true
          example: true
        - name: identifier
          in: path
          description: Identifier of the policy to retrieve
          required: true
          schema:
            type: string
            description: Identifier of the policy to retrieve
            example: policy-1
            minLength: 1
          examples:
            default:
              summary: default
              value: policy-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Harum nisi dolorum maiores.
          example: Magnam distinctio id rerum quibusdam.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementPolicy'
              example:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
    patch:
      tags:
        - policies
      description: Update a policy by identifier
      operationId: policies#update
      parameters:
        - name: git_commit_msg
          in: query
          description: The commit message used in git when creating the policy
          allowEmptyValue: true
          schema:
            type: string
            description: The commit message used in git when creating the policy
            example: harness policy commit msg
          example: harness policy commit msg
        - name: git_is_new_branch
          in: query
          description: A flag to determine if the api should try and commit to a new branch
          allowEmptyValue: true
          schema:
            type: boolean
            description: >-
              A flag to determine if the api should try and commit to a new
              branch
            example: true
          example: true
        - name: git_base_branch
          in: query
          description: >-
            If committing to a new branch, git_base_branch tells the api which
            branch to base the new branch from
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              If committing to a new branch, git_base_branch tells the api which
              branch to base the new branch from
            example: main
          example: main
        - name: git_branch
          in: query
          description: The git branch the policy resides in
          allowEmptyValue: true
          schema:
            type: string
            description: The git branch the policy resides in
            example: main
          example: main
        - name: git_commit_sha
          in: query
          description: The existing commit sha of the file being updated
          allowEmptyValue: true
          schema:
            type: string
            description: The existing commit sha of the file being updated
            example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        - name: git_file_id
          in: query
          description: >-
            The existing file id of the file being updated, not required for
            bitbucket files
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              The existing file id of the file being updated, not required for
              bitbucket files
            example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: identifier
          in: path
          description: Identifier of the policy
          required: true
          schema:
            type: string
            description: Identifier of the policy
            example: policy-1
          example: policy-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Enim illo omnis.
          example: Voluptatem quo iste.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRequestBody'
            example:
              name: Check that an approval step is present
              rego: |-
                package test
                deny["should say hello world"] {input.message != "world"}
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_edit
        - api_key_header_x-api-key: []
  /pm/api/v1/policies/{identifier}/policysets:
    get:
      tags:
        - policies
      description: List all policy sets that reference a specific policy
      operationId: policies#list_policy_sets
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: per_page
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 50
            example: 20
            format: int64
            minimum: 1
            maximum: 100
          example: 20
        - name: page
          in: query
          description: Page number (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: poli
          example: poli
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: name,ASC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: name,DESC
        - name: identifier
          in: path
          description: Identifier for the policy
          required: true
          schema:
            type: string
            description: Identifier for the policy
            example: policy-1
          example: policy-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Facilis molestiae nihil sunt voluptatum.
          example: Similique ut.
      responses:
        '200':
          description: OK response.
          headers:
            Link:
              description: Link-based paging
              schema:
                type: string
                description: Link-based paging
                example: ''
              example: ''
            X-Page-Index:
              description: Page number
              schema:
                type: integer
                description: Page number
                example: 4
                format: int64
              example: 4
            X-Page-Item-Count:
              description: Number of results in this page
              schema:
                type: integer
                description: Number of results in this page
                example: 20
                format: int64
              example: 20
            X-Page-Size:
              description: Requested page size
              schema:
                type: integer
                description: Requested page size
                example: 20
                format: int64
              example: 20
            X-Total-Items:
              description: Total results available
              schema:
                type: integer
                description: Total results available
                example: 230
                format: int64
              example: 230
            X-Total-Pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 12
                format: int64
              example: 12
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PolicyToPolicySet'
                example:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    enabled: true
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    project_id: test-project
                    updated: 1636669297674
              example:
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  enabled: true
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  project_id: test-project
                  updated: 1636669297674
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  enabled: true
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  project_id: test-project
                  updated: 1636669297674
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  enabled: true
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  project_id: test-project
                  updated: 1636669297674
        '400':
          description: 'GitError: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
              example:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicy_view
        - api_key_header_x-api-key: []
  /pm/api/v1/policysets:
    get:
      tags:
        - policysets
      description: List all policy sets
      operationId: policysets#list
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: per_page
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 50
            example: 20
            format: int64
            minimum: 1
            maximum: 100
          example: 20
        - name: page
          in: query
          description: Page number (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: identifierFilter
          in: query
          description: Comma separated List of Identifiers to filter on
          allowEmptyValue: true
          schema:
            type: string
            description: Comma separated List of Identifiers to filter on
            default: ''
            example: test-projectId1, test-projectId2
          example: test-projectId1, test-projectId2
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: poli
          example: poli
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: name,DESC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: updated,ASC
        - name: type
          in: query
          description: Filter results by type
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by type
            example: pipeline
            minLength: 1
          example: pipeline
        - name: action
          in: query
          description: Filter results by action
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by action
            example: onrun
            minLength: 1
          example: onrun
        - name: yaml_version
          in: query
          description: Harness yaml version associated with this policySet
          allowEmptyValue: true
          schema:
            type: string
            description: Harness yaml version associated with this policySet
            default: '0'
            example: '0'
            enum:
              - '0'
              - '1'
          example: '0'
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Omnis vel.
          example: Eos libero voluptatibus.
      responses:
        '200':
          description: OK response.
          headers:
            Link:
              description: Link-based paging
              schema:
                type: string
                description: Link-based paging
                example: ''
              example: ''
            X-Page-Index:
              description: Page number
              schema:
                type: integer
                description: Page number
                example: 4
                format: int64
              example: 4
            X-Page-Item-Count:
              description: Number of results in this page
              schema:
                type: integer
                description: Number of results in this page
                example: 20
                format: int64
              example: 20
            X-Page-Size:
              description: Requested page size
              schema:
                type: integer
                description: Requested page size
                example: 20
                format: int64
              example: 20
            X-Total-Items:
              description: Total results available
              schema:
                type: integer
                description: Total results available
                example: 230
                format: int64
              example: 230
            X-Total-Pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 12
                format: int64
              example: 12
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PolicyManagementPolicySet'
                example:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    description: Captures critical production policies
                    enabled: true
                    entity_selector: all_entities_in_scope
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    policies:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                    project_id: test-project
                    resource_groups:
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                    type: pipeline
                    updated: 1636669297674
                    yaml_version: '0'
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    action: onrun
                    created: 1636669297674
                    description: Captures critical production policies
                    enabled: true
                    entity_selector: all_entities_in_scope
                    identifier: policyset-1
                    name: Production Policies
                    org_id: test-org
                    policies:
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                      - account_id: eBqAoNchMLKigC_qZ5EdC
                        created: 1636669297674
                        identifier: policy-1
                        name: Pipeline Approval
                        org_id: test-org
                        project_id: test-project
                        rego: ''
                        severity: warning
                        updated: 1636669297674
                    project_id: test-project
                    resource_groups:
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                      - account_id: Nostrum sit aspernatur sit reiciendis.
                        created: 7665029266794501000
                        identifier: >-
                          Molestiae quam eos tempore voluptatibus est
                          cupiditate.
                        name: Dolor rerum.
                        org_id: Aut impedit.
                        project_id: Et iusto accusamus dolores ipsa animi sed.
                    type: pipeline
                    updated: 1636669297674
                    yaml_version: '0'
              example:
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  description: Captures critical production policies
                  enabled: true
                  entity_selector: all_entities_in_scope
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  policies:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                  project_id: test-project
                  resource_groups:
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                  type: pipeline
                  updated: 1636669297674
                  yaml_version: '0'
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  description: Captures critical production policies
                  enabled: true
                  entity_selector: all_entities_in_scope
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  policies:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                  project_id: test-project
                  resource_groups:
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                  type: pipeline
                  updated: 1636669297674
                  yaml_version: '0'
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  description: Captures critical production policies
                  enabled: true
                  entity_selector: all_entities_in_scope
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  policies:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                  project_id: test-project
                  resource_groups:
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                  type: pipeline
                  updated: 1636669297674
                  yaml_version: '0'
                - account_id: eBqAoNchMLKigC_qZ5EdC
                  action: onrun
                  created: 1636669297674
                  description: Captures critical production policies
                  enabled: true
                  entity_selector: all_entities_in_scope
                  identifier: policyset-1
                  name: Production Policies
                  org_id: test-org
                  policies:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      created: 1636669297674
                      identifier: policy-1
                      name: Pipeline Approval
                      org_id: test-org
                      project_id: test-project
                      rego: ''
                      severity: warning
                      updated: 1636669297674
                  project_id: test-project
                  resource_groups:
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                    - account_id: Nostrum sit aspernatur sit reiciendis.
                      created: 7665029266794501000
                      identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
                      name: Dolor rerum.
                      org_id: Aut impedit.
                      project_id: Et iusto accusamus dolores ipsa animi sed.
                  type: pipeline
                  updated: 1636669297674
                  yaml_version: '0'
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_view
        - api_key_header_x-api-key: []
    post:
      tags:
        - policysets
      description: Create a policy set
      operationId: policysets#create
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Repellendus veritatis officiis.
          example: Quidem repellat qui doloremque cumque quam.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRequestBody2'
            example:
              action: onrun
              description: Captures critical production policies
              enabled: true
              identifier: policyset-1
              name: Production Policies
              type: pipeline
              yaml_version: '0'
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementPolicySet'
              example:
                account_id: eBqAoNchMLKigC_qZ5EdC
                action: onrun
                created: 1636669297674
                description: Captures critical production policies
                enabled: true
                entity_selector: all_entities_in_scope
                identifier: policyset-1
                name: Production Policies
                org_id: test-org
                policies:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    severity: warning
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    severity: warning
                    updated: 1636669297674
                project_id: test-project
                resource_groups:
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                type: pipeline
                updated: 1636669297674
                yaml_version: '0'
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_create
        - api_key_header_x-api-key: []
  /pm/api/v1/policysets/{identifier}:
    delete:
      tags:
        - policysets
      description: Delete a policy set by identifier
      operationId: policysets#delete
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: identifier
          in: path
          description: Identifier of the policy set
          required: true
          schema:
            type: string
            description: Identifier of the policy set
            example: policyset-1
            minLength: 1
          examples:
            default:
              summary: default
              value: policyset-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Omnis perferendis fuga aut eum qui.
          example: Quis sint id laudantium et dolores numquam.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_delete
        - api_key_header_x-api-key: []
    get:
      tags:
        - policysets
      description: Find a policy set by identifier
      operationId: policysets#find
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: identifier
          in: path
          description: Identifier of the policy set to retrieve
          required: true
          schema:
            type: string
            description: Identifier of the policy set to retrieve
            example: policyset-1
            minLength: 1
          examples:
            default:
              summary: default
              value: policyset-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Ut sit fugit officia.
          example: Autem aut perferendis atque ut quis.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyManagementPolicySet'
              example:
                account_id: eBqAoNchMLKigC_qZ5EdC
                action: onrun
                created: 1636669297674
                description: Captures critical production policies
                enabled: true
                entity_selector: all_entities_in_resource_groups
                identifier: policyset-1
                name: Production Policies
                org_id: test-org
                policies:
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    severity: warning
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    severity: warning
                    updated: 1636669297674
                  - account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    severity: warning
                    updated: 1636669297674
                project_id: test-project
                resource_groups:
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                  - account_id: Qui ut rem eum similique repudiandae consequatur.
                    created: 983020986697831200
                    identifier: Libero dolore in velit.
                    name: Quibusdam soluta officiis qui qui.
                    org_id: Doloribus id.
                    project_id: Qui quod doloremque aspernatur modi sit.
                type: pipeline
                updated: 1636669297674
                yaml_version: '0'
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_view
        - api_key_header_x-api-key: []
    patch:
      tags:
        - policysets
      description: Update a policy set by identifier
      operationId: policysets#update
      parameters:
        - name: accountIdentifier
          in: query
          description: Harness account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness account ID
            default: ''
            example: eBqAoNchMLKigC_qZ5EdC
          example: eBqAoNchMLKigC_qZ5EdC
        - name: orgIdentifier
          in: query
          description: Harness organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness organization ID
            default: ''
            example: test-org
          example: test-org
        - name: projectIdentifier
          in: query
          description: Harness project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness project ID
            default: ''
            example: test-project
          example: test-project
        - name: identifier
          in: path
          description: Identifier of the policy set
          required: true
          schema:
            type: string
            description: Identifier of the policy set
            example: policyset-1
          example: policyset-1
        - name: x-api-key
          in: header
          description: Harness PAT key used to perform authorization
          allowEmptyValue: true
          schema:
            type: string
            description: Harness PAT key used to perform authorization
            example: Illo tempora qui voluptatem in.
          example: Est non nostrum enim deserunt modi id.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRequestBody2'
            example:
              action: onrun
              description: Captures critical production policies
              enabled: true
              entity_selector: all_entities_in_scope
              name: Production Policies
              policies:
                - identifier: policy-1
                  severity: warning
                - identifier: policy-1
                  severity: warning
                - identifier: policy-1
                  severity: warning
              resource_groups:
                - account_id: Aperiam iusto ut exercitationem delectus.
                  identifier: Impedit et.
                  org_id: Aut atque necessitatibus est maxime.
                  project_id: Natus voluptas dolor sint.
                - account_id: Aperiam iusto ut exercitationem delectus.
                  identifier: Impedit et.
                  org_id: Aut atque necessitatibus est maxime.
                  project_id: Natus voluptas dolor sint.
                - account_id: Aperiam iusto ut exercitationem delectus.
                  identifier: Impedit et.
                  org_id: Aut atque necessitatibus est maxime.
                  project_id: Natus voluptas dolor sint.
              type: pipeline
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
      security:
        - jwt_header_Authorization:
            - core_governancePolicySets_edit
        - api_key_header_x-api-key: []
  /pm/api/v1/system/health:
    get:
      tags:
        - system
      description: Check service health
      operationId: system#health
      responses:
        '204':
          description: No Content response.
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
  /pm/api/v1/system/version:
    get:
      tags:
        - system
      description: Check service version
      operationId: system#version
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceVersion'
              example:
                commit: 96381692bf3a2bd7904769c6886e832435768b57
                version: v0.123.0
        '500':
          description: 'InternalServer: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
        '502':
          description: 'BadGateway: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyManagementError'
  /dashboard/api/dashboards/{dashboard_id}/download:
    get:
      tags:
        - dashboards
      description: Download the data of all tiles within a Dashboard.
      summary: Download data within a Dashboard
      operationId: get_dashboard_data
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: file_type
          schema:
            type: string
            enum:
              - csv
          required: true
        - in: query
          name: filters
          schema:
            type: string
          required: false
      responses:
        '200':
          description: >-
            Returns files of a specified type within a ZIP file for each tile
            within a Dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardDownloadResponse'
        '400':
          description: Please specify a valid File Type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/dashboards/{dashboard_id}/elements:
    get:
      tags:
        - dashboards
      description: Get all elements within a dashboard by ID.
      operationId: get_dashboard_elements
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Returns all of the elements within a dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDashboardElementsResponse'
        '404':
          description: Dashboard or dashboard elements not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/dashboards/{dashboard_id}/filters:
    get:
      tags:
        - dashboards
      description: Get all filters within a dashboard by ID.
      operationId: get_dashboard_filters
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Returns all of the filters within a dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDashboardFiltersResponse'
        '404':
          description: Dashboard or dashboard filters not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/clone:
    post:
      tags:
        - dashboards
      description: Clone a dashboard.
      operationId: clone_dashboard
      parameters:
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      requestBody:
        description: Clone a Dashboard
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloneDashboardRequestBody'
      responses:
        '200':
          description: Returns the newly created dashboard's details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClonedDashboardResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/dashboards/{dashboard_id}:
    get:
      tags:
        - dashboards
      description: Get all details of a dashboard by ID.
      operationId: get_dashboard
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Returns the details of a dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDashboardResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/:
    patch:
      tags:
        - dashboards
      description: Update a dashboards name, tags or folder.
      operationId: update_dashboard
      parameters:
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      requestBody:
        description: Update dashboard fields.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDashboardRequest'
      responses:
        '200':
          description: Returns the updated fields of the dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateDashboardResponse'
  /dashboard/remove:
    delete:
      tags:
        - dashboards
      description: Delete a dashboard.
      operationId: delete_dashboard
      parameters:
        - in: query
          name: accountId
          schema:
            type: string
          required: false
        - in: query
          name: folderId
          schema:
            type: string
          required: true
      requestBody:
        description: Delete a Dashboard by ID.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteDashboardRequest'
      responses:
        '200':
          description: Returns if Dashboard deletion was successful.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteDashboardResponse'
  /dashboard/folders:
    post:
      tags:
        - folders
      description: Create a new folder.
      operationId: create_folder
      parameters:
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      requestBody:
        description: Create a new folder
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateFolderRequestBody'
      responses:
        '200':
          description: Returns the newly created folder's details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFolderResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/folders/{folder_id}:
    get:
      tags:
        - folders
      description: Get a folder by ID.
      operationId: get_folder
      parameters:
        - in: path
          name: folder_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Returns the folder details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFolderResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
    patch:
      tags:
        - folders
      description: Update a folder's name.
      operationId: update_folder
      parameters:
        - in: path
          name: folder_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      requestBody:
        description: Change the name of a folder
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateFolderRequestBody'
      responses:
        '200':
          description: Returns the updated folder.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFolderResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
    delete:
      tags:
        - folders
      description: Delete a folder along with any dashboards it contains.
      operationId: delete_folder
      parameters:
        - in: path
          name: folder_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Returns the deleted folder.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetFolderResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/dashboards/{dashboard_id}/filters/{filter_id}:
    patch:
      tags:
        - dashboards
      description: Update a specific filter within a dashboard by ID.
      operationId: update_dashboard_filter
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: path
          name: filter_id
          schema:
            type: string
          required: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDashboardFilterRequest'
      responses:
        '200':
          description: Returns the updated dashboard filter.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetDashboardFilterResponse'
        '400':
          description: Bad request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '403':
          description: User does not have permission to update this dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard or dashboard filter not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/download/dashboards/{dashboard_id}/csv:
    get:
      tags:
        - dashboards
      description: Download a Dashboard in CSV format.
      summary: Download a Dashboard CSV
      operationId: get_dashboard_download_csv
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
        - in: query
          name: filters
          schema:
            type: string
          required: false
        - in: query
          name: expanded_tables
          schema:
            type: boolean
          required: false
      responses:
        '200':
          description: >-
            Returns a zip of CSV files containing raw data of each tile within a
            Dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadCsvDashboardResponse'
        '400':
          description: Download Task has failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '504':
          description: Querying Dashboard to build CSV has timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/download/dashboards/{dashboard_id}/pdf:
    get:
      tags:
        - dashboards
      description: Download a Dashboard in PDF format.
      summary: Download a Dashboard PDF
      operationId: get_dashboard_download_pdf
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
        - in: query
          name: filters
          schema:
            type: string
          required: false
        - in: query
          name: expanded_tables
          schema:
            type: boolean
          required: false
        - in: query
          name: landscape
          schema:
            type: boolean
          required: false
        - in: query
          name: paper_size
          schema:
            type: string
            enum:
              - letter
              - legal
              - tabloid
              - a0
              - a1
              - a2
              - a3
              - a4
              - a5
          required: false
        - in: query
          name: style
          schema:
            type: string
            enum:
              - single_column
              - tiled
          required: false
      responses:
        '200':
          description: Returns a PDF file containing the visualization of a Dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadPdfDashboardResponse'
        '400':
          description: Render Task has failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '504':
          description: Render Task has timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/schedules/run_once:
    post:
      tags:
        - dashboards
      description: Run a schedule delivery once
      summary: >-
        Runs a schedule delivery once that is then immediately sent via email to
        recipients
      operationId: schedules_run_once
      parameters:
        - in: query
          name: accountId
          schema:
            type: string
          required: false
      requestBody:
        description: Run a Dashboard Schedule Delivery once
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScheduleReportRequestBody'
      responses:
        '200':
          description: >-
            A successful request does not necessarily mean successful delivery
            of emails
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScheduleReportResponse'
        '400':
          description: Please specify a valid File Type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/download/tasks/{task_id}:
    get:
      tags:
        - downloads
      description: Get the current status of a download task
      operationId: get_download_task_status
      parameters:
        - in: path
          name: task_id
          schema:
            type: string
          required: true
          description: ID of the download task to check
      responses:
        '200':
          description: Task status retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadQueryTaskResponse'
        '404':
          description: Task not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '429':
          description: Rate limit exceeded
          headers:
            Retry-After:
              schema:
                type: integer
              description: Number of seconds to wait before retrying
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /dashboard/download/dashboards/{dashboard_id}/dashboard_elements/{dashboard_element_id}:
    post:
      tags:
        - downloads
      description: >-
        Creates an asynchronous download task for a specific element within a
        dashboard.
      operationId: create_dashboard_element_download_task
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: path
          name: dashboard_element_id
          schema:
            type: string
          required: true
        - in: query
          name: accountId
          schema:
            type: string
          required: false
        - in: query
          name: expanded_tables
          schema:
            type: boolean
          required: false
        - in: query
          name: filters
          schema:
            type: string
          required: false
      responses:
        '200':
          description: Download task created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadQueryTaskResponse'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '404':
          description: Dashboard or Element not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        '429':
          description: Rate limit exceeded
          headers:
            Retry-After:
              schema:
                type: integer
              description: Number of seconds to wait before retrying
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
    get:
      tags:
        - downloads
      description: >-
        Get the results of a download task for a specific element within a
        dashboard.
      operationId: get_dashboard_element_download_task_results
      parameters:
        - in: path
          name: dashboard_id
          schema:
            type: string
          required: true
        - in: path
          name: dashboard_element_id
          schema:
            type: string
          required: true
        - in: query
          name: task_id
          required: true
          schema:
            type: string
          description: ID of the download task to get results for
      responses:
        '200':
          description: Download task results retrieved successfully
          content:
            application/zip:
              schema:
                type: string
                format: binary
        '404':
          description: Dashboard, element, or task not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardsErrorResponse'
  /code/api/v1/checks/recent:
    get:
      operationId: listStatusCheckRecentSpace
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter the status checks by their
            UID.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: >-
            The timestamp (in Unix time millis) since the status checks have
            been run.
          in: query
          name: since
          required: false
          schema:
            type: integer
        - description: The result should include entities from child spaces.
          in: query
          name: recursive
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List recent status check for acc, org or proj
      tags:
        - status_checks
  /code/api/v1/labels:
    get:
      operationId: listSpaceLabels
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should inherit entities from parent spaces.
          in: query
          name: inherited
          required: false
          schema:
            default: false
            type: boolean
        - description: The substring which is used to filter the labels by their key.
          in: query
          name: query
          required: false
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesLabel'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List labels at account, org or project level
      tags:
        - labels
    post:
      operationId: defineSpaceLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabel'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create label at account, org or project level
      tags:
        - labels
    put:
      operationId: saveSpaceLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                label:
                  $ref: '#/components/schemas/TypesSaveLabelInput'
                values:
                  items:
                    $ref: '#/components/schemas/TypesSaveLabelValueInput'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelWithValues'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Save label and values at account, org or project level
      tags:
        - labels
  /code/api/v1/labels/{key}:
    delete:
      operationId: deleteSpaceLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete label at account, org or project level
      tags:
        - labels
    patch:
      operationId: updateSpaceLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabel'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update label at account, org or project level
      tags:
        - labels
  /code/api/v1/labels/{key}/values:
    get:
      operationId: listSpaceLabelValues
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesLabelValue'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List label values at account, org or project level
      tags:
        - labels
    post:
      operationId: defineSpaceLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create label value at account, org or project level
      tags:
        - labels
  /code/api/v1/labels/{key}/values/{value}:
    delete:
      operationId: deleteSpaceLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete label value at account, org or project level
      tags:
        - labels
    patch:
      operationId: updateSpaceLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update label value at account, org or project level
      tags:
        - labels
  /code/api/v1/principals:
    get:
      operationId: listPrincipals
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The substring by which the principals are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The types of principals to include.
          in: query
          name: type
          required: false
          schema:
            items:
              enum:
                - service
                - serviceaccount
                - user
              type: string
            type: array
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPrincipalInfo'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - principals
  /code/api/v1/pullreq:
    get:
      operationId: listPullReqSpace
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The state of the pull requests to include in the result.
          explode: true
          in: query
          name: state
          required: false
          schema:
            items:
              default: open
              enum:
                - closed
                - merged
                - open
              type: string
            type: array
          style: form
        - description: Source repository ref of the pull requests.
          in: query
          name: source_repo_ref
          required: false
          schema:
            type: string
        - description: Source branch of the pull requests.
          in: query
          name: source_branch
          required: false
          schema:
            type: string
        - description: Target branch of the pull requests.
          in: query
          name: target_branch
          required: false
          schema:
            type: string
        - description: The substring by which the pull requests are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: List of principal IDs who created pull requests.
          explode: true
          in: query
          name: created_by
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: >-
            The result should contain only entries created before this timestamp
            (unix millis).
          in: query
          name: created_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries created after this timestamp
            (unix millis).
          in: query
          name: created_gt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries updated before this timestamp
            (unix millis).
          in: query
          name: updated_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            By providing this parameter the description would be excluded from
            the response.
          in: query
          name: exclude_description
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            The result should contain entries from the desired space and of its
            subspaces.
          in: query
          name: include_subspaces
          required: false
          schema:
            default: false
            type: boolean
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: List of label ids used to filter pull requests.
          explode: true
          in: query
          name: label_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: List of label value ids used to filter pull requests.
          explode: true
          in: query
          name: value_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: Return only pull requests where this user is the author.
          in: query
          name: author_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has created at least one
            comment.
          in: query
          name: commenter_id
          required: false
          schema:
            type: integer
        - description: Return only pull requests where this user has been mentioned.
          in: query
          name: mentioned_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has been added as a
            reviewer.
          in: query
          name: reviewer_id
          required: false
          schema:
            type: integer
        - description: >-
            Require only this review decision of the reviewer. Requires
            reviewer_id parameter.
          explode: true
          in: query
          name: review_decision
          required: false
          schema:
            items:
              enum:
                - approved
                - changereq
                - pending
                - reviewed
              type: string
            type: array
          style: form
        - description: If true, the git diff stats would be included in the response.
          in: query
          name: include_git_stats
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, the summary of check for the branch commit SHA would be
            included in the response.
          in: query
          name: include_checks
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of rules that apply to this branch would be included
            in the response.
          in: query
          name: include_rules
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPullReqRepo'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List pull requests in account/org/project
      tags:
        - pullreq
  /code/api/v1/pullreq/count:
    get:
      operationId: countPullReqSpace
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The state of the pull requests to include in the result.
          explode: true
          in: query
          name: state
          required: false
          schema:
            items:
              default: open
              enum:
                - closed
                - merged
                - open
              type: string
            type: array
          style: form
        - description: Source repository ref of the pull requests.
          in: query
          name: source_repo_ref
          required: false
          schema:
            type: string
        - description: Source branch of the pull requests.
          in: query
          name: source_branch
          required: false
          schema:
            type: string
        - description: Target branch of the pull requests.
          in: query
          name: target_branch
          required: false
          schema:
            type: string
        - description: The substring by which the pull requests are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: List of principal IDs who created pull requests.
          explode: true
          in: query
          name: created_by
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: >-
            The result should contain only entries created before this timestamp
            (unix millis).
          in: query
          name: created_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries created after this timestamp
            (unix millis).
          in: query
          name: created_gt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries updated before this timestamp
            (unix millis).
          in: query
          name: updated_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain entries from the desired space and of its
            subspaces.
          in: query
          name: include_subspaces
          required: false
          schema:
            default: false
            type: boolean
        - description: List of label ids used to filter pull requests.
          explode: true
          in: query
          name: label_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: List of label value ids used to filter pull requests.
          explode: true
          in: query
          name: value_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: Return only pull requests where this user is the author.
          in: query
          name: author_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has created at least one
            comment.
          in: query
          name: commenter_id
          required: false
          schema:
            type: integer
        - description: Return only pull requests where this user has been mentioned.
          in: query
          name: mentioned_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has been added as a
            reviewer.
          in: query
          name: reviewer_id
          required: false
          schema:
            type: integer
        - description: >-
            Require only this review decision of the reviewer. Requires
            reviewer_id parameter.
          explode: true
          in: query
          name: review_decision
          required: false
          schema:
            items:
              enum:
                - approved
                - changereq
                - pending
                - reviewed
              type: string
            type: array
          style: form
        - description: >-
            If true, a list of rules that apply to this branch would be included
            in the response.
          in: query
          name: include_rules
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                type: integer
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Count pull requests in account/org/project
      tags:
        - pullreq
  /code/api/v1/repos:
    get:
      operationId: listRepos
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter the repositories by their path
            name.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The data by which the repositories are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: identifier
            enum:
              - identifier
              - created
              - updated
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: >-
            The result should contain only the favorite entries for the logged
            in user.
          in: query
          name: only_favorites
          required: false
          schema:
            default: false
            type: boolean
        - description: The result should include entities from child spaces.
          in: query
          name: recursive
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RepoRepositoryOutput'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List repositories
      tags:
        - repository
    post:
      operationId: createRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCreateRepositoryRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create repository
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}:
    delete:
      operationId: deleteRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoSoftDeleteResponse'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Soft delete repository
      tags:
        - repository
    get:
      operationId: getRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get repository
      tags:
        - repository
    patch:
      operationId: updateRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUpdateRepoRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update repository
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/archive/{git_ref}.{format}:
    get:
      operationId: archive
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            Without an optional path parameter, all files and subdirectories of
            the current working directory are included in the archive. If one or
            more paths are specified, only these are included.
          in: query
          name: path
          required: false
          schema:
            items:
              type: string
            type: array
        - description: Prepend <prefix>/ to paths in the archive.
          in: query
          name: prefix
          required: false
          schema:
            type: string
        - description: >-
            Look for attributes in .gitattributes files in the working tree as
            well
          in: query
          name: attributes
          required: false
          schema:
            type: string
        - description: >-
            Set modification time of archive entries. Without this option the
            committer time is used if <tree-ish> is a commit or tag, and the
            current time if it is a tree.
          in: query
          name: time
          required: false
          schema:
            type: string
        - description: >-
            Specify compression level. Larger values allow the command to spend
            more time to compress to smaller size.
          in: query
          name: compression
          required: false
          schema:
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: git_ref
          required: true
          schema:
            type: string
        - in: path
          name: format
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/gzip:
              schema:
                type: string
            application/tar:
              schema:
                type: string
            application/zip:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Download repo in archived format
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/blame/{path}:
    get:
      operationId: getBlame
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - description: Line number from which the file data is considered
          in: query
          name: line_from
          required: false
          schema:
            default: 0
            type: integer
        - description: Line number to which the file data is considered
          in: query
          name: line_to
          required: false
          schema:
            default: 0
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: path
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GitBlamePart'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get git blame
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/branches:
    get:
      operationId: listBranches
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            Indicates whether optional commit information should be included in
            the response.
          in: query
          name: include_commit
          required: false
          schema:
            default: false
            type: boolean
        - description: The substring by which the branches are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The data by which the branches are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: name
            enum:
              - name
              - date
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: >-
            If true, the summary of check for the branch commit SHA would be
            included in the response.
          in: query
          name: include_checks
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of rules that apply to this branch would be included
            in the response.
          in: query
          name: include_rules
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of pull requests from the branch would be included
            in the response.
          in: query
          name: include_pullreqs
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If greater than zero, branch divergence from the default branch will
            be included in the response. The divergence would be calculated up
            the this many commits.
          in: query
          name: max_divergence
          required: false
          schema:
            default: 0
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesBranchExtended'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List branches
      tags:
        - repository
    post:
      operationId: createBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCreateBranchRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCreateBranchOutput'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create branch
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/branches/{branch_name}:
    delete:
      operationId: deleteBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: Bypass rule violations if possible.
          in: query
          name: bypass_rules
          required: false
          schema:
            default: false
            type: boolean
        - description: Dry run rules for operations
          in: query
          name: dry_run_rules
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: branch_name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesDeleteBranchOutput'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete branch
      tags:
        - repository
    get:
      operationId: getBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            If true, the summary of check for the branch commit SHA would be
            included in the response.
          in: query
          name: include_checks
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of rules that apply to this branch would be included
            in the response.
          in: query
          name: include_rules
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of pull requests from the branch would be included
            in the response.
          in: query
          name: include_pullreqs
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If greater than zero, branch divergence from the default branch will
            be included in the response. The divergence would be calculated up
            the this many commits.
          in: query
          name: max_divergence
          required: false
          schema:
            default: 0
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: branch_name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesBranchExtended'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get branch
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/checks/commits/{commit_sha}:
    get:
      operationId: listStatusCheckResults
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: >-
            The substring which is used to filter the status checks by their
            UID.
          in: query
          name: query
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: commit_sha
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesCheck'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List status check results
      tags:
        - status_checks
    put:
      operationId: reportStatusCheckResults
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: commit_sha
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                check_uid:
                  deprecated: true
                  type: string
                ended:
                  type: integer
                identifier:
                  type: string
                link:
                  type: string
                payload:
                  $ref: '#/components/schemas/TypesCheckPayload'
                started:
                  type: integer
                status:
                  $ref: '#/components/schemas/EnumCheckStatus'
                summary:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCheck'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Report status check results
      tags:
        - status_checks
  /code/api/v1/repos/{repo_identifier}/checks/recent:
    get:
      operationId: listStatusCheckRecent
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter the status checks by their
            UID.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: >-
            The timestamp (in Unix time millis) since the status checks have
            been run.
          in: query
          name: since
          required: false
          schema:
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List recent status check
      tags:
        - status_checks
  /code/api/v1/repos/{repo_identifier}/codeowners/validate:
    get:
      operationId: codeOwnersValidate
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Validate code owners file
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/commits:
    get:
      operationId: listCommits
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - description: >-
            The result should only contain commits that occurred after the
            provided reference.
          in: query
          name: after
          required: false
          schema:
            type: string
        - description: Path for which commit information should be retrieved
          in: query
          name: path
          required: false
          schema:
            default: ''
            type: string
        - description: Epoch timestamp since when commit information should be retrieved.
          in: query
          name: since
          required: false
          schema:
            example: 1728348213
            type: integer
        - description: Epoch timestamp until when commit information should be retrieved.
          in: query
          name: until
          required: false
          schema:
            example: 1746668446
            type: integer
        - description: Committer pattern for which commit information should be retrieved.
          in: query
          name: committer
          required: false
          schema:
            type: string
        - description: >-
            Committer principal IDs list for which commit information should be
            retrieved.
          explode: true
          in: query
          name: committer_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: Author pattern for which commit information should be retrieved.
          in: query
          name: author
          required: false
          schema:
            type: string
        - description: >-
            Author principal IDs for which commit information should be
            retrieved.
          explode: true
          in: query
          name: author_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: Indicates whether optional stats should be included in the response.
          in: query
          name: include_stats
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesListCommitResponse'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List commits
      tags:
        - repository
    post:
      operationId: commitFiles
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCommitFilesRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCommitFilesResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Commit files
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/commits/{commit_sha}:
    get:
      operationId: getCommit
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: commit_sha
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCommit'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get commit
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/commits/{commit_sha}/diff:
    get:
      operationId: getCommitDiff
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: commit_sha
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            text/plain:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get raw git diff of a commit
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/commits/calculate-divergence:
    post:
      operationId: calculateCommitDivergence
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCalculateCommitDivergenceRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesCommitDivergence'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get commit divergence
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/content/{path}:
    get:
      operationId: getContent
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - description: >-
            Indicates whether optional commit information should be included in
            the response.
          in: query
          name: include_commit
          required: false
          schema:
            default: false
            type: boolean
        - description: Flatten directories that contain just one subdirectory.
          in: query
          name: flatten_directories
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: path
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiGetContentOutput'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get content of a file
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/default-branch:
    post:
      operationId: updateDefaultBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUpdateDefaultBranchRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update default branch
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/diff-stats/{range}:
    get:
      operationId: diffStats
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: provide path for diff operation
          in: query
          name: path
          schema:
            description: provide path for diff operation
            items:
              type: string
            type: array
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: range
          required: true
          schema:
            example: main..dev
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesDiffStats'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get diff stats
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/diff/{range}:
    get:
      operationId: rawDiff
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: provide path for diff operation
          in: query
          name: path
          schema:
            description: provide path for diff operation
            items:
              type: string
            type: array
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: range
          required: true
          schema:
            example: main..dev
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GitFileDiff'
                type: array
            text/plain:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get raw diff
      tags:
        - repository
    post:
      operationId: rawDiffPost
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: range
          required: true
          schema:
            example: main..dev
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiPostRawDiffRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GitFileDiff'
                type: array
            text/plain:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get raw diff
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/labels:
    get:
      operationId: listRepoLabels
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should inherit entities from parent spaces.
          in: query
          name: inherited
          required: false
          schema:
            default: false
            type: boolean
        - description: The substring which is used to filter the labels by their key.
          in: query
          name: query
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesLabel'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List labels at repo level
      tags:
        - labels
    post:
      operationId: defineRepoLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabel'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create label at repo level
      tags:
        - labels
    put:
      operationId: saveRepoLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                label:
                  $ref: '#/components/schemas/TypesSaveLabelInput'
                values:
                  items:
                    $ref: '#/components/schemas/TypesSaveLabelValueInput'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelWithValues'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Save label and values at repo level
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/labels/{key}:
    delete:
      operationId: deleteRepoLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete label at repo level
      tags:
        - labels
    patch:
      operationId: updateRepoLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabel'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update label at repo level
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/labels/{key}/values:
    get:
      operationId: listRepoLabelValues
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesLabelValue'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List label values at repo level
      tags:
        - labels
    post:
      operationId: defineRepoLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create label value at repo level
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/labels/{key}/values/{value}:
    delete:
      operationId: deleteRepoLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete label value at repo level
      tags:
        - labels
    patch:
      operationId: updateRepoLabelValue
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update label value at repo level
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/merge-check/{range}:
    post:
      operationId: mergeCheck
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: provide path for diff operation
          in: query
          name: path
          schema:
            description: provide path for diff operation
            items:
              type: string
            type: array
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: range
          required: true
          schema:
            example: main..dev
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoMergeCheck'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Check mergeability
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/path-details:
    post:
      operationId: pathDetails
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiPathsDetailsRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoPathsDetailsOutput'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get commit details
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/paths:
    get:
      operationId: listPaths
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - description: Indicates whether directories should be included in the response.
          in: query
          name: include_directories
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoListPathsOutput'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List all paths
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/pullreq:
    get:
      operationId: listPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The state of the pull requests to include in the result.
          explode: true
          in: query
          name: state
          required: false
          schema:
            items:
              default: open
              enum:
                - closed
                - merged
                - open
              type: string
            type: array
          style: form
        - description: Source repository ref of the pull requests.
          in: query
          name: source_repo_ref
          required: false
          schema:
            type: string
        - description: Source branch of the pull requests.
          in: query
          name: source_branch
          required: false
          schema:
            type: string
        - description: Target branch of the pull requests.
          in: query
          name: target_branch
          required: false
          schema:
            type: string
        - description: The substring by which the pull requests are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: List of principal IDs who created pull requests.
          explode: true
          in: query
          name: created_by
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The data by which the pull requests are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: number
            enum:
              - created
              - edited
              - merged
              - number
              - updated
            type: string
        - description: >-
            The result should contain only entries created before this timestamp
            (unix millis).
          in: query
          name: created_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries created after this timestamp
            (unix millis).
          in: query
          name: created_gt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries updated before this timestamp
            (unix millis).
          in: query
          name: updated_lt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries updated after this timestamp
            (unix millis).
          in: query
          name: updated_gt
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            By providing this parameter the description would be excluded from
            the response.
          in: query
          name: exclude_description
          required: false
          schema:
            default: false
            type: boolean
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: List of label ids used to filter pull requests.
          explode: true
          in: query
          name: label_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: List of label value ids used to filter pull requests.
          explode: true
          in: query
          name: value_id
          required: false
          schema:
            items:
              type: integer
            type: array
          style: form
        - description: Return only pull requests where this user is the author.
          in: query
          name: author_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has created at least one
            comment.
          in: query
          name: commenter_id
          required: false
          schema:
            type: integer
        - description: Return only pull requests where this user has been mentioned.
          in: query
          name: mentioned_id
          required: false
          schema:
            type: integer
        - description: >-
            Return only pull requests where this user has been added as a
            reviewer.
          in: query
          name: reviewer_id
          required: false
          schema:
            type: integer
        - description: >-
            Require only this review decision of the reviewer. Requires
            reviewer_id parameter.
          explode: true
          in: query
          name: review_decision
          required: false
          schema:
            items:
              enum:
                - approved
                - changereq
                - pending
                - reviewed
              type: string
            type: array
          style: form
        - description: If true, the git diff stats would be included in the response.
          in: query
          name: include_git_stats
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, the summary of check for the branch commit SHA would be
            included in the response.
          in: query
          name: include_checks
          required: false
          schema:
            default: false
            type: boolean
        - description: >-
            If true, a list of rules that apply to this branch would be included
            in the response.
          in: query
          name: include_rules
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPullReq'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List pull requests
      tags:
        - pullreq
    post:
      operationId: createPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCreatePullReqRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReq'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create pull request
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}:
    get:
      operationId: getPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReq'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get pull request
      tags:
        - pullreq
    patch:
      operationId: updatePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUpdatePullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReq'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update pull request
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/activities:
    get:
      operationId: listPullReqActivities
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The kind of the pull request activity to include in the result.
          in: query
          name: kind
          required: false
          schema:
            items:
              enum:
                - change-comment
                - comment
                - system
              type: string
            type: array
        - description: The type of the pull request activity to include in the result.
          in: query
          name: type
          required: false
          schema:
            items:
              enum:
                - branch-delete
                - branch-restore
                - branch-update
                - code-comment
                - comment
                - label-modify
                - merge
                - review-submit
                - reviewer-add
                - reviewer-delete
                - state-change
                - target-branch-change
                - title-change
                - user-group-reviewer-add
                - user-group-reviewer-delete
              type: string
            type: array
        - description: >-
            The result should contain only entries created at and after this
            timestamp (unix millis).
          in: query
          name: after
          required: false
          schema:
            minimum: 0
            type: integer
        - description: >-
            The result should contain only entries created before this timestamp
            (unix millis).
          in: query
          name: before
          required: false
          schema:
            minimum: 0
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPullReqActivity'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List activities
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/branch:
    post:
      operationId: restorePullReqSourceBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              properties:
                bypass_rules:
                  type: boolean
                dry_run_rules:
                  type: boolean
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCreateBranchOutput'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Restore source branch
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/checks:
    get:
      operationId: checksPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqChecks'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get status checks
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/codeowners:
    get:
      operationId: codeownersPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCodeOwnerEvaluation'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get code owners
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments:
    post:
      operationId: commentCreatePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCommentCreatePullReqRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqActivity'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create new pull request comment
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/{pullreq_comment_id}:
    delete:
      operationId: commentDeletePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: pullreq_comment_id
          required: true
          schema:
            type: integer
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete pull request comment
      tags:
        - pullreq
    patch:
      operationId: commentUpdatePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: pullreq_comment_id
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCommentUpdatePullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqActivity'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update pull request comment
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/{pullreq_comment_id}/status:
    put:
      operationId: commentStatusPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: pullreq_comment_id
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCommentStatusPullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqActivity'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update status of pull request comment
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/comments/apply-suggestions:
    post:
      operationId: commentApplySuggestions
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCommentApplySuggestionstRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PullreqCommentApplySuggestionsOutput'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Apply pull request code comment suggestions
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/commits:
    get:
      operationId: listPullReqCommits
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesCommit'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List commits
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/diff:
    get:
      operationId: diffPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: provide path for diff operation
          in: query
          name: path
          schema:
            description: provide path for diff operation
            items:
              type: string
            type: array
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GitFileDiff'
                type: array
            text/plain:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get file changes
      tags:
        - pullreq
    post:
      operationId: diffPullReqPost
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiPostRawPRDiffRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/GitFileDiff'
                type: array
            text/plain:
              schema:
                type: string
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get file changes
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/file-views:
    get:
      operationId: fileViewListPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPullReqFileView'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List viewed files
      tags:
        - pullreq
    put:
      operationId: fileViewAddPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiFileViewAddPullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqFileView'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Mark file as viewed
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/file-views/{file_path}:
    delete:
      operationId: fileViewDeletePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: file_path
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Remove file view
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/labels:
    get:
      operationId: listPullReqLabels
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should contain all labels assignable to the pullreq.
          in: query
          name: assignable
          required: false
          schema:
            default: false
            type: boolean
        - description: The substring which is used to filter the labels by their key.
          in: query
          name: query
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesScopesLabels'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List labels assigned to pull request
      tags:
        - labels
    put:
      operationId: assignLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiPullReqAssignLabelInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqLabel'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Assign label to pull request
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/labels/{label_id}:
    delete:
      operationId: unassignLabel
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: label_id
          required: true
          schema:
            type: integer
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Unassign label from pull request
      tags:
        - labels
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/merge:
    post:
      operationId: mergePullReqOp
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiMergePullReq'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesMergeResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '405':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Method Not Allowed
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesMergeViolations'
          description: Unprocessable Entity
      summary: Merge
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/metadata:
    get:
      operationId: pullReqMetaData
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqStats'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get metadata
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/revert:
    post:
      operationId: revertPullReqOp
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              properties:
                message:
                  type: string
                revert_branch:
                  type: string
                title:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRevertResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '405':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Method Not Allowed
      summary: Revert of a merged pull request
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers:
    get:
      operationId: reviewerListPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesPullReqReviewer'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List reviewers
      tags:
        - pullreq
    put:
      operationId: reviewerAddPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiReviewerAddPullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReqReviewer'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Add reviewer
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers/{pullreq_reviewer_id}:
    delete:
      operationId: reviewerDeletePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: pullreq_reviewer_id
          required: true
          schema:
            type: integer
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Remove reviewer
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers/combined:
    get:
      operationId: reviewerCombinedListPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PullreqCombinedListResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers/usergroups:
    put:
      operationId: userGroupReviewerAddPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUserGroupReviewerAddRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesUserGroupReviewer'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviewers/usergroups/{user_group_id}:
    delete:
      operationId: userGroupReviewerDeletePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
        - in: path
          name: user_group_id
          required: true
          schema:
            type: integer
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/reviews:
    post:
      operationId: reviewSubmitPullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiReviewSubmitPullReqRequest'
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Submit review
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/{pullreq_number}/state:
    post:
      operationId: statePullReq
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: pullreq_number
          required: true
          schema:
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiStatePullReqRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesPullReq'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update state of pull request
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/pullreq/candidates:
    get:
      operationId: prCandidates
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesBranchTable'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - pullreq
  /code/api/v1/repos/{repo_identifier}/purge:
    post:
      operationId: purgeRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The exact time the resource was delete at in epoch format.
          in: query
          name: deleted_at
          required: true
          schema:
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Purge repository
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/raw/{path}:
    get:
      operationId: getRaw
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The git reference (branch / tag / commitID) that will be used to
            retrieve the data. If no value is provided the default branch of the
            repository is used.
          in: query
          name: git_ref
          required: false
          schema:
            default: '{Repository Default Branch}'
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get raw file content
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/rebase:
    post:
      operationId: rebaseBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                base_branch:
                  type: string
                base_commit_sha:
                  $ref: '#/components/schemas/ShaSHA'
                bypass_rules:
                  type: boolean
                dry_run:
                  type: boolean
                dry_run_rules:
                  type: boolean
                head_branch:
                  type: string
                head_commit_sha:
                  $ref: '#/components/schemas/ShaSHA'
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRebaseResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesMergeViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Rebase a branch relative to another branch or a commit
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/restore:
    post:
      operationId: restoreRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The exact time the resource was delete at in epoch format.
          in: query
          name: deleted_at
          required: true
          schema:
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiRestoreRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Restore repository
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/rules:
    get:
      operationId: repoRuleList
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The substring by which the repository protection rules are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The field by which the protection rules are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: created_at
            enum:
              - created_at
              - identifier
              - uid
              - updated_at
            type: string
        - description: The types of rules to include.
          explode: true
          in: query
          name: type
          required: false
          schema:
            items:
              enum:
                - branch
                - tag
                - push
              type: string
            type: array
          style: form
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should inherit entities from parent spaces.
          in: query
          name: inherited
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/OpenapiRule'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List repo protection rules
      tags:
        - rules
    post:
      operationId: repoRuleAdd
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                definition:
                  $ref: '#/components/schemas/OpenapiRuleDefinition'
                description:
                  type: string
                identifier:
                  type: string
                pattern:
                  $ref: '#/components/schemas/ProtectionPattern'
                repo_target:
                  $ref: '#/components/schemas/ProtectionRepoTarget'
                state:
                  $ref: '#/components/schemas/EnumRuleState'
                type:
                  $ref: '#/components/schemas/OpenapiRuleType'
                uid:
                  deprecated: true
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: Created
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Add repo protection rule
      tags:
        - rules
  /code/api/v1/repos/{repo_identifier}/rules/{rule_identifier}:
    delete:
      operationId: repoRuleDelete
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete repo protection rule
      tags:
        - rules
    get:
      operationId: repoRuleGet
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get repo protection rule
      tags:
        - rules
    patch:
      operationId: repoRuleUpdate
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                definition:
                  $ref: '#/components/schemas/OpenapiRuleDefinition'
                description:
                  nullable: true
                  type: string
                identifier:
                  nullable: true
                  type: string
                pattern:
                  $ref: '#/components/schemas/ProtectionPattern'
                repo_target:
                  $ref: '#/components/schemas/ProtectionRepoTarget'
                state:
                  $ref: '#/components/schemas/EnumRuleState'
                type:
                  $ref: '#/components/schemas/OpenapiRuleType'
                uid:
                  deprecated: true
                  nullable: true
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update repo protection rule
      tags:
        - rules
  /code/api/v1/repos/{repo_identifier}/settings/general:
    get:
      operationId: findGeneralSettings
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReposettingsGeneralSettings'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get general settings
      tags:
        - repository
    patch:
      operationId: updateGeneralSettings
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiGeneralSettingsRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReposettingsGeneralSettings'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update general settings
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/settings/security:
    get:
      operationId: findSecuritySettings
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReposettingsSecuritySettings'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get security settings
      tags:
        - repository
    patch:
      operationId: updateSecuritySettings
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiSecuritySettingsRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReposettingsSecuritySettings'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update security settings
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/squash:
    post:
      operationId: squashBranch
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                base_branch:
                  type: string
                base_commit_sha:
                  $ref: '#/components/schemas/ShaSHA'
                bypass_rules:
                  type: boolean
                dry_run:
                  type: boolean
                dry_run_rules:
                  type: boolean
                head_branch:
                  type: string
                head_commit_sha:
                  $ref: '#/components/schemas/ShaSHA'
                message:
                  type: string
                title:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesSquashResponse'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesMergeViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Squashes commits in a branch relative to another branch or a commit
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/summary:
    get:
      operationId: summary
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRepositorySummary'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get repository summary
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/tags:
    get:
      operationId: listTags
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            Indicates whether optional commit information should be included in
            the response.
          in: query
          name: include_commit
          required: false
          schema:
            default: false
            type: boolean
        - description: The substring by which the tags are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The data by which the tags are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: name
            enum:
              - name
              - date
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesCommitTag'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List tags
      tags:
        - repository
    post:
      operationId: createTag
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCreateTagRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesCommitTag'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create tag
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/tags/{tag_name}:
    delete:
      operationId: deleteTag
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: Bypass rule violations if possible.
          in: query
          name: bypass_rules
          required: false
          schema:
            default: false
            type: boolean
        - description: Dry run rules for operations
          in: query
          name: dry_run_rules
          required: false
          schema:
            default: false
            type: boolean
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: tag_name
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Conflict
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesRulesViolations'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete tag
      tags:
        - repository
  /code/api/v1/repos/{repo_identifier}/uploads:
    post:
      operationId: repoArtifactUpload
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/octet-stream:
            schema: {}
        description: Binary file to upload
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadResult'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Repo artifact upload
      tags:
        - upload
  /code/api/v1/repos/{repo_identifier}/uploads/{file_ref}:
    get:
      operationId: repoArtifactDownload
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: file_ref
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
        '307':
          description: Temporary Redirect
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Repo artifact download
      tags:
        - upload
  /code/api/v1/repos/{repo_identifier}/webhooks:
    get:
      operationId: listRepoWebhooks
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter the webhooks by their
            identifier.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The data by which the webhooks are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: identifier
            enum:
              - id
              - uid
              - display_name
              - created
              - updated
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/OpenapiWebhookType'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List repo webhooks
      tags:
        - webhook
    post:
      operationId: createRepoWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiCreateRepoWebhookRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create repo webhook
      tags:
        - webhook
  /code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}:
    delete:
      operationId: deleteRepoWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete repo webhook
      tags:
        - webhook
    get:
      operationId: getRepoWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get repo webhook
      tags:
        - webhook
    patch:
      operationId: updateRepoWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUpdateRepoWebhookRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update repo webhook
      tags:
        - webhook
  /code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions:
    get:
      operationId: listRepoWebhookExecutions
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesWebhookExecution'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List repo webhook executions
      tags:
        - webhook
  /code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}:
    get:
      operationId: getRepoWebhookExecution
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_execution_id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesWebhookExecution'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get repo webhook execution
      tags:
        - webhook
  /code/api/v1/repos/{repo_identifier}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger:
    post:
      operationId: retriggerRepoWebhookExecution
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: repo_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_execution_id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesWebhookExecution'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Retrigger repo webhook execution
      tags:
        - webhook
  /code/api/v1/repos/import:
    post:
      operationId: importRepository
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                description:
                  type: string
                identifier:
                  type: string
                parent_ref:
                  type: string
                pipelines:
                  $ref: '#/components/schemas/ImporterPipelineOption'
                provider:
                  $ref: '#/components/schemas/ImporterProvider'
                provider_repo:
                  type: string
                uid:
                  deprecated: true
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepoRepositoryOutput'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Import repository
      tags:
        - repository
  /code/api/v1/resources/gitignore:
    get:
      operationId: listGitignore
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List available gitignore names
      tags:
        - resource
  /code/api/v1/resources/license:
    get:
      operationId: listLicenses
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  properties:
                    label:
                      type: string
                    value:
                      type: string
                  type: object
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List available license names
      tags:
        - resource
  /code/api/v1/rules:
    get:
      operationId: spaceRuleList
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The substring by which the repository protection rules are filtered.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The types of rules to include.
          explode: true
          in: query
          name: type
          required: false
          schema:
            items:
              enum:
                - branch
                - tag
                - push
              type: string
            type: array
          style: form
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The field by which the protection rules are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: created_at
            enum:
              - created_at
              - identifier
              - uid
              - updated_at
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should inherit entities from parent spaces.
          in: query
          name: inherited
          required: false
          schema:
            default: false
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/OpenapiRule'
                type: array
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List acc/org/proj protection rules
      tags:
        - rules
    post:
      operationId: spaceRuleAdd
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                definition:
                  $ref: '#/components/schemas/OpenapiRuleDefinition'
                description:
                  type: string
                identifier:
                  type: string
                pattern:
                  $ref: '#/components/schemas/ProtectionPattern'
                repo_target:
                  $ref: '#/components/schemas/ProtectionRepoTarget'
                state:
                  $ref: '#/components/schemas/EnumRuleState'
                type:
                  $ref: '#/components/schemas/OpenapiRuleType'
                uid:
                  deprecated: true
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: Created
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Add acc/org/proj protection rule
      tags:
        - rules
  /code/api/v1/rules/{rule_identifier}:
    delete:
      operationId: spaceRuleDelete
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete acc/org/proj protection rule
      tags:
        - rules
    get:
      operationId: spaceRuleGet
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get acc/org/proj protection rule
      tags:
        - rules
    patch:
      operationId: spaceRuleUpdate
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: rule_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                definition:
                  $ref: '#/components/schemas/OpenapiRuleDefinition'
                description:
                  nullable: true
                  type: string
                identifier:
                  nullable: true
                  type: string
                pattern:
                  $ref: '#/components/schemas/ProtectionPattern'
                repo_target:
                  $ref: '#/components/schemas/ProtectionRepoTarget'
                state:
                  $ref: '#/components/schemas/EnumRuleState'
                type:
                  $ref: '#/components/schemas/OpenapiRuleType'
                uid:
                  deprecated: true
                  nullable: true
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiRule'
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update acc/org/proj protection rule
      tags:
        - rules
  /code/api/v1/user/favorite:
    post:
      operationId: createFavorite
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TypesFavoriteResource'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesFavoriteResource'
          description: Created
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create favorite
      tags:
        - user
  /code/api/v1/user/favorite/{resource_id}:
    delete:
      operationId: deleteFavorite
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The type of the resource to be unfavorited.
          in: query
          name: resource_type
          required: false
          schema:
            enum:
              - CONNECTOR
              - GITSPACE
              - INFRAPROVIDER
              - PIPELINE
              - REGISTRY
              - REPOSITORY
              - SECRET
              - SERVICE
              - SERVICEACCOUNT
              - SPACE
              - TEMPLATE
              - USER
            type: string
        - in: path
          name: resource_id
          required: true
          schema:
            type: integer
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete favorite
      tags:
        - user
  /code/api/v1/usergroups:
    get:
      operationId: listUsergroups
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter usergroups by their
            identifier.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesUserGroupInfo'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List usergroups at account, org or project level
      tags:
        - usergroups
  /code/api/v1/webhooks:
    get:
      operationId: listSpaceWebhooks
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: >-
            The substring which is used to filter the webhooks by their
            identifier.
          in: query
          name: query
          required: false
          schema:
            type: string
        - description: The data by which the webhooks are sorted.
          in: query
          name: sort
          required: false
          schema:
            default: identifier
            enum:
              - id
              - uid
              - display_name
              - created
              - updated
            type: string
        - description: The order of the output.
          in: query
          name: order
          required: false
          schema:
            default: asc
            enum:
              - asc
              - desc
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/OpenapiWebhookType'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List acc, org or proj webhooks
      tags:
        - webhook
    post:
      operationId: createSpaceWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TypesWebhookCreateInput'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Create acc, org or proj webhook
      tags:
        - webhook
  /code/api/v1/webhooks/{webhook_identifier}:
    delete:
      operationId: deleteSpaceWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Delete acc, org or proj webhook
      tags:
        - webhook
    get:
      operationId: getSpaceWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get acc, org or proj webhook
      tags:
        - webhook
    patch:
      operationId: updateSpaceWebhook
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenapiUpdateSpaceWebhookRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenapiWebhookType'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Update acc, org or proj webhook
      tags:
        - webhook
  /code/api/v1/webhooks/{webhook_identifier}/executions:
    get:
      operationId: listSpaceWebhookExecutions
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesWebhookExecution'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: List acc, org or proj webhook executions
      tags:
        - webhook
  /code/api/v1/webhooks/{webhook_identifier}/executions/{webhook_execution_id}:
    get:
      operationId: getSpaceWebhookExecution
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - description: The page to return.
          in: query
          name: page
          required: false
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_execution_id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesWebhookExecution'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Get acc, org or proj webhook execution
      tags:
        - webhook
  /code/api/v1/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger:
    post:
      operationId: retriggerSpaceWebhookExecution
      parameters:
        - description: Account Identifier for the Entity.
          in: query
          name: accountIdentifier
          required: true
          schema:
            type: string
        - description: Organization Identifier for the Entity.
          in: query
          name: orgIdentifier
          required: false
          schema:
            type: string
        - description: Project Identifier for the Entity.
          in: query
          name: projectIdentifier
          required: false
          schema:
            type: string
        - in: path
          name: webhook_identifier
          required: true
          schema:
            type: string
        - in: path
          name: webhook_execution_id
          required: true
          schema:
            type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesWebhookExecution'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      summary: Retrigger acc, org or proj webhook execution
      tags:
        - webhook
  /har/api/v1/registry:
    post:
      description: Create a Registry.
      operationId: CreateRegistry
      parameters:
        - $ref: '#/components/parameters/spaceRefQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/RegistryRequest'
      responses:
        '201':
          $ref: '#/components/responses/RegistryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Create Registry.
      tags:
        - Registries
  /har/api/v1/registry/{registry_identifier}/artifact/{artifact}/redirect:
    get:
      description: Redirect to Harness Artifact Page
      operationId: RedirectHarnessArtifact
      parameters:
        - $ref: '#/components/parameters/RegistryIdentifierPathParam'
        - $ref: '#/components/parameters/AccountIdentifierParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionParam'
      responses:
        '302':
          $ref: '#/components/responses/Redirect'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Redirect to Harness Artifact Page
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}:
    delete:
      description: Delete a Registry in the account for the given key
      operationId: DeleteRegistry
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete a Registry
      tags:
        - Registries
    get:
      description: Returns Registry Details in the account for the given key
      operationId: GetRegistry
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
      responses:
        '200':
          $ref: '#/components/responses/RegistryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns Registry Details
      tags:
        - Registries
    put:
      description: Updates a Registry in the account for the given key
      operationId: ModifyRegistry
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
      requestBody:
        $ref: '#/components/requestBodies/RegistryRequest'
      responses:
        '200':
          $ref: '#/components/responses/RegistryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Updates a Registry
      tags:
        - Registries
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}:
    delete:
      description: Delete Artifact.
      operationId: DeleteArtifact
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete Artifact
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/labels:
    put:
      description: Update Artifact Labels.
      operationId: UpdateArtifactLabels
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
      requestBody:
        $ref: '#/components/requestBodies/ArtifactLabelRequest'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactLabelResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Update Artifact Labels
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/stats:
    get:
      description: Get Artifact Stats.
      operationId: GetArtifactStats
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/fromDateParam'
        - $ref: '#/components/parameters/toDateParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactStatsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Artifact Stats
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/summary:
    get:
      description: Get Artifact Summary.
      operationId: GetArtifactSummary
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSummaryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Artifact Summary
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}:
    delete:
      description: Delete Artifact Version.
      operationId: DeleteArtifactVersion
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete an Artifact Version
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/deploymentdetails:
    get:
      description: Get Artifact Deployments
      operationId: GetArtifactDeployments
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/envType'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDeploymentsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Artifact Deployments
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/details:
    get:
      description: Get Artifact Details
      operationId: GetArtifactDetails
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/childVersionParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Artifact Details
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/details:
    get:
      description: Get Docker Artifact Details
      operationId: GetDockerArtifactDetails
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/digestParam'
      responses:
        '200':
          $ref: '#/components/responses/DockerArtifactDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Docker Artifact Detail
      tags:
        - Docker Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/integrationdetails:
    get:
      description: Get Docker Artifact Integration Details
      operationId: GetDockerArtifactIntegrationDetails
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/digestParam'
      responses:
        '200':
          $ref: '#/components/responses/DockerArtifactDetailIntegrationResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Docker Artifact Integration Detail
      tags:
        - Docker Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/layers:
    get:
      description: Get Docker Artifact Layers
      operationId: GetDockerArtifactLayers
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/digestParam'
      responses:
        '200':
          $ref: '#/components/responses/DockerLayersResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Docker Artifact Layers
      tags:
        - Docker Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/manifest:
    get:
      description: Get Docker Artifact Manifest
      operationId: GetDockerArtifactManifest
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/digestParam'
      responses:
        '200':
          $ref: '#/components/responses/DockerArtifactManifestResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Docker Artifact Manifest
      tags:
        - Docker Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/docker/manifests:
    get:
      description: Get Docker Artifact Manifests
      operationId: GetDockerArtifactManifests
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
      responses:
        '200':
          $ref: '#/components/responses/DockerManifestsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Docker Artifact Manifests
      tags:
        - Docker Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/file/{file_name}:
    get:
      description: just validate existence of Artifact file
      operationId: GetArtifactFile
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/fileNamePathParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactFileResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Artifact file
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/files:
    get:
      description: Get Artifact files
      operationId: GetArtifactFiles
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/FileDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Artifact files
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/helm/details:
    get:
      description: Get Helm Artifact Details
      operationId: GetHelmArtifactDetails
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
      responses:
        '200':
          $ref: '#/components/responses/HelmArtifactDetailResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Helm Artifact Detail
      tags:
        - Helm Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/helm/manifest:
    get:
      description: Get Helm Artifact Manifest
      operationId: GetHelmArtifactManifest
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
      responses:
        '200':
          $ref: '#/components/responses/HelmArtifactManifestResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Describe Helm Artifact Manifest
      tags:
        - Helm Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/version/{version}/summary:
    get:
      description: Get Artifact Version Summary.
      operationId: GetArtifactVersionSummary
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/versionPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
        - $ref: '#/components/parameters/digestOptParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactVersionSummaryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Artifact Version Summary
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/{artifact}/versions:
    get:
      description: Lists all the Artifact Versions.
      operationId: GetAllArtifactVersions
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactPathParam'
        - $ref: '#/components/parameters/artifactTypeParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ListArtifactVersionResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List Artifact Versions
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/labels:
    get:
      description: List Artifact Labels.
      operationId: ListArtifactLabels
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ListArtifactLabelResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List Artifact Labels
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifact/stats:
    get:
      description: Get Artifact Stats.
      operationId: GetArtifactStatsForRegistry
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/fromDateParam'
        - $ref: '#/components/parameters/toDateParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactStatsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get Artifact Stats
      tags:
        - Artifacts
  /har/api/v1/registry/{registry_ref}/artifacts:
    get:
      description: Lists all the Artifacts for Registry
      operationId: GetAllArtifactsByRegistry
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/LabelsParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
        - $ref: '#/components/parameters/artifactTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/ListRegistryArtifactResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List Artifacts for Registry
      tags:
        - Registries
  /har/api/v1/registry/{registry_ref}/client-setup-details:
    get:
      description: Returns CLI Client Setup Details based on package type
      operationId: GetClientSetupDetails
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactParam'
        - $ref: '#/components/parameters/versionParam'
      responses:
        '200':
          $ref: '#/components/responses/ClientSetupDetailsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Returns CLI Client Setup Details
      tags:
        - Registries
  /har/api/v1/registry/{registry_ref}/quarantine:
    delete:
      description: delete Quarantine file path
      operationId: deleteQuarantineFilePath
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/artifactParam'
        - $ref: '#/components/parameters/versionParam'
        - $ref: '#/components/parameters/filePathParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: deleteQuarantineFilePath
      tags:
        - quarantine
    put:
      description: quarantine file path
      operationId: quarantineFilePath
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
      requestBody:
        $ref: '#/components/requestBodies/quarantineRequest'
      responses:
        '200':
          $ref: '#/components/responses/quarantinePathResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: quarantineFilePath
      tags:
        - quarantine
  /har/api/v1/registry/{registry_ref}/webhooks:
    get:
      description: Returns List of Webhook Details
      operationId: ListWebhooks
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
      responses:
        '200':
          $ref: '#/components/responses/ListWebhooksResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: ListWebhooks
      tags:
        - Webhooks
    post:
      description: Returns Webhook Details
      operationId: CreateWebhook
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
      requestBody:
        $ref: '#/components/requestBodies/WebhookRequest'
      responses:
        '201':
          $ref: '#/components/responses/WebhookResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: CreateWebhook
      tags:
        - Webhooks
  /har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}:
    delete:
      description: Delete a Webhook
      operationId: DeleteWebhook
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: DeleteWebhook
      tags:
        - Webhooks
    get:
      description: Returns Webhook Details
      operationId: GetWebhook
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
      responses:
        '200':
          $ref: '#/components/responses/WebhookResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: GetWebhook
      tags:
        - Webhooks
    put:
      description: Returns Webhook Details
      operationId: UpdateWebhook
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
      requestBody:
        $ref: '#/components/requestBodies/WebhookRequest'
      responses:
        '201':
          $ref: '#/components/responses/WebhookResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: UpdateWebhook
      tags:
        - Webhooks
  /har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions:
    get:
      description: Returns Webhook Execution Details List
      operationId: ListWebhookExecutions
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
      responses:
        '200':
          $ref: '#/components/responses/ListWebhooksExecutionResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: ListWebhookExecutions
      tags:
        - Webhooks
  /har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}:
    get:
      description: Returns Webhook Execution Details
      operationId: GetWebhookExecution
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
        - $ref: '#/components/parameters/webhookExecutionIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/WebhookExecutionResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: GetWebhookExecution
      tags:
        - Webhooks
  /har/api/v1/registry/{registry_ref}/webhooks/{webhook_identifier}/executions/{webhook_execution_id}/retrigger:
    get:
      description: Retrigger Webhook Execution
      operationId: ReTriggerWebhookExecution
      parameters:
        - $ref: '#/components/parameters/registryRefPathParam'
        - $ref: '#/components/parameters/webhookIdentifierPathParam'
        - $ref: '#/components/parameters/webhookExecutionIdPathParam'
      responses:
        '200':
          $ref: '#/components/responses/WebhookExecutionResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: ReTriggerWebhookExecution
      tags:
        - Webhooks
  /har/api/v1/replication/rules:
    get:
      description: List all replication rules
      operationId: listReplicationRules
      parameters:
        - $ref: '#/components/parameters/spaceRefQueryParam'
      responses:
        '200':
          $ref: '#/components/responses/ListReplicationRuleResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List replication rules
      tags:
        - Replication
    post:
      description: Create a replication rule
      operationId: createReplicationRule
      parameters:
        - $ref: '#/components/parameters/spaceRefQueryParam'
      requestBody:
        $ref: '#/components/requestBodies/ReplicationRuleRequest'
      responses:
        '200':
          $ref: '#/components/responses/ReplicationRuleResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Create a replication rule
      tags:
        - Replication
  /har/api/v1/replication/rules/{id}:
    delete:
      description: Delete a replication rule
      operationId: deleteReplicationRule
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Delete a replication rule
      tags:
        - Replication
    get:
      description: Get a replication rule
      operationId: getReplicationRule
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/ReplicationRuleResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get a replication rule
      tags:
        - Replication
    put:
      description: Update a replication rule
      operationId: updateReplicationRule
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/ReplicationRuleRequest'
      responses:
        '200':
          $ref: '#/components/responses/ReplicationRuleResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Update a replication rule
      tags:
        - Replication
  /har/api/v1/replication/rules/{id}/migration/images:
    get:
      description: List migration images given an id
      operationId: listMigrationImages
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
      responses:
        '200':
          $ref: '#/components/responses/ListMigrationImageResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List migration images
      tags:
        - Replication
  /har/api/v1/replication/rules/{id}/migration/images/{image_id}/logs:
    get:
      operationId: getMigrationLogsForImage
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
        - in: path
          name: image_id
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/PlainTextResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get migration logs for an image
      tags:
        - Replication
  /har/api/v1/replication/rules/{id}/migration/start:
    post:
      description: Start migration given an id
      operationId: startMigration
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Start migration
      tags:
        - Replication
  /har/api/v1/replication/rules/{id}/migration/stop:
    post:
      description: Stop migration given an id
      operationId: stopMigration
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          $ref: '#/components/responses/Success'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Stop migration
      tags:
        - Replication
  /har/api/v1/spaces/{space_ref}/artifact/stats:
    get:
      description: Get artifact stats
      operationId: GetArtifactStatsForSpace
      parameters:
        - $ref: '#/components/parameters/spaceRefPathParam'
        - $ref: '#/components/parameters/fromDateParam'
        - $ref: '#/components/parameters/toDateParam'
      responses:
        '200':
          $ref: '#/components/responses/ArtifactStatsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get artifact stats
      tags:
        - Spaces
  /har/api/v1/spaces/{space_ref}/artifacts:
    get:
      description: Lists all the Harness Artifacts.
      operationId: GetAllHarnessArtifacts
      parameters:
        - $ref: '#/components/parameters/spaceRefPathParam'
        - $ref: '#/components/parameters/RegistryIdentifierParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
        - $ref: '#/components/parameters/latestVersion'
        - $ref: '#/components/parameters/deployedArtifact'
        - $ref: '#/components/parameters/packageTypeParam'
      responses:
        '200':
          $ref: '#/components/responses/ListArtifactResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List Harness Artifacts
      tags:
        - Spaces
  /har/api/v1/spaces/{space_ref}/details:
    get:
      description: Get storage details for given space
      operationId: GetStorageDetails
      parameters:
        - $ref: '#/components/parameters/spaceRefPathParam'
      responses:
        '200':
          $ref: '#/components/responses/StorageDetailsResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: Get storage details for given space
      tags:
        - Spaces
  /har/api/v1/spaces/{space_ref}/labels:
    get:
      operationId: RegistrylistSpaceLabels
      parameters:
        - description: The page to return.
          in: query
          name: page
          schema:
            default: 1
            minimum: 1
            type: integer
        - description: The maximum number of results to return.
          in: query
          name: limit
          schema:
            default: 30
            maximum: 100
            minimum: 1
            type: integer
        - description: The result should inherit entities from parent spaces.
          in: query
          name: inherited
          schema:
            default: false
            type: boolean
        - description: The substring which is used to filter the labels by their key.
          in: query
          name: query
          schema:
            type: string
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/RegistryTypesLabel'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    post:
      operationId: RegistrydefineSpaceLabel
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryTypesLabel'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    put:
      operationId: RegistrysaveSpaceLabel
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                label:
                  $ref: '#/components/schemas/TypesSaveLabelInput'
                values:
                  items:
                    $ref: '#/components/schemas/TypesSaveLabelValueInput'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryTypesLabelWithValues'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
  /har/api/v1/spaces/{space_ref}/labels/{key}:
    delete:
      operationId: RegistrydeleteSpaceLabel
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    get:
      operationId: findSpaceLabel
      parameters:
        - description: The result should include label values.
          in: query
          name: include_values
          schema:
            default: false
            type: boolean
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryTypesLabelWithValues'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    patch:
      operationId: RegistryupdateSpaceLabel
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                description:
                  type: string
                key:
                  type: string
                type:
                  $ref: '#/components/schemas/EnumLabelType'
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryTypesLabel'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
  /har/api/v1/spaces/{space_ref}/labels/{key}/values:
    get:
      operationId: RegistrylistSpaceLabelValues
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TypesLabelValue'
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    post:
      operationId: RegistrydefineSpaceLabelValue
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
  /har/api/v1/spaces/{space_ref}/labels/{key}/values/{value}:
    delete:
      operationId: RegistrydeleteSpaceLabelValue
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      responses:
        '204':
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
    patch:
      operationId: RegistryupdateSpaceLabelValue
      parameters:
        - in: path
          name: space_ref
          required: true
          schema:
            type: string
        - in: path
          name: key
          required: true
          schema:
            type: string
        - in: path
          name: value
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                color:
                  $ref: '#/components/schemas/EnumLabelColor'
                value:
                  type: string
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TypesLabelValue'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsererrorError'
          description: Internal Server Error
      tags:
        - space
  /har/api/v1/spaces/{space_ref}/registries:
    get:
      description: Lists all the registries.
      operationId: GetAllRegistries
      parameters:
        - $ref: '#/components/parameters/spaceRefPathParam'
        - $ref: '#/components/parameters/packageTypeParam'
        - $ref: '#/components/parameters/RegistryTypeParam'
        - $ref: '#/components/parameters/RegistrypageNumber'
        - $ref: '#/components/parameters/RegistrypageSize'
        - $ref: '#/components/parameters/RegistrysortOrder'
        - $ref: '#/components/parameters/sortField'
        - $ref: '#/components/parameters/searchTerm'
        - $ref: '#/components/parameters/recursiveParam'
        - $ref: '#/components/parameters/scopeParam'
      responses:
        '200':
          $ref: '#/components/responses/ListRegistryResponse'
        '400':
          $ref: '#/components/responses/RegistryBadRequest'
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '403':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
      summary: List registries
      tags:
        - Spaces
  /iacm/api/enforcement/client/usage/{metric}:
    put:
      tags:
        - usage
      summary: Show usage
      description: Retrieve a single usage
      operationId: usage#getUsage
      parameters:
        - name: accountIdentifier
          in: query
          description: Account identifier
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account identifier
            example: Iure ducimus expedita.
          example: Voluptatibus provident.
        - name: metric
          in: path
          description: Usage metric
          required: true
          schema:
            type: string
            description: Usage metric
            example: Inventore ipsum quibusdam voluptatum sit cumque alias.
          example: Dolores consequatur.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowUsageResponse'
              example:
                data:
                  count: 4115178181925261000
                status: Quaerat est aperiam dolorum nostrum beatae.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/health:
    get:
      tags:
        - system
      summary: health system
      description: Check server health
      operationId: IaCMsystem#health
      responses:
        '200':
          description: OK response.
  /iacm/api/latest-plugin-version:
    post:
      tags:
        - system
      summary: latest-plugin-version system
      description: Get the latest plugin version
      operationId: system#latest-plugin-version
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PluginReportedVersion'
            example:
              commit: 96381692bf3a2bd7904769c6886e832435768b57
              version: v0.123.0
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmPluginversion'
              example:
                commit: 96381692bf3a2bd7904769c6886e832435768b57
                version: 0.2.0
  /iacm/api/migrate/template-connectors:
    post:
      tags:
        - migration
      summary: Trigger template connector migration
      description: >-
        Triggers an async one-off update that adds provider_connectors to
        template YAMLs for templates in use.
      operationId: migration#migrate-template-connectors
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MigrateTemplateConnectorsRequest'
            example:
              dry_run: true
      responses:
        '202':
          description: Accepted response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MigrateTemplateConnectorsResponse'
              example:
                message: Migration job started successfully
        '500':
          description: 'internal_error: Internal server error'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/migrate/workspace-connectors:
    post:
      tags:
        - migration
      summary: Trigger workspace connector migration
      description: >-
        Triggers an async one-off migration that moves connector data from
        workspaces into the provider_connectors table.
      operationId: migration#migrate-workspace-connectors
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MigrateWorkspaceConnectorsRequest'
            example:
              dry_run: false
      responses:
        '202':
          description: Accepted response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MigrateWorkspaceConnectorsResponse'
              example:
                message: Migration job started successfully
        '500':
          description: 'internal_error: Internal server error'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules:
    get:
      tags:
        - module-registry
      summary: List modules
      description: List all modules from the module registry
      operationId: module-registry#list_modules-by-account
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mymod
          example: mymod
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: name,ASC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: updated,DESC
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Aut quam rem voluptas aut deleniti.
          example: Voluptatem molestiae asperiores consectetur harum atque.
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModuleResourceCollection'
              example:
                - account: 'n'
                  created: 8468580420864992000
                  description: Maiores at aliquid minus ut et sunt.
                  git_tag_style: Quis ratione sunt rerum nemo.
                  id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                  module_error: Dignissimos ut qui dolore aut eum.
                  name: 3g
                  org: o6
                  project: w
                  repository: Doloribus a consequatur voluptatem.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Repellat quidem soluta tempore.
                  repository_path: ''
                  repository_url: Sed dolore.
                  synced: 7072657022508926000
                  system: x
                  tags: Reprehenderit sit.
                  testing_enabled: false
                  testing_metadata:
                    account: '5'
                    org: 'n'
                    pipelines:
                      - Beatae hic eveniet corrupti.
                      - Voluptatem sit quod dolor eos eaque.
                      - Ut recusandae nisi cupiditate et atque.
                      - Sequi et.
                    project: 0so
                    provider_connector: Quo qui vitae.
                    provisioner_type: Dolorum nihil.
                    provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
                    release_pipeline: Explicabo aut autem nam laborum facilis.
                  updated: 4635258629928217000
                  versions:
                    - Consequatur quia enim.
                    - Porro repellendus aut nesciunt.
                - account: 'n'
                  created: 8468580420864992000
                  description: Maiores at aliquid minus ut et sunt.
                  git_tag_style: Quis ratione sunt rerum nemo.
                  id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                  module_error: Dignissimos ut qui dolore aut eum.
                  name: 3g
                  org: o6
                  project: w
                  repository: Doloribus a consequatur voluptatem.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Repellat quidem soluta tempore.
                  repository_path: ''
                  repository_url: Sed dolore.
                  synced: 7072657022508926000
                  system: x
                  tags: Reprehenderit sit.
                  testing_enabled: false
                  testing_metadata:
                    account: '5'
                    org: 'n'
                    pipelines:
                      - Beatae hic eveniet corrupti.
                      - Voluptatem sit quod dolor eos eaque.
                      - Ut recusandae nisi cupiditate et atque.
                      - Sequi et.
                    project: 0so
                    provider_connector: Quo qui vitae.
                    provisioner_type: Dolorum nihil.
                    provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
                    release_pipeline: Explicabo aut autem nam laborum facilis.
                  updated: 4635258629928217000
                  versions:
                    - Consequatur quia enim.
                    - Porro repellendus aut nesciunt.
                - account: 'n'
                  created: 8468580420864992000
                  description: Maiores at aliquid minus ut et sunt.
                  git_tag_style: Quis ratione sunt rerum nemo.
                  id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                  module_error: Dignissimos ut qui dolore aut eum.
                  name: 3g
                  org: o6
                  project: w
                  repository: Doloribus a consequatur voluptatem.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Repellat quidem soluta tempore.
                  repository_path: ''
                  repository_url: Sed dolore.
                  synced: 7072657022508926000
                  system: x
                  tags: Reprehenderit sit.
                  testing_enabled: false
                  testing_metadata:
                    account: '5'
                    org: 'n'
                    pipelines:
                      - Beatae hic eveniet corrupti.
                      - Voluptatem sit quod dolor eos eaque.
                      - Ut recusandae nisi cupiditate et atque.
                      - Sequi et.
                    project: 0so
                    provider_connector: Quo qui vitae.
                    provisioner_type: Dolorum nihil.
                    provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
                    release_pipeline: Explicabo aut autem nam laborum facilis.
                  updated: 4635258629928217000
                  versions:
                    - Consequatur quia enim.
                    - Porro repellendus aut nesciunt.
                - account: 'n'
                  created: 8468580420864992000
                  description: Maiores at aliquid minus ut et sunt.
                  git_tag_style: Quis ratione sunt rerum nemo.
                  id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                  module_error: Dignissimos ut qui dolore aut eum.
                  name: 3g
                  org: o6
                  project: w
                  repository: Doloribus a consequatur voluptatem.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Repellat quidem soluta tempore.
                  repository_path: ''
                  repository_url: Sed dolore.
                  synced: 7072657022508926000
                  system: x
                  tags: Reprehenderit sit.
                  testing_enabled: false
                  testing_metadata:
                    account: '5'
                    org: 'n'
                    pipelines:
                      - Beatae hic eveniet corrupti.
                      - Voluptatem sit quod dolor eos eaque.
                      - Ut recusandae nisi cupiditate et atque.
                      - Sequi et.
                    project: 0so
                    provider_connector: Quo qui vitae.
                    provisioner_type: Dolorum nihil.
                    provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
                    release_pipeline: Explicabo aut autem nam laborum facilis.
                  updated: 4635258629928217000
                  versions:
                    - Consequatur quia enim.
                    - Porro repellendus aut nesciunt.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - module-registry
      summary: Create module
      description: Create a new module in the module registry
      operationId: module-registry#create-module
      parameters:
        - name: Harness-Account
          in: header
          description: account that owns the module
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account that owns the module
            example: k8
            minLength: 1
            maxLength: 128
          example: q
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateModuleRequest'
            example:
              description: Deserunt et aut omnis doloribus repellat ut.
              git_tag_style: Et et inventore mollitia fugiat expedita.
              name: 8y
              onboarding_pipeline: Mollitia similique eligendi ut dicta voluptatem tempore.
              onboarding_pipeline_org: Et veniam consequatur totam.
              onboarding_pipeline_project: Incidunt et asperiores sint reprehenderit.
              org: 0z7
              project: 6b
              repository: Voluptatem et doloribus minima laboriosam aperiam optio.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Et exercitationem alias sit velit.
              repository_path: ''
              system: c8
              tags: Aut sunt possimus.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModuleRegistryCreateModuleResponseBody'
              example:
                account: z
                created: 1486121027783456300
                description: Cum nisi aut quaerat asperiores voluptates corrupti.
                id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                name: '4'
                repository: Tempora velit et sit in iste quisquam.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Necessitatibus nihil.
                repository_path: ''
                system: 6f
                tags: Explicabo non quis reiciendis.
                updated: 1240149521168306400
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{id}:
    delete:
      tags:
        - module-registry
      summary: Delete module
      description: Delete a module from the module registry
      operationId: module-registry#delete-module
      parameters:
        - name: id
          in: path
          description: id
          required: true
          schema:
            type: string
            description: id
            example: Officiis quo aut.
          example: Asperiores aliquam qui ratione quia voluptatem cum.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Error facilis corrupti totam debitis officiis facere.
          example: Ipsa iusto eaque quisquam qui.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - module-registry
      summary: List module by id
      description: List a module from the module registry by ID
      operationId: module-registry#list-modules-by-id
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Nihil omnis ducimus incidunt.
          example: Nihil consequuntur sapiente laudantium numquam.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Dolores labore quae qui perspiciatis.
          example: Est tempore sit officia.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListModuleByIDResponse'
              example:
                account: x
                created: 6788073803211738000
                description: Ea repudiandae ut consectetur eaque odio necessitatibus.
                git_tag_style: Ut ut dolor.
                id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
                module_error: Et nesciunt totam omnis dolor facere qui.
                name: sv
                org: u22
                project: 4r
                repository: Fugit exercitationem.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Assumenda amet.
                repository_path: ''
                repository_url: A sunt tempora possimus eum fuga.
                synced: 7792021401227480000
                system: ks9
                tags: Impedit libero nam aut.
                testing_enabled: true
                testing_metadata:
                  account: '67'
                  org: o4
                  pipelines:
                    - Veniam quo quia veniam est velit vel.
                    - Fugit corrupti consequatur dignissimos voluptas.
                  project: xua
                  provider_connector: Qui accusantium ipsum commodi.
                  provisioner_type: Consequatur voluptatem.
                  provisioner_version: Molestiae corrupti ipsam fugit mollitia magnam.
                  release_pipeline: Atque beatae ullam explicabo omnis ut.
                updated: 6578168040745618000
                versions:
                  - Impedit esse corrupti numquam.
                  - Inventore quisquam.
                  - Fugiat a earum harum et amet animi.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - module-registry
      summary: Update module
      description: Update a module in the module registry
      operationId: module-registry#update-module
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        - name: Harness-Account
          in: header
          description: account that owns the module
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account that owns the module
            example: kf
            minLength: 1
            maxLength: 128
          example: b
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateModuleRequest'
            example:
              description: Repellat voluptatum rerum pariatur nisi consequuntur.
              git_tag_style: Et aut qui id.
              name: sx
              org: u
              project: jw3
              repository: Vitae minus.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Placeat corporis.
              repository_path: ''
              system: ui
              tags: Omnis eum.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{id}/pipeline:
    post:
      tags:
        - module-registry
      summary: Create testing pipeline
      description: Create a new testing pipeline for a given module
      operationId: module-registry#create-testing-pipelines
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Animi et.
          example: Inventore omnis expedita enim vel.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: e
            minLength: 1
            maxLength: 128
          example: shx
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTestingPipelineRequest'
            example:
              org: 8lj
              project: xr4
              type: In consequatur explicabo reprehenderit et a nihil.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{id}/sync:
    post:
      tags:
        - module-registry
      summary: Sync module metadata
      description: Sync the module metadata from the module registry
      operationId: module-registry#sync-module-metadata
      parameters:
        - name: id
          in: path
          description: id
          required: true
          schema:
            type: string
            description: id
            example: Officiis ut.
          example: Corrupti animi aperiam.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Dolorem eveniet molestias.
          example: Ipsum vel.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{id}/tags:
    get:
      tags:
        - module-registry
      summary: List module tags
      description: List the module tags from the module registry
      operationId: module-registry#list-module-tags-by-id
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Quas tempora omnis qui commodi beatae odio.
          example: Fugit odit optio omnis aut aperiam sed.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Explicabo eligendi ea id.
          example: Voluptate ullam id in.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Vero ab non sit similique architecto corporis.
                example:
                  - Ut nihil minima illum et nam expedita.
                  - Quis eius voluptatem.
                  - Impedit sunt dolor sapiente impedit ab suscipit.
                  - Dolor omnis odit autem voluptate voluptatem iusto.
              example:
                - Deserunt repellat a et quibusdam eius tempora.
                - Ut quod omnis.
                - Aut nulla.
                - Deserunt et.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{id}/testing:
    delete:
      tags:
        - module-registry
      summary: Disable testing
      description: Disable testing for a module
      operationId: module-registry#disable-testing
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: integer
            description: module id
            example: 3248679144927228400
            format: int64
          example: 9150267545978654000
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Et asperiores atque porro.
          example: Voluptas fugit perspiciatis dolores fugit.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - module-registry
      summary: Enable testing
      description: Enable testing for a module
      operationId: module-registry#enable-testing
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Nobis placeat hic eveniet.
          example: Voluptatum et enim tempora vitae placeat esse.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 73n
            minLength: 1
            maxLength: 128
          example: d
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnableTestingRequest'
            example:
              org: '472'
              pipeline_id:
                - Dolorem sunt accusamus.
                - Ut qui numquam in occaecati voluptatum.
                - Harum possimus nostrum a ex enim impedit.
                - Sunt libero.
              project: djr
              provider_connector: Nihil ipsam ut quas ea.
              provisioner_type: Eum quae et ab.
              provisioner_version: Impedit impedit.
              release_pipeline: Debitis eum debitis accusantium.
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - module-registry
      summary: Update module testing
      description: Update module testing metadata
      operationId: module-registry#update-module-testing
      parameters:
        - name: id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Est impedit quisquam asperiores.
          example: Fuga repellat ad.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 9ep
            minLength: 1
            maxLength: 128
          example: 'y'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTestingRequest'
            example:
              org: g7k
              pipeline_id:
                - Eum et ut quae sit commodi.
                - Ipsum eligendi sequi sit earum quia eos.
                - Ut dignissimos.
                - Beatae perferendis odio.
              project: '4'
              provider_connector: Qui placeat omnis.
              provisioner_type: Laboriosam est rerum.
              provisioner_version: Molestiae libero aut in minima.
              release_pipeline: Repudiandae eos.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{module_id}/metadata:
    get:
      tags:
        - module-registry
      summary: List module metadata
      description: List the module metadata from the module registry
      operationId: module-registry#list-metadata-by-module
      parameters:
        - name: version
          in: query
          description: version of the module
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: version of the module
            example: Facere repudiandae et rerum et aut officiis.
          example: Accusamus et laudantium ad accusantium itaque aliquid.
        - name: submodule
          in: query
          description: submodule name
          allowEmptyValue: true
          schema:
            type: string
            description: submodule name
            example: Non pariatur quia est veritatis.
          example: Eius molestiae fuga saepe omnis qui.
        - name: module_id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Ipsam atque et voluptatem atque ea unde.
          example: Dicta repellat.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Sed est voluptates ut commodi.
          example: Laborum nihil.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListModuleMetadataResponse'
              example:
                account: Cum libero dolorum voluptas.
                dependencies:
                  - dependency_name: Quo enim earum iste ex quia nobis.
                    dependency_source: Voluptates qui.
                    dependency_version: Molestiae consequatur rerum qui aut qui.
                  - dependency_name: Quo enim earum iste ex quia nobis.
                    dependency_source: Voluptates qui.
                    dependency_version: Molestiae consequatur rerum qui aut qui.
                  - dependency_name: Quo enim earum iste ex quia nobis.
                    dependency_source: Voluptates qui.
                    dependency_version: Molestiae consequatur rerum qui aut qui.
                metadata_error: Voluptatibus commodi quos.
                module_version: Tempore sint dolore praesentium tenetur.
                name: Ut nisi.
                outputs:
                  - output_description: Repellat quia ab at et nobis.
                    output_name: Incidunt commodi sed quia.
                    output_sensitive: true
                  - output_description: Repellat quia ab at et nobis.
                    output_name: Incidunt commodi sed quia.
                    output_sensitive: true
                  - output_description: Repellat quia ab at et nobis.
                    output_name: Incidunt commodi sed quia.
                    output_sensitive: true
                  - output_description: Repellat quia ab at et nobis.
                    output_name: Incidunt commodi sed quia.
                    output_sensitive: true
                providers:
                  - provider_name: Impedit expedita et esse.
                    provider_source: Maiores consectetur dolore.
                    provider_version: Rerum laboriosam.
                  - provider_name: Impedit expedita et esse.
                    provider_source: Maiores consectetur dolore.
                    provider_version: Rerum laboriosam.
                  - provider_name: Impedit expedita et esse.
                    provider_source: Maiores consectetur dolore.
                    provider_version: Rerum laboriosam.
                resources:
                  - resource_name: Sed iusto consequuntur officia repellendus veniam.
                    resource_type: Rerum recusandae deserunt enim.
                  - resource_name: Sed iusto consequuntur officia repellendus veniam.
                    resource_type: Rerum recusandae deserunt enim.
                  - resource_name: Sed iusto consequuntur officia repellendus veniam.
                    resource_type: Rerum recusandae deserunt enim.
                submodule:
                  - Sit aperiam odio eum alias nostrum architecto.
                  - Vel vel sapiente quasi.
                system: Debitis ipsa culpa quod enim.
                variables:
                  - variable_default: Ipsa rerum eos quas accusamus qui.
                    variable_description: Facilis expedita.
                    variable_name: Occaecati aut quidem libero mollitia culpa.
                    variable_required: true
                    variable_sensitive: true
                    variable_type: Minima unde necessitatibus non natus animi eius.
                  - variable_default: Ipsa rerum eos quas accusamus qui.
                    variable_description: Facilis expedita.
                    variable_name: Occaecati aut quidem libero mollitia culpa.
                    variable_required: true
                    variable_sensitive: true
                    variable_type: Minima unde necessitatibus non natus animi eius.
                  - variable_default: Ipsa rerum eos quas accusamus qui.
                    variable_description: Facilis expedita.
                    variable_name: Occaecati aut quidem libero mollitia culpa.
                    variable_required: true
                    variable_sensitive: true
                    variable_type: Minima unde necessitatibus non natus animi eius.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{module_id}/readme:
    get:
      tags:
        - module-registry
      summary: List module readme
      description: List the module readme from the module registry
      operationId: module-registry#list-readme-by-id
      parameters:
        - name: version
          in: query
          description: version of the module
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: version of the module
            example: Quisquam velit.
          example: Eveniet reiciendis.
        - name: submodule
          in: query
          description: submodule name
          allowEmptyValue: true
          schema:
            type: string
            description: submodule name
            example: Corrupti vel amet repudiandae velit esse.
          example: Et vitae natus quia cumque consequuntur ut.
        - name: module_id
          in: path
          description: module id
          required: true
          schema:
            type: string
            description: module id
            example: Quis illo iusto facere dolores ab.
          example: Ipsa amet ut corporis.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Voluptatem dolorem harum ex fugiat.
          example: Iusto ratione doloribus fugiat.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{moduleId}/events:
    post:
      tags:
        - module-registry
      summary: Send an event related with a module execution
      description: Send an event related with a module execution
      operationId: module-registry#send-module-event
      parameters:
        - name: moduleId
          in: path
          description: module id associated with this event
          required: true
          schema:
            type: string
            description: module id associated with this event
            example: '146'
            minLength: 1
            maxLength: 1024
          example: e3
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendModuleEventRequest'
            example:
              account: v
              eventType: Sunt molestiae ipsa culpa aspernatur vero.
              metadata:
                pipeline: Quod molestiae a quia vel.
                pipeline_execution_id: Modi voluptatibus.
                pipeline_execution_number: Accusantium unde perspiciatis occaecati dolor.
                pipeline_name: Eum sed.
                pipeline_stage_id: Fuga sed illum quo quasi exercitationem nam.
                trigger:
                  Ipsam necessitatibus ipsum voluptate.: Consequuntur deleniti.
              org: 4wi
              project: '0'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{moduleId}/executions:
    get:
      tags:
        - module-registry
      summary: List executions for a specific module
      description: List all module executions for a module.
      operationId: module-registry#list-module-executions-id
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: pipeline_execution_id
          in: query
          description: Pipeline identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline identifier
            example: Est soluta laborum.
          example: Vel dignissimos vero minima et.
        - name: status
          in: query
          description: Status of the execution
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Culpa qui est mollitia quidem et.
            description: Status of the execution
            example:
              - Aut ipsa veniam doloribus aut.
              - Tempore voluptatem aut dolorem.
          example:
            - Labore est adipisci est sit ipsam expedita.
            - Dolor nisi et.
            - Vel quasi.
            - Dicta eligendi minima eaque.
        - name: start_time
          in: query
          description: Specify the start time for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the start time for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: end_time
          in: query
          description: Specify the end time limit for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the end time limit for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: moduleId
          in: path
          description: Module identifier
          required: true
          schema:
            type: string
            description: Module identifier
            example: Cupiditate omnis.
          example: Aut repellendus.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: q8
            minLength: 1
            maxLength: 128
          example: mg
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModuleExecutionResourceCollection'
              example:
                - account: k
                  created: 1357042483503731200
                  metadata:
                    pipeline: >-
                      Illo dolor architecto repellendus excepturi accusamus
                      saepe.
                    pipeline_execution_id: Aut voluptas aut voluptatem eaque.
                    pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
                    pipeline_name: Occaecati unde sapiente est.
                    pipeline_stage_id: >-
                      Voluptatem aspernatur necessitatibus commodi rem
                      laboriosam sit.
                    trigger:
                      Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
                      Velit et odio nam.: Ipsam sed et.
                  moduleId: Quas eius occaecati consectetur.
                  org: k
                  project: 0h9
                  status: Expedita quaerat consequatur quibusdam aut.
                - account: k
                  created: 1357042483503731200
                  metadata:
                    pipeline: >-
                      Illo dolor architecto repellendus excepturi accusamus
                      saepe.
                    pipeline_execution_id: Aut voluptas aut voluptatem eaque.
                    pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
                    pipeline_name: Occaecati unde sapiente est.
                    pipeline_stage_id: >-
                      Voluptatem aspernatur necessitatibus commodi rem
                      laboriosam sit.
                    trigger:
                      Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
                      Velit et odio nam.: Ipsam sed et.
                  moduleId: Quas eius occaecati consectetur.
                  org: k
                  project: 0h9
                  status: Expedita quaerat consequatur quibusdam aut.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - module-registry
      summary: Create a new module execution
      description: Create a new module execution.
      operationId: module-registry#create-module-execution
      parameters:
        - name: moduleId
          in: path
          description: The unique identifier for the associated module
          required: true
          schema:
            type: string
            description: The unique identifier for the associated module
            example: Non in distinctio laudantium corporis.
          example: Modi soluta.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateModuleExecutionRequest'
            example:
              account: qd
              org: d32
              pipeline: Facilis optio sed in error voluptate sint.
              pipelineExecutionId: Nulla qui eveniet voluptate sunt nostrum asperiores.
              pipelineStageId: Dolor est.
              project: 'y'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateModuleExecutionResponse'
              example:
                account: '0'
                created: 4512793469706158600
                metadata:
                  pipeline: Facilis laboriosam debitis ad explicabo.
                  pipeline_execution_id: >-
                    Reprehenderit nobis aperiam dolorem dolorum reprehenderit
                    nisi.
                  pipeline_execution_number: Repellendus delectus quo.
                  pipeline_name: Autem necessitatibus inventore corrupti sequi.
                  pipeline_stage_id: Quasi et.
                  trigger:
                    Asperiores magnam omnis inventore numquam minima repellendus.: Molestiae expedita.
                    Enim ad dolor quam sit maiores.: Ut ea.
                    Mollitia et et.: Eaque iste necessitatibus officia ipsum id.
                moduleId: Voluptatum iste officiis.
                org: os
                project: yca
                status: Enim nihil quod.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{name}/{system}/{version}/metadata:
    post:
      tags:
        - module-registry
      summary: Create module data
      description: Create a new module in the module registry
      operationId: module-registry#module-parsed-data
      parameters:
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: Voluptatem qui nemo est.
          example: Quia pariatur.
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: Ut eaque fugit temporibus dicta vel.
          example: Soluta enim pariatur.
        - name: version
          in: path
          description: version of the module
          required: true
          schema:
            type: string
            description: version of the module
            example: Voluptas beatae.
          example: Exercitationem dolorum vel exercitationem quasi omnis ipsa.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Quaerat animi eos.
          example: Cum est aut iste cum nulla nihil.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateModuleDataRequest'
            example:
              download_url: Et quo possimus nostrum quisquam facilis.
              error:
                Impedit reiciendis similique cumque magnam adipisci.: Sed quod magni.
                Suscipit repudiandae.: Et labore fugiat possimus aliquam voluptatem.
              examples_paths:
                - Sapiente delectus ut et.
                - Ut placeat voluptatem.
              git_tag: Velit dignissimos dolor exercitationem et.
              metadata: Eum dolore quae qui voluptatem nesciunt.
              repo_url: Doloremque quia aperiam quis et et sed.
              submodule_name: Quaerat reprehenderit sint necessitatibus rem.
              submodule_paths:
                - Ut ut sit consequuntur velit.
                - Natus et quia quia dolorem qui rerum.
                - Nostrum deleniti a labore qui reprehenderit vitae.
                - Ut animi dolor maxime aut quas.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{name}/{system}/{version}/readme:
    post:
      tags:
        - module-registry
      summary: Create module readme
      description: Endpoint to push the Readme for a given module
      operationId: module-registry#post-module-readme
      parameters:
        - name: submoduleName
          in: query
          description: submodule name
          allowEmptyValue: true
          schema:
            type: string
            description: submodule name
            example: Dolor in.
          example: Autem eius est.
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: Recusandae porro dolores voluptas quis.
          example: Ut dolor laudantium inventore rem.
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: Est consequatur ea mollitia.
          example: Quidem omnis totam omnis ipsa odit.
        - name: version
          in: path
          description: version of the module
          required: true
          schema:
            type: string
            description: version of the module
            example: Voluptatum culpa libero ex quo.
          example: Voluptate distinctio maiores magnam veniam sint et.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: Et dolore.
          example: Odit corrupti quod iure.
        - name: Content-Length
          in: header
          description: Size in bytes of the readme
          allowEmptyValue: true
          schema:
            type: integer
            description: Size in bytes of the readme
            example: 2407295593155265500
            format: int64
          example: 7745978835116983000
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{name}/{system}/{version}/upload:
    post:
      tags:
        - module-registry
      summary: Upload module artifact files
      description: Upload module artifact to the module registry
      operationId: module-registry#post-module-artifact
      parameters:
        - name: name
          in: path
          description: Module artifact name
          required: true
          schema:
            type: string
            description: Module artifact name
            example: Veniam beatae officia corrupti in veniam qui.
          example: Aut quas qui et aspernatur quisquam consequatur.
        - name: system
          in: path
          description: Module artifact system
          required: true
          schema:
            type: string
            description: Module artifact system
            example: Sit nam voluptas.
          example: Voluptatem magnam quisquam maxime veritatis ducimus.
        - name: version
          in: path
          description: version of the module
          required: true
          schema:
            type: string
            description: version of the module
            example: Expedita numquam.
          example: Dolores cumque libero vel odit hic minus.
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
        - name: Content-Disposition
          in: header
          description: Content-Disposition header
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Content-Disposition header
            example: Molestiae est inventore velit quae.
          example: Officiis aut perferendis in qui nobis.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/{name}/{system}/tags:
    post:
      tags:
        - module-registry
      summary: Create module tags
      description: List all tags for a given module
      operationId: module-registry#post-module-tags
      parameters:
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: cb
            minLength: 1
            maxLength: 128
          example: 7yt
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: l
            pattern: ^[a-z]+$
            minLength: 1
            maxLength: 128
          example: i
        - name: Harness-Account
          in: header
          description: account that owns the module
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account that owns the module
            example: c
            minLength: 1
            maxLength: 128
          example: zps
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateModuleTagsRequest'
            example:
              error:
                Ut pariatur adipisci veniam et enim voluptate.: Atque similique atque tempore porro error veritatis.
                Voluptate suscipit neque aliquid quam voluptas.: Voluptas neque.
              tags:
                - Et dolorem voluptas quisquam adipisci maxime.
                - Ut nihil soluta commodi vero.
                - Suscipit labore error consequatur.
                - Veritatis voluptatem doloribus corrupti et amet.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/modules/connectors:
    get:
      tags:
        - module-registry
      summary: List connectors
      description: List all connectors from the module registry for a specific account
      operationId: module-registry#list-connectors
      parameters:
        - name: org
          in: query
          description: organization name
          allowEmptyValue: true
          schema:
            type: string
            description: organization name
            example: Quis non aut est.
          example: Qui ratione repellendus omnis.
        - name: project
          in: query
          description: project name
          allowEmptyValue: true
          schema:
            type: string
            description: project name
            example: Odit at et natus consectetur.
          example: Consequatur quae fugiat quis delectus aut facere.
        - name: Harness-Account
          in: header
          description: account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: account name
            example: A sapiente aut quo corrupti et.
          example: Minima et aut itaque porro dignissimos ea.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Animi rerum sint.
                example:
                  - Debitis ea ut quia facere.
                  - Earum asperiores quidem deserunt tempore vel rem.
                  - Dolorum sint aut laudantium.
                  - A ipsam nulla molestiae.
              example:
                - Quia temporibus sint eaque deleniti rem.
                - Nihil repellendus recusandae sapiente non recusandae.
                - Dicta iure rerum ducimus.
                - Esse necessitatibus eos architecto fuga.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/activities:
    get:
      tags:
        - activities
      summary: List activities
      description: List all activities
      operationId: activities#list-activities
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: workspace
          in: query
          description: Workspace identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Workspace identifier
            example: Aut et.
          example: Deserunt consequatur molestiae eaque.
        - name: pipeline
          in: query
          description: Pipeline filter
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline filter
            example: Eum quia est et ea dolorem quidem.
          example: Occaecati quaerat nemo.
        - name: pipeline_execution_id
          in: query
          description: Pipeline execution filter
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline execution filter
            example: Non deleniti consequatur et fuga ut nulla.
          example: Velit iure labore enim quam laboriosam.
        - name: pipeline_stage_id
          in: query
          description: Pipeline stage filter
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline stage filter
            example: Earum animi qui veniam consequatur qui et.
          example: Quia est assumenda vitae.
        - name: activity_type
          in: query
          description: Activity type filter
          allowEmptyValue: true
          schema:
            type: string
            description: Activity type filter
            example: Explicabo repudiandae explicabo id.
          example: Omnis voluptates beatae.
        - name: activity_status
          in: query
          description: Activity status filter
          allowEmptyValue: true
          schema:
            type: string
            description: Activity status filter
            example: Dolores vitae delectus minus qui.
          example: Praesentium fugit nisi suscipit velit adipisci voluptatem.
        - name: start_time
          in: query
          description: Start time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: Start time filter (Unix timestamp)
            example: 1924990392329452000
            format: int64
          example: 8281800440425609000
        - name: end_time
          in: query
          description: End time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: End time filter (Unix timestamp)
            example: 8144109870364078000
            format: int64
          example: 2126223915165473000
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: b1
            minLength: 1
            maxLength: 128
          example: wbz
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 5kg
            minLength: 1
            maxLength: 128
          example: 3z
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: yo5
            minLength: 1
            maxLength: 128
          example: a6f
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActivityResourceCollection'
              example:
                - account: w1
                  created: 3526501583219228000
                  id: Non ut velit alias quia et dolores.
                  metadata:
                    PlannedChangesCount: 6714032458437038000
                    activity_status: success
                    activity_type: plan
                    cost_breakdown_uuid: Itaque quaerat voluptatum.
                    cost_currency: Explicabo explicabo quaerat natus dolores.
                    cost_diff_total_monthly: Cum ut.
                    cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
                    cost_past_total_monthly: Provident et error molestiae.
                    cost_total_monthly: Aut aut eveniet est aliquam alias sint.
                    cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
                    drift_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    enable_solutions_factory: false
                    git_branch: Provident dolor cum.
                    git_commit_message: Voluptatem vel doloremque aut.
                    git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
                    git_repo: Provident nostrum soluta deserunt qui magnam.
                    modules_uuid: Asperiores quo.
                    output_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    pipeline: Consequatur sunt voluptatum.
                    pipeline_execution_id: Suscipit excepturi.
                    pipeline_execution_number: Dolor suscipit aliquam.
                    pipeline_name: Enim nisi voluptatem quasi.
                    pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
                    plan_uuid: Provident sapiente voluptatibus doloremque.
                    providers_uuid: Quaerat tempore quod ducimus.
                    provisioner: Modi optio laborum expedita est.
                    provisioner_version: Molestias esse eum.
                    resource_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    state_checksum: Ea odit suscipit tenetur perferendis mollitia.
                    state_uuid: Quo magni maxime aliquam excepturi quasi.
                    trigger:
                      A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
                      Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
                  org: usr
                  project: glx
                  workspace: Accusamus ut harum.
                - account: w1
                  created: 3526501583219228000
                  id: Non ut velit alias quia et dolores.
                  metadata:
                    PlannedChangesCount: 6714032458437038000
                    activity_status: success
                    activity_type: plan
                    cost_breakdown_uuid: Itaque quaerat voluptatum.
                    cost_currency: Explicabo explicabo quaerat natus dolores.
                    cost_diff_total_monthly: Cum ut.
                    cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
                    cost_past_total_monthly: Provident et error molestiae.
                    cost_total_monthly: Aut aut eveniet est aliquam alias sint.
                    cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
                    drift_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    enable_solutions_factory: false
                    git_branch: Provident dolor cum.
                    git_commit_message: Voluptatem vel doloremque aut.
                    git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
                    git_repo: Provident nostrum soluta deserunt qui magnam.
                    modules_uuid: Asperiores quo.
                    output_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    pipeline: Consequatur sunt voluptatum.
                    pipeline_execution_id: Suscipit excepturi.
                    pipeline_execution_number: Dolor suscipit aliquam.
                    pipeline_name: Enim nisi voluptatem quasi.
                    pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
                    plan_uuid: Provident sapiente voluptatibus doloremque.
                    providers_uuid: Quaerat tempore quod ducimus.
                    provisioner: Modi optio laborum expedita est.
                    provisioner_version: Molestias esse eum.
                    resource_counts:
                      added: 7449910667089618000
                      changed: 148315669190400480
                      deleted: 5683600417193213000
                      imported: 3265651565371067000
                      removed: 1371487732313499000
                      unchanged: 4655105961323145000
                    state_checksum: Ea odit suscipit tenetur perferendis mollitia.
                    state_uuid: Quo magni maxime aliquam excepturi quasi.
                    trigger:
                      A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
                      Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
                  org: usr
                  project: glx
                  workspace: Accusamus ut harum.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/activities/{id}/resource-changes:
    get:
      tags:
        - activities
      summary: List resource changes
      description: List resource changes associated with this activity
      operationId: activities#list-activity-resource-changes
      parameters:
        - name: workspace
          in: query
          description: The unique identifier for the associated workspace
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: The unique identifier for the associated workspace
            example: Consequatur pariatur dolorem sapiente maiores incidunt.
          example: Rem in et deleniti autem doloribus occaecati.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: f4l
            minLength: 1
            maxLength: 128
          example: 6x
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 4dd
            minLength: 1
            maxLength: 128
          example: t
        - name: id
          in: path
          description: The unique identifier for this activity
          required: true
          schema:
            type: string
            description: The unique identifier for this activity
            example: Adipisci suscipit et dolores et sed repudiandae.
          example: Natus officia officia ex dolorem voluptatem qui.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 6n
            minLength: 1
            maxLength: 128
          example: m6
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListActivityResourceChangesResponse'
              example:
                data_sources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                drift_changes:
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                outputs:
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                pipeline_execution: At sequi consequatur.
                pipeline_stage: Eum ipsum non nemo.
                planned_changes:
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                resources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                stage_id: Et sit.
                workspace_id: Nobis aut ab dolorem.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/activities:
    get:
      tags:
        - ansible
      summary: List Ansible Activities
      description: List all activities.
      operationId: ansible#list-ansible-activities
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: created,DESC
            example: created,DESC
            enum:
              - created,ASC
              - created,DESC
          example: created,DESC
        - name: InventorySearchTerm
          in: query
          description: Search term to filter by inventory identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Search term to filter by inventory identifier
            example: inventory_1
          example: inventory_1
        - name: PlaybookSearchTerm
          in: query
          description: Search term to filter by playbook identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Search term to filter by playbook identifier
            example: playbook_1
          example: playbook_1
        - name: activity_type
          in: query
          description: Activity type filter
          allowEmptyValue: true
          schema:
            type: string
            description: Activity type filter
            example: Occaecati adipisci sunt pariatur laudantium ex.
          example: Ut excepturi.
        - name: status
          in: query
          description: Activity status filter
          allowEmptyValue: true
          schema:
            type: string
            description: Activity status filter
            example: Dolor expedita delectus.
          example: Qui dolor quibusdam.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: he
            minLength: 1
            maxLength: 128
          example: p
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: iy
            minLength: 1
            maxLength: 128
          example: nb3
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '79'
            minLength: 1
            maxLength: 128
          example: az3
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnsibleActivityResourceCollection'
              example:
                - account: '9'
                  created: 1627590400
                  event_type: activity-execution
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  metadata:
                    activity_status: Perferendis dolore laboriosam.
                    git_branch: Et non dolorem cumque asperiores quo ad.
                    git_commit_message: Repudiandae quos dignissimos et placeat.
                    git_commit_sha: Et dolorem.
                    git_repo: Et incidunt quis non ut natus deleniti.
                    pipeline: Laborum ea non ab.
                    pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
                    pipeline_execution_number: Qui et vel consequatur sequi minima.
                    pipeline_name: Molestiae blanditiis corrupti.
                    pipeline_stage_id: Unde porro nihil magni.
                    results_uuid: Quis laborum aut est rerum quia.
                    trigger:
                      Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
                      Sed ea ad corporis in.: Nobis suscipit.
                      Vel quae.: Eum eos amet eligendi accusamus.
                  org: j9h
                  playbooks:
                    - init_webservers
                  project: hje
                - account: '9'
                  created: 1627590400
                  event_type: activity-execution
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  metadata:
                    activity_status: Perferendis dolore laboriosam.
                    git_branch: Et non dolorem cumque asperiores quo ad.
                    git_commit_message: Repudiandae quos dignissimos et placeat.
                    git_commit_sha: Et dolorem.
                    git_repo: Et incidunt quis non ut natus deleniti.
                    pipeline: Laborum ea non ab.
                    pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
                    pipeline_execution_number: Qui et vel consequatur sequi minima.
                    pipeline_name: Molestiae blanditiis corrupti.
                    pipeline_stage_id: Unde porro nihil magni.
                    results_uuid: Quis laborum aut est rerum quia.
                    trigger:
                      Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
                      Sed ea ad corporis in.: Nobis suscipit.
                      Vel quae.: Eum eos amet eligendi accusamus.
                  org: j9h
                  playbooks:
                    - init_webservers
                  project: hje
                - account: '9'
                  created: 1627590400
                  event_type: activity-execution
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  metadata:
                    activity_status: Perferendis dolore laboriosam.
                    git_branch: Et non dolorem cumque asperiores quo ad.
                    git_commit_message: Repudiandae quos dignissimos et placeat.
                    git_commit_sha: Et dolorem.
                    git_repo: Et incidunt quis non ut natus deleniti.
                    pipeline: Laborum ea non ab.
                    pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
                    pipeline_execution_number: Qui et vel consequatur sequi minima.
                    pipeline_name: Molestiae blanditiis corrupti.
                    pipeline_stage_id: Unde porro nihil magni.
                    results_uuid: Quis laborum aut est rerum quia.
                    trigger:
                      Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
                      Sed ea ad corporis in.: Nobis suscipit.
                      Vel quae.: Eum eos amet eligendi accusamus.
                  org: j9h
                  playbooks:
                    - init_webservers
                  project: hje
                - account: '9'
                  created: 1627590400
                  event_type: activity-execution
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  metadata:
                    activity_status: Perferendis dolore laboriosam.
                    git_branch: Et non dolorem cumque asperiores quo ad.
                    git_commit_message: Repudiandae quos dignissimos et placeat.
                    git_commit_sha: Et dolorem.
                    git_repo: Et incidunt quis non ut natus deleniti.
                    pipeline: Laborum ea non ab.
                    pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
                    pipeline_execution_number: Qui et vel consequatur sequi minima.
                    pipeline_name: Molestiae blanditiis corrupti.
                    pipeline_stage_id: Unde porro nihil magni.
                    results_uuid: Quis laborum aut est rerum quia.
                    trigger:
                      Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
                      Sed ea ad corporis in.: Nobis suscipit.
                      Vel quae.: Eum eos amet eligendi accusamus.
                  org: j9h
                  playbooks:
                    - init_webservers
                  project: hje
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/activities/{id}:
    get:
      tags:
        - ansible
      summary: Show ansible activity
      description: Show an individual ansible activity.
      operationId: ansible#show-ansible-activity
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: h9
            minLength: 1
            maxLength: 128
          example: hc
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: pn
            minLength: 1
            maxLength: 128
          example: 'n'
        - name: id
          in: path
          description: The unique ID for this activity
          required: true
          schema:
            type: string
            description: The unique ID for this activity
            example: Maxime perferendis.
          example: Et blanditiis rem aut eveniet.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: j
            minLength: 1
            maxLength: 128
          example: sg
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowAnsibleActivityResponse'
              example:
                account: srx
                created: 1627590400
                event_type: activity-execution
                id: dc538c61-de48-4220-958c-5f3c4f983daa
                inventories:
                  - webservers_europe
                metadata:
                  activity_status: Animi aspernatur voluptatem minus.
                  git_branch: Et quisquam odio consequatur consectetur non.
                  git_commit_message: Qui ad illo.
                  git_commit_sha: Et et tempora commodi eius vero fugiat.
                  git_repo: Deserunt suscipit praesentium nesciunt tempore facilis.
                  pipeline: Veniam et quod.
                  pipeline_execution_id: Ratione eum.
                  pipeline_execution_number: Facilis ut omnis vitae.
                  pipeline_name: Ipsam omnis earum deserunt aut vel.
                  pipeline_stage_id: Necessitatibus cum.
                  results_uuid: Aperiam dolores consequuntur ad fugit.
                  trigger:
                    Architecto delectus et excepturi adipisci temporibus.: Nisi nobis ut id quis laboriosam.
                    Consequatur et dicta aut sapiente voluptatem.: Qui atque quibusdam eos blanditiis.
                    Saepe fuga quibusdam.: Architecto sit sunt sint officia sit.
                org: yi
                playbooks:
                  - init_webservers
                project: b4h
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/data:
    get:
      tags:
        - ansible
      summary: List data
      description: List all stored data for a inventory or playbook.
      operationId: ansible#list-data
      parameters:
        - name: inventory_search_term
          in: query
          description: Inventory search term
          allowEmptyValue: true
          schema:
            type: string
            description: Inventory search term
            example: Cum quibusdam fugiat itaque a quod.
          example: Rerum tenetur ullam.
        - name: playbook_search_term
          in: query
          description: Playbook search term
          allowEmptyValue: true
          schema:
            type: string
            description: Playbook search term
            example: Exercitationem velit.
          example: Blanditiis consequuntur est.
        - name: pipeline_execution_id
          in: query
          description: Filter by pipeline execution ID
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by pipeline execution ID
            example: Maiores ut vitae ratione quo est natus.
          example: Eum quia sed eaque.
        - name: pipeline_stage_id
          in: query
          description: Filter by pipeline execution stage ID
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by pipeline execution stage ID
            example: Aut quo.
          example: Dolor vitae quo.
        - name: data_type
          in: query
          description: Filter by data type
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by data type
            example: Dolores atque quia perferendis.
          example: Voluptates necessitatibus odio sit minus.
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '2'
            minLength: 1
            maxLength: 128
          example: h9u
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: ud
            minLength: 1
            maxLength: 128
          example: m64
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ln
            minLength: 1
            maxLength: 128
          example: t1
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnsibleDataResourceCollection'
              example:
                - account: x67
                  created: 7560972987616249000
                  data_type: task_results
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  org: '2'
                  pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
                  pipeline_id: Doloremque ea.
                  pipeline_stage_id: Sit quo.
                  playbooks:
                    - init_webservers
                  project: 0f
                  stage_id: Quia quo.
                - account: x67
                  created: 7560972987616249000
                  data_type: task_results
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  inventories:
                    - webservers_europe
                  org: '2'
                  pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
                  pipeline_id: Doloremque ea.
                  pipeline_stage_id: Sit quo.
                  playbooks:
                    - init_webservers
                  project: 0f
                  stage_id: Quia quo.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create data
      description: Store binary data generated by ansible.
      operationId: ansible#create-data
      parameters:
        - name: pipeline_id
          in: query
          description: The unique identifier for the associated pipeline
          allowEmptyValue: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline
            example: Sunt mollitia placeat consectetur non distinctio culpa.
          example: Quidem consequatur facere dolores.
        - name: stage_id
          in: query
          description: The unique identifier for a stage
          allowEmptyValue: true
          schema:
            type: string
            description: The unique identifier for a stage
            example: Fugiat officiis sunt ullam.
          example: Assumenda quod.
        - name: pipeline_execution_id
          in: query
          description: The unique identifier for the associated pipeline execution
          allowEmptyValue: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline execution
            example: Provident provident quas vel quos eum est.
          example: Assumenda praesentium error sunt cupiditate.
        - name: pipeline_stage_id
          in: query
          description: The unique identifier for the associated pipeline execution stage
          allowEmptyValue: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline execution stage
            example: Tempora facere cum.
          example: Sint eos quis quis et nobis.
        - name: data_type
          in: query
          description: Type of data stored
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Type of data stored
            example: task_results
            enum:
              - task_results
          example: task_results
        - name: inventories
          in: query
          description: Inventories associated with this event
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Inventories associated with this event
            example:
              - webservers_europe
          example:
            - webservers_europe
        - name: playbooks
          in: query
          description: Playbooks associated with this event
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Playbooks associated with this event
            example:
              - init_webservers
          example:
            - init_webservers
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: nt2
            minLength: 1
            maxLength: 128
          example: sq9
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: d44
            minLength: 1
            maxLength: 128
          example: i9
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: tq8
            minLength: 1
            maxLength: 128
          example: '7'
        - name: Content-Length
          in: header
          description: Size in bytes of the data.
          allowEmptyValue: true
          schema:
            type: integer
            description: Size in bytes of the data.
            example: 1773619389220495400
            format: int64
          example: 5551642590783628000
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateAnsibleDataResponse'
              example:
                id: dc538c61-de48-4220-958c-5f3c4f983daa
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/data/{id}:
    get:
      tags:
        - ansible
      summary: Show data
      description: >-
        Get binary data generated by the provisioner, such as plans and state
        files.
      operationId: ansible#show-data
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: h
            minLength: 1
            maxLength: 128
          example: uw
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: q
            minLength: 1
            maxLength: 128
          example: q1
        - name: id
          in: path
          description: The unique identifier for the data
          required: true
          schema:
            type: string
            description: The unique identifier for the data
            example: dc538c61-de48-4220-958c-5f3c4f983daa
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 1cu
            minLength: 1
            maxLength: 128
          example: ont
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/events:
    post:
      tags:
        - ansible
      summary: Send event
      operationId: ansible#send-ansible-event
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: a
            minLength: 1
            maxLength: 128
          example: '2'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: o
            minLength: 1
            maxLength: 128
          example: s
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 0q3
            minLength: 1
            maxLength: 128
          example: lqh
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendAnsibleEventRequest'
            example:
              event_type: activity-execution
              inventories:
                - webservers_europe
              metadata:
                activity_status: Minima autem error.
                git_branch: Quam repellat iure alias voluptatem illum delectus.
                git_commit_message: Optio molestias suscipit est non voluptas.
                git_commit_sha: Consequuntur est.
                git_repo: In accusantium sunt.
                pipeline: Aut culpa temporibus optio corporis nobis.
                pipeline_execution_id: Magnam ab.
                pipeline_execution_number: Odit ad nobis officia et.
                pipeline_name: Et sint fugiat ad fugit doloremque.
                pipeline_stage_id: A eaque possimus sint quos maxime.
                results_uuid: Explicabo odit harum mollitia sint et maiores.
                trigger:
                  Aut fugit ut.: Porro enim molestiae laborum molestiae vero.
                  Consectetur perferendis ipsa fugiat distinctio.: Ut dolor tempore.
                  Voluptas incidunt aut in et nostrum corrupti.: Fugit perspiciatis nostrum.
              playbooks:
                - init_webservers
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory:
    get:
      tags:
        - ansible
      summary: List Ansible inventory
      description: List all inventories.
      operationId: ansible#list-inventory
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mysta
          example: mysta
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: updated,DESC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: name,ASC
        - name: includeDetails
          in: query
          description: Include inventory details
          allowEmptyValue: true
          schema:
            type: boolean
            description: Include inventory details
            default: false
            example: true
          example: true
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: s1
            minLength: 1
            maxLength: 128
          example: ck
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: t
            minLength: 1
            maxLength: 128
          example: frd
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: q5
            minLength: 1
            maxLength: 128
          example: x0
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryDetailResourceCollection'
              example:
                - account: a2
                  created: 1627590400
                  data: >-
                    { "hosts": { "host1.example.com": null, "host2.example.com":
                    null }}
                  identifier: test_inventory
                  name: test inventory
                  org: k
                  project: i0
                  type: dynamic
                  updated: 1627686800
                - account: a2
                  created: 1627590400
                  data: >-
                    { "hosts": { "host1.example.com": null, "host2.example.com":
                    null }}
                  identifier: test_inventory
                  name: test inventory
                  org: k
                  project: i0
                  type: dynamic
                  updated: 1627686800
                - account: a2
                  created: 1627590400
                  data: >-
                    { "hosts": { "host1.example.com": null, "host2.example.com":
                    null }}
                  identifier: test_inventory
                  name: test inventory
                  org: k
                  project: i0
                  type: dynamic
                  updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create Ansible inventory
      description: Create a new inventory.
      operationId: ansible#create-inventory
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: r
            minLength: 1
            maxLength: 128
          example: f
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: e23
            minLength: 1
            maxLength: 128
          example: '3'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 8h0
            minLength: 1
            maxLength: 128
          example: noy
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInventoryRequest'
            example:
              dynamic_groups:
                - configuration:
                    host_address_attribute: <+attributes.public_dns>
                    include_conditions:
                      - attribute: tag.environment
                        operator: equals
                        value: prod
                    resource_type: aws_instance
                  connector_identifier: my-workspace
                  connector_type: workspace
              groups:
                - hosts:
                    - host1.example.com: null
                  name: my-group
              identifier: test_inventory
              name: test inventory
              type: manual
              vars:
                - name: my-var
                  value: my-value
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateInventoryResponse'
              example:
                account: pr
                created: 1627590400
                identifier: test_inventory
                name: test inventory
                org: '9'
                project: xz
                type: dynamic
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}:
    delete:
      tags:
        - ansible
      summary: Delete Ansible inventory
      description: Delete an existing inventory.
      operationId: ansible#delete-inventory
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: s
            minLength: 1
            maxLength: 128
          example: or1
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: dwx
            minLength: 1
            maxLength: 128
          example: q2
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: Voluptatum eum quo voluptatibus veritatis.
          example: Laborum quasi.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: b
            minLength: 1
            maxLength: 128
          example: l7
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - ansible
      summary: Show Ansible inventory
      description: Show an individual inventory.
      operationId: ansible#show-inventory
      parameters:
        - name: useArrays
          in: query
          description: Use arrays when displaying inventory data
          allowEmptyValue: true
          schema:
            type: boolean
            description: Use arrays when displaying inventory data
            default: false
            example: true
          example: false
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: al9
            minLength: 1
            maxLength: 128
          example: 9qz
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: w
            minLength: 1
            maxLength: 128
          example: w9
        - name: identifier
          in: path
          description: Inventory identifier
          required: true
          schema:
            type: string
            description: Inventory identifier
            example: Aliquid vero recusandae.
          example: Omnis ipsa.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: h
            minLength: 1
            maxLength: 128
          example: t
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInventoryResponse'
              example:
                account: 6lp
                created: 1627590400
                data: >-
                  { "hosts": { "host1.example.com": null, "host2.example.com":
                  null }}
                identifier: test_inventory
                name: test inventory
                org: bk8
                project: x0
                type: manual
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible inventory
      description: Update an existing inventory.
      operationId: ansible#update-inventory
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ad
            minLength: 1
            maxLength: 128
          example: 19z
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '2'
            minLength: 1
            maxLength: 128
          example: '4'
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: p
            minLength: 1
            maxLength: 128
          example: qi
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInventoryRequest'
            example:
              data: >-
                { "hosts": { "host1.example.com": null, "host2.example.com":
                null }}
              name: test inventory
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}/ansible:
    get:
      tags:
        - ansible
      summary: Show Ansible inventory as ansible compatible YAML
      description: Show an individual inventory as YAML.
      operationId: ansible#show-inventory-as-ansible
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: l0
            minLength: 1
            maxLength: 128
          example: 1u
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: l1v
            minLength: 1
            maxLength: 128
          example: 0bv
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: Alias aut ad laboriosam quos.
          example: Fuga dignissimos eos.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 6vd
            minLength: 1
            maxLength: 128
          example: qq
      responses:
        '200':
          description: OK response.
          content:
            application/yaml:
              schema:
                type: object
                example:
                  Aut natus molestias fuga excepturi.: Itaque quo quas.
                  Voluptatem veniam.: Quas adipisci eum sapiente.
                additionalProperties: true
              example:
                Et dolore dolorem veritatis a.: Quod voluptatum fuga facere ut.
                Quia est aut omnis deserunt.: Ut earum cumque sunt a.
                Repudiandae veniam quos velit.: Voluptatum temporibus recusandae.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}/groups:
    get:
      tags:
        - ansible
      summary: Show Ansible inventory groups
      description: Show an individual inventory's groups.
      operationId: ansible#show-inventory-groups
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: z3
            minLength: 1
            maxLength: 128
          example: q4
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 1mc
            minLength: 1
            maxLength: 128
          example: f
        - name: identifier
          in: path
          description: Inventory identifier
          required: true
          schema:
            type: string
            description: Inventory identifier
            example: Hic ut.
          example: Molestias aut omnis minima rerum et.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 8s2
            minLength: 1
            maxLength: 128
          example: zuw
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInventoryGroupsResponse'
              example:
                groups:
                  - Aut alias qui consectetur.
                  - Et qui fugiat.
                  - Ea quia iste nobis.
                  - Eligendi mollitia voluptas odio ipsam laborum quisquam.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}/hosts:
    get:
      tags:
        - ansible
      summary: Show Ansible inventory hosts
      description: Show an individual inventory hosts.
      operationId: ansible#show-inventory-hosts
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: group
          in: query
          description: Filter results by group
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by group
            default: ''
            example: Repudiandae id repudiandae temporibus impedit.
          example: Dolores voluptatibus velit commodi qui et officiis.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '14'
            minLength: 1
            maxLength: 128
          example: fhq
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: hv
            minLength: 1
            maxLength: 128
          example: wge
        - name: identifier
          in: path
          description: Inventory identifier
          required: true
          schema:
            type: string
            description: Inventory identifier
            example: Nemo quod tenetur et aspernatur est et.
          example: Praesentium dolorem porro.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: wd
            minLength: 1
            maxLength: 128
          example: 5d5
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInventoryHostsResponse'
              example:
                hosts:
                  - created: Molestiae animi nisi et occaecati quis voluptate.
                    groups:
                      - Eos vitae nam.
                      - Tenetur laudantium minima.
                      - Consequatur atque eum tempora distinctio dolores.
                      - Velit et nihil sequi provident quam.
                    host_address: host1.example.com
                    updated: Ad sed nesciunt quos tempore sunt.
                    vars:
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                  - created: Molestiae animi nisi et occaecati quis voluptate.
                    groups:
                      - Eos vitae nam.
                      - Tenetur laudantium minima.
                      - Consequatur atque eum tempora distinctio dolores.
                      - Velit et nihil sequi provident quam.
                    host_address: host1.example.com
                    updated: Ad sed nesciunt quos tempore sunt.
                    vars:
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                  - created: Molestiae animi nisi et occaecati quis voluptate.
                    groups:
                      - Eos vitae nam.
                      - Tenetur laudantium minima.
                      - Consequatur atque eum tempora distinctio dolores.
                      - Velit et nihil sequi provident quam.
                    host_address: host1.example.com
                    updated: Ad sed nesciunt quos tempore sunt.
                    vars:
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
                      - file_name: Nobis ut deserunt enim.
                        key: z
                        uuid: 123e4567-e89b-12d3-a456-426655440000
                        value: Non velit aut odio.
                        value_type: Doloremque voluptas sit nihil.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create Ansible inventory host
      description: Create a new inventory host.
      operationId: ansible#create-inventory-host
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: p
            minLength: 1
            maxLength: 128
          example: rr
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '0'
            minLength: 1
            maxLength: 128
          example: e
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: c
            minLength: 1
            maxLength: 128
          example: 'y'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInventoryHostRequest'
            example:
              groups:
                - Ipsum numquam aliquid voluptatem exercitationem modi quia.
                - Nulla sequi ipsum laboriosam totam iusto.
              host_address: host1.example.com
              vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}/vars:
    delete:
      tags:
        - ansible
      summary: Delete Ansible inventory variables
      description: Delete inventory variables.
      operationId: ansible#delete-inventory-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 0r
            minLength: 1
            maxLength: 128
          example: b
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: pzn
            minLength: 1
            maxLength: 128
          example: u
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: k
            minLength: 1
            maxLength: 128
          example: oc
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteInventoryVarsRequest'
            example:
              vars:
                - Ullam iusto ipsa atque.
                - Harum aut reiciendis nemo cupiditate atque id.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - ansible
      summary: Show Ansible inventory vars
      description: Show an individual inventory vars.
      operationId: ansible#show-inventory-vars
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ue8
            minLength: 1
            maxLength: 128
          example: bzo
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 6us
            minLength: 1
            maxLength: 128
          example: vf4
        - name: identifier
          in: path
          description: Inventory identifier
          required: true
          schema:
            type: string
            description: Inventory identifier
            example: Ad qui aspernatur ipsam sed est officiis.
          example: Odit laboriosam doloribus dignissimos facere.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: h
            minLength: 1
            maxLength: 128
          example: 2qf
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowInventoryVarsResponse'
              example:
                env_vars:
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                vars:
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create Ansible inventory variables
      description: Create new inventory variables.
      operationId: ansible#create-inventory-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '98'
            minLength: 1
            maxLength: 128
          example: k7c
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: r
            minLength: 1
            maxLength: 128
          example: '69'
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 8f
            minLength: 1
            maxLength: 128
          example: j
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInventoryVarsRequest'
            example:
              env_vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
              vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible inventory variables
      description: Update existing inventory variables.
      operationId: ansible#update-inventory-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: h9x
            minLength: 1
            maxLength: 128
          example: v
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: doe
            minLength: 1
            maxLength: 128
          example: 5dt
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: il
            minLength: 1
            maxLength: 128
          example: p3
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInventoryVarsRequest'
            example:
              env_vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
              vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{identifier}/vars/{uuid}:
    delete:
      tags:
        - ansible
      summary: Delete Ansible inventory variable
      description: Delete a inventory variable.
      operationId: ansible#delete-inventory-var
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: mp3
            minLength: 1
            maxLength: 128
          example: 2w
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: b
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: uuid
          in: path
          description: UUID is the unique identifier for the secret.
          required: true
          schema:
            type: string
            description: UUID is the unique identifier for the secret.
            example: 123e4567-e89b-12d3-a456-426655440000
          example: 123e4567-e89b-12d3-a456-426655440000
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '9'
            minLength: 1
            maxLength: 128
          example: 8l
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible inventory variable
      description: Update an existing inventory variable.
      operationId: ansible#update-inventory-var
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: e
            minLength: 1
            maxLength: 128
          example: g
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 8
            minLength: 1
            maxLength: 128
          example: r
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: uuid
          in: path
          description: UUID is the unique identifier for the secret.
          required: true
          schema:
            type: string
            description: UUID is the unique identifier for the secret.
            example: 123e4567-e89b-12d3-a456-426655440000
          example: 123e4567-e89b-12d3-a456-426655440000
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: hbc
            minLength: 1
            maxLength: 128
          example: je
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInventoryVarRequest'
            example:
              file_name: Distinctio dicta cumque sapiente placeat eum.
              key: fq
              value: Quod nam consequatur sed repellendus.
              value_type: Enim quia provident.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{inventory_identifier}/groups:
    post:
      tags:
        - ansible
      summary: Create Ansible inventory group
      description: Create a new inventory group.
      operationId: ansible#create-inventory-group
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: exf
            minLength: 1
            maxLength: 128
          example: 2jx
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: zo
            minLength: 1
            maxLength: 128
          example: lhc
        - name: inventory_identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: beu
            minLength: 1
            maxLength: 128
          example: 2fl
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInventoryGroupRequest'
            example:
              configuration:
                host_address_attribute: <+attributes.public_dns>
                resource_type: aws_instance
                selectors:
                  - attribute: <+attributes.region>
                    operator: equals
                    value: europe
                  - attribute: <+attributes.region>
                    operator: equals
                    value: europe
              connector_type: workspace
              dynamic_vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
              env_vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
              hosts:
                - Sapiente rem deleniti repellat atque enim voluptas.
                - Quibusdam saepe molestias delectus doloribus.
              identifier: test_group
              vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{inventory_identifier}/groups/{identifier}:
    delete:
      tags:
        - ansible
      summary: Delete Ansible inventory group
      description: Delete an existing inventory group.
      operationId: ansible#delete-inventory-group
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: wo
            minLength: 1
            maxLength: 128
          example: a2j
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 7q
            minLength: 1
            maxLength: 128
          example: k
        - name: inventory_identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: identifier
          in: path
          description: The identifier of the group
          required: true
          schema:
            type: string
            description: The identifier of the group
            example: test_group
          example: test_group
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: orr
            minLength: 1
            maxLength: 128
          example: p4
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible inventory group
      description: Update an existing inventory group.
      operationId: ansible#update-inventory-group
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 'n'
            minLength: 1
            maxLength: 128
          example: 35w
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: b0
            minLength: 1
            maxLength: 128
          example: c2
        - name: inventory_identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: identifier
          in: path
          description: The identifier of the group
          required: true
          schema:
            type: string
            description: The identifier of the group
            example: test_group
          example: test_group
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ikp
            minLength: 1
            maxLength: 128
          example: 69r
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInventoryGroupRequest'
            example:
              configuration:
                host_address_attribute: <+attributes.public_dns>
                resource_type: aws_instance
                selectors:
                  - attribute: <+attributes.region>
                    operator: equals
                    value: europe
                  - attribute: <+attributes.region>
                    operator: equals
                    value: europe
              connector_type: workspace
              dynamic_vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
              env_vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
              hosts:
                - Sed nostrum.
                - Quaerat voluptatem et dolor.
                - Molestiae necessitatibus voluptates omnis voluptatibus ut.
              vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/inventory/{inventory_identifier}/hosts/{host_address}:
    delete:
      tags:
        - ansible
      summary: Delete Ansible inventory host
      description: Delete a inventory host.
      operationId: ansible#delete-inventory-host
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: om
            minLength: 1
            maxLength: 128
          example: doy
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: gs
            minLength: 1
            maxLength: 128
          example: xz
        - name: inventory_identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: host_address
          in: path
          description: Host address is the address of the host.
          required: true
          schema:
            type: string
            description: Host address is the address of the host.
            example: host1.example.com
          example: host1.example.com
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: vn
            minLength: 1
            maxLength: 128
          example: m
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible inventory host
      description: Update an existing inventory host.
      operationId: ansible#update-inventory-host
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: z
            minLength: 1
            maxLength: 128
          example: 2x6
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 5c
            minLength: 1
            maxLength: 128
          example: ff2
        - name: inventory_identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: host_address
          in: path
          description: Host address is the address of the host.
          required: true
          schema:
            type: string
            description: Host address is the address of the host.
            example: host1.example.com
          example: host1.example.com
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: lys
            minLength: 1
            maxLength: 128
          example: g
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInventoryHostRequest'
            example:
              groups:
                - A culpa quod eveniet qui.
                - Quo architecto omnis.
                - Dolores voluptatem et sint.
              vars:
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
                - file_name: Ab quasi tenetur.
                  key: '0'
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Ducimus et fugit assumenda.
                  value_type: Maxime aut vitae.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/playbook:
    get:
      tags:
        - ansible
      summary: List Ansible playbooks
      description: List all playbooks.
      operationId: ansible#list-playbooks
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mysta
          example: mysta
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: updated,DESC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: updated,ASC
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: d
            minLength: 1
            maxLength: 128
          example: 4d
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '10'
            minLength: 1
            maxLength: 128
          example: by
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '4'
            minLength: 1
            maxLength: 128
          example: w
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaybookResourceCollection'
              example:
                - account: '79'
                  created: 1627590400
                  env_vars:
                    5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                      key: MY_PLAYBOOK_ENV_VAR
                      value: test_value
                      value_type: string
                  identifier: Fugit consequuntur et voluptatum iure eum.
                  name: test playbook
                  org: '7'
                  project: '6'
                  repository: my-repo
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: my-connector
                  repository_path: playbooks/
                  updated: 1627686800
                  vars:
                    ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                      key: playbook_var
                      value: test_value
                      value_type: string
                - account: '79'
                  created: 1627590400
                  env_vars:
                    5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                      key: MY_PLAYBOOK_ENV_VAR
                      value: test_value
                      value_type: string
                  identifier: Fugit consequuntur et voluptatum iure eum.
                  name: test playbook
                  org: '7'
                  project: '6'
                  repository: my-repo
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: my-connector
                  repository_path: playbooks/
                  updated: 1627686800
                  vars:
                    ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                      key: playbook_var
                      value: test_value
                      value_type: string
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create Ansible playbook
      description: Create a new playbook.
      operationId: ansible#create-playbook
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 26r
            minLength: 1
            maxLength: 128
          example: r
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '11'
            minLength: 1
            maxLength: 128
          example: fda
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ovf
            minLength: 1
            maxLength: 128
          example: z
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePlaybookRequest'
            example:
              env_vars:
                5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                  key: MY_PLAYBOOK_ENV_VAR
                  value: test_value
                  value_type: string
              identifier: Earum est nesciunt laudantium.
              name: test playbook
              repository: my-repo
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: my-connector
              repository_path: playbooks/
              vars:
                ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                  key: playbook_var
                  value: test_value
                  value_type: string
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatePlaybookResponse'
              example:
                account: nk
                created: 1627590400
                env_vars:
                  5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                    key: MY_PLAYBOOK_ENV_VAR
                    value: test_value
                    value_type: string
                identifier: Occaecati doloribus eius.
                name: test playbook
                org: 8j
                project: qf
                repository: my-repo
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: my-connector
                repository_path: playbooks/
                updated: 1627686800
                vars:
                  ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                    key: playbook_var
                    value: test_value
                    value_type: string
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/playbook/{identifier}:
    delete:
      tags:
        - ansible
      summary: Delete Ansible playbook
      description: Delete an existing playbook.
      operationId: ansible#delete-playbook
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: hq
            minLength: 1
            maxLength: 128
          example: '253'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: f4
            minLength: 1
            maxLength: 128
          example: h2h
        - name: identifier
          in: path
          description: The unique identifier for this playbook
          required: true
          schema:
            type: string
            description: The unique identifier for this playbook
            example: Unde possimus dolor dicta rem.
          example: Perspiciatis aperiam.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: xop
            minLength: 1
            maxLength: 128
          example: '8'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - ansible
      summary: Show Ansible playbook
      description: Show an individual playbook.
      operationId: ansible#show-playbook
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: m
            minLength: 1
            maxLength: 128
          example: a
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: wq
            minLength: 1
            maxLength: 128
          example: ts
        - name: identifier
          in: path
          description: The unique identifier for this playbook
          required: true
          schema:
            type: string
            description: The unique identifier for this playbook
            example: Pariatur et voluptate quidem qui.
          example: Fugiat nulla qui ea.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: af
            minLength: 1
            maxLength: 128
          example: '8'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowPlaybookResponse'
              example:
                account: u3a
                created: 1627590400
                env_vars:
                  5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                    key: MY_PLAYBOOK_ENV_VAR
                    value: test_value
                    value_type: string
                identifier: Aliquam doloremque ea quasi a.
                name: test playbook
                org: c
                project: e
                repository: my-repo
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: my-connector
                repository_path: playbooks/
                updated: 1627686800
                vars:
                  ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                    key: playbook_var
                    value: test_value
                    value_type: string
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update Ansible playbook
      description: Update an existing playbook.
      operationId: ansible#update-playbook
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: a
            minLength: 1
            maxLength: 128
          example: rj
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: qox
            minLength: 1
            maxLength: 128
          example: b4
        - name: identifier
          in: path
          description: The unique identifier for this playbook
          required: true
          schema:
            type: string
            description: The unique identifier for this playbook
            example: Debitis sint nam modi optio.
          example: Architecto voluptatum minima vel sit ut.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: zz
            minLength: 1
            maxLength: 128
          example: c1
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePlaybookRequest'
            example:
              env_vars:
                5ba032d2-9942-4152-8fe1-c656da9dd4a2:
                  key: MY_PLAYBOOK_ENV_VAR
                  value: test_value
                  value_type: string
              name: test playbook
              repository: my-repo
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: my-connector
              repository_path: playbooks/
              vars:
                ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
                  key: playbook_var
                  value: test_value
                  value_type: string
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/ansible/playbook/{identifier}/vars:
    delete:
      tags:
        - ansible
      summary: Delete dynamic Ansible playbook variable
      description: Delete a dynamic playbook variable.
      operationId: ansible#delete-playbook-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: p
            minLength: 1
            maxLength: 128
          example: 6a
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 3b
            minLength: 1
            maxLength: 128
          example: 5qh
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: tt
            minLength: 1
            maxLength: 128
          example: 2h9
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeletePlaybookVarsRequest'
            example:
              vars:
                - Non atque non et quia velit.
                - Officiis quis voluptatibus minus molestiae enim.
                - Enim et est corrupti.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - ansible
      summary: Show Ansible playbook vars
      description: Show an individual playbook vars.
      operationId: ansible#show-playbook-vars
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: gf4
            minLength: 1
            maxLength: 128
          example: l6r
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: dh
            minLength: 1
            maxLength: 128
          example: o
        - name: identifier
          in: path
          description: Playbook identifier
          required: true
          schema:
            type: string
            description: Playbook identifier
            example: Vel similique dicta.
          example: Voluptas qui voluptas sunt quia itaque.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 65r
            minLength: 1
            maxLength: 128
          example: r4a
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowPlaybookVarsResponse'
              example:
                env_vars:
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                vars:
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
                  - created: Doloribus ut nemo sint explicabo unde.
                    file_name: Totam rerum eos.
                    key: a
                    updated: Sapiente consequuntur iure optio sit ad aut.
                    uuid: 123e4567-e89b-12d3-a456-426655440000
                    value: Hic quisquam corporis velit et.
                    value_type: Dolorem ut error.
                    var_type: Distinctio itaque odio et ullam.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - ansible
      summary: Create dynamic Ansible playbook variable
      description: Create a new dynamic playbook variable.
      operationId: ansible#create-playbook-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: oem
            minLength: 1
            maxLength: 128
          example: c9p
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: c3
            minLength: 1
            maxLength: 128
          example: '6'
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: xo
            minLength: 1
            maxLength: 128
          example: 6k
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePlaybookVarRequest'
            example:
              env_vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
              vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - ansible
      summary: Update dynamic Ansible playbook variable
      description: Update an existing dynamic playbook variable.
      operationId: ansible#update-playbook-vars
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: wvf
            minLength: 1
            maxLength: 128
          example: hp
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: gz
            minLength: 1
            maxLength: 128
          example: '932'
        - name: identifier
          in: path
          description: The unique identifier for this inventory
          required: true
          schema:
            type: string
            description: The unique identifier for this inventory
            example: test_inventory
          example: test_inventory
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: nmy
            minLength: 1
            maxLength: 128
          example: '0'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePlaybookVarsRequest'
            example:
              env_vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
              vars:
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
                - file_name: Fugiat omnis nesciunt.
                  key: wo
                  uuid: 123e4567-e89b-12d3-a456-426655440000
                  value: Repudiandae iusto non dolores pariatur officia.
                  value_type: Adipisci quam ut debitis eos dolorem.
                  var_type: Non dolorem et.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/approvals:
    get:
      tags:
        - approvals
      summary: List approvals
      description: List all the approvals
      operationId: approvals#list-approvals
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: workspace
          in: query
          description: Workspace identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Workspace identifier
            example: Ratione quibusdam impedit sit in ipsam quis.
          example: Quidem cumque laudantium.
        - name: pipeline_execution_id
          in: query
          description: Pipeline identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline identifier
            example: Commodi aut.
          example: Aperiam rerum ut iste qui.
        - name: pipeline_stage_id
          in: query
          description: Pipeline stage identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline stage identifier
            example: At et in et nesciunt.
          example: Est at.
        - name: status_type
          in: query
          description: Status of the approval step
          allowEmptyValue: true
          schema:
            type: string
            description: Status of the approval step
            example: pending
            enum:
              - approved
              - rejected
              - pending
          example: rejected
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 'y'
            minLength: 1
            maxLength: 128
          example: 1pf
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 0p9
            minLength: 1
            maxLength: 128
          example: d
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 0k
            minLength: 1
            maxLength: 128
          example: 1o
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApprovalResourceCollection'
              example:
                - account: e
                  actioned_by: John Doe
                  actioned_by_email: john.doe@example.com
                  created: 8906516273673178000
                  id: Porro eligendi et debitis aut dolorem deserunt.
                  org: hdg
                  pipeline_execution_id: Natus quidem est.
                  pipeline_stage_id: Doloremque non natus natus voluptatum.
                  project: tdy
                  status: Quia deleniti ullam sed aut expedita.
                  updated: 930279314053450400
                  workspace_id: Corporis ut consequuntur eum fuga.
                - account: e
                  actioned_by: John Doe
                  actioned_by_email: john.doe@example.com
                  created: 8906516273673178000
                  id: Porro eligendi et debitis aut dolorem deserunt.
                  org: hdg
                  pipeline_execution_id: Natus quidem est.
                  pipeline_stage_id: Doloremque non natus natus voluptatum.
                  project: tdy
                  status: Quia deleniti ullam sed aut expedita.
                  updated: 930279314053450400
                  workspace_id: Corporis ut consequuntur eum fuga.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - approvals
      summary: Create approval
      description: Create an approval resource
      operationId: approvals#create-approval
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ly
            minLength: 1
            maxLength: 128
          example: '71'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '1'
            minLength: 1
            maxLength: 128
          example: e6j
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 0o
            minLength: 1
            maxLength: 128
          example: '1'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApprovalRequest'
            example:
              pipeline_execution_id: Dolorem tempora molestiae pariatur.
              pipeline_stage_id: Laborum esse porro.
              status: approved
              workspace_id: Cupiditate impedit qui natus tenetur.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ApprovalsCreateApprovalResponseBodyCreation
              example:
                id: Vitae ex.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/approvals/{id}:
    get:
      tags:
        - approvals
      summary: Show approval
      description: Retrieve a single approval
      operationId: approvals#show-approval
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: dn
            minLength: 1
            maxLength: 128
          example: f1h
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 5i
            minLength: 1
            maxLength: 128
          example: vk
        - name: id
          in: path
          required: true
          schema:
            type: string
            example: 5d1ccd0f-02fc-4b03-aaad-4a41a34685cd
            format: uuid
          example: 32fc5229-7486-401f-9cb2-5141352b9543
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: x
            minLength: 1
            maxLength: 128
          example: w97
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ApprovalsShowApprovalResponseBodyStatusInfo
              example:
                actioned_by: John Doe
                actioned_by_email: john.doe@example.com
                created: 260121100438702880
                status: Optio id nemo quia quia amet impedit.
                updated: 6061519103778344000
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - approvals
      summary: Update approval
      description: Update a single approval
      operationId: approvals#update-approval
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: f
            minLength: 1
            maxLength: 128
          example: nh
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 5e
            minLength: 1
            maxLength: 128
          example: hk
        - name: id
          in: path
          required: true
          schema:
            type: string
            example: a40ce6c3-39e7-4e0a-8380-4aaebbcde49c
            format: uuid
          example: 30a3cd21-c9e5-46cf-b34a-fd4ea868458b
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: yl
            minLength: 1
            maxLength: 128
          example: lj6
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateApprovalRequest'
            example:
              actioned_by: John Doe
              actioned_by_email: john.doe@example.com
              status: rejected
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/costs:
    get:
      tags:
        - costs
      summary: List costs
      description: List the monthly cost per each workspace
      operationId: costs#list-costs
      parameters:
        - name: start_time
          in: query
          description: Specify the start time for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the start time for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: end_time
          in: query
          description: Specify the end time limit for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the end time limit for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: workspaces
          in: query
          description: Filter the workspaces to retrieve the cost
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Vel corrupti.
            description: Filter the workspaces to retrieve the cost
            example:
              - Eum eum.
              - Aperiam ut voluptas.
              - Non qui magni.
          example:
            - Distinctio sed veniam ipsa quo quas veritatis.
            - A aut est odio cum.
            - Quos quia animi quae iste soluta blanditiis.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: jse
            minLength: 1
            maxLength: 128
          example: '1'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: wp
            minLength: 1
            maxLength: 128
          example: '341'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: fux
            minLength: 1
            maxLength: 128
          example: '1'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCostsResponse'
              example:
                pageSize: 50
                totalItems: 1800
                totalPages: 36
                workspaces:
                  - cost: '12.13'
                    created: 1672531200
                    currency: USD
                    workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
                    workspace_name: Pariatur sunt nulla.
                  - cost: '12.13'
                    created: 1672531200
                    currency: USD
                    workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
                    workspace_name: Pariatur sunt nulla.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/costs/{workspace}:
    get:
      tags:
        - costs
      summary: List costs per workspace
      description: List the cost of the workspace and correlate it with the executions
      operationId: costs#list-costs-per-workspace
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: start_time
          in: query
          description: Specify the start time for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the start time for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: end_time
          in: query
          description: Specify the end time limit for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the end time limit for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: o
            minLength: 1
            maxLength: 128
          example: k
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: cgf
            minLength: 1
            maxLength: 128
          example: 7v7
        - name: workspace
          in: path
          description: >-
            Workspace id to retrieve the cost and the metadata associated with
            it
          required: true
          schema:
            type: string
            description: >-
              Workspace id to retrieve the cost and the metadata associated with
              it
            example: Rerum architecto quidem.
          example: Consequatur excepturi aliquam et.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: d
            minLength: 1
            maxLength: 128
          example: 2ax
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CostResourceCollection'
              example:
                - account: cla
                  cost: '12.13'
                  created: 1672531200
                  currency: USD
                  org: 5vt
                  pipeline: Dolores id laborum quia fugiat.
                  pipeline_execution_id: Dolore ut labore voluptates.
                  pipeline_stage_id: Numquam et hic in.
                  project: qpj
                  workspace: Iste quia quae libero debitis a eaque.
                - account: cla
                  cost: '12.13'
                  created: 1672531200
                  currency: USD
                  org: 5vt
                  pipeline: Dolores id laborum quia fugiat.
                  pipeline_execution_id: Dolore ut labore voluptates.
                  pipeline_stage_id: Numquam et hic in.
                  project: qpj
                  workspace: Iste quia quae libero debitis a eaque.
                - account: cla
                  cost: '12.13'
                  created: 1672531200
                  currency: USD
                  org: 5vt
                  pipeline: Dolores id laborum quia fugiat.
                  pipeline_execution_id: Dolore ut labore voluptates.
                  pipeline_stage_id: Numquam et hic in.
                  project: qpj
                  workspace: Iste quia quae libero debitis a eaque.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions:
    get:
      tags:
        - executions
      summary: List executions
      description: List all executions.
      operationId: executions#list-executions
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: workspace
          in: query
          description: Workspace identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Workspace identifier
            example: Quia quia dolorum deleniti qui.
          example: Eos modi odit.
        - name: pipeline_execution_id
          in: query
          description: Pipeline identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline identifier
            example: Doloribus porro voluptas quis.
          example: Tempora et animi numquam quaerat dolore architecto.
        - name: status
          in: query
          description: Status of the execution
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Quaerat natus ad maxime non sed.
            description: Status of the execution
            example:
              - Autem quia quod ea et qui.
              - Sed pariatur harum sunt quas sed corrupti.
          example:
            - Quaerat ducimus asperiores.
            - Assumenda quia quis.
            - Aperiam pariatur commodi consectetur vel qui.
            - Voluptatem reprehenderit neque.
        - name: pipeline_name
          in: query
          description: Pipeline name
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline name
            example: Ea qui sapiente quis.
          example: Ut natus vel.
        - name: start_time
          in: query
          description: Specify the start time for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the start time for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: end_time
          in: query
          description: Specify the end time limit for the query
          allowEmptyValue: true
          schema:
            type: integer
            description: Specify the end time limit for the query
            example: 1691150743950
            format: int64
          example: 1691150743950
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: g8
            minLength: 1
            maxLength: 128
          example: 25q
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '901'
            minLength: 1
            maxLength: 128
          example: uk2
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: z
            minLength: 1
            maxLength: 128
          example: '3'
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecutionResourceCollection'
              example:
                - account: x
                  created: 6110074494449943000
                  org: 3pa
                  pipeline: Incidunt voluptatem voluptatem est labore dolores.
                  pipeline_execution_id: Ut ea dolore qui et sit facilis.
                  pipeline_stage_id: Fugiat beatae.
                  project: yed
                  status: failure
                  workspace: Cumque enim.
                - account: x
                  created: 6110074494449943000
                  org: 3pa
                  pipeline: Incidunt voluptatem voluptatem est labore dolores.
                  pipeline_execution_id: Ut ea dolore qui et sit facilis.
                  pipeline_stage_id: Fugiat beatae.
                  project: yed
                  status: failure
                  workspace: Cumque enim.
                - account: x
                  created: 6110074494449943000
                  org: 3pa
                  pipeline: Incidunt voluptatem voluptatem est labore dolores.
                  pipeline_execution_id: Ut ea dolore qui et sit facilis.
                  pipeline_stage_id: Fugiat beatae.
                  project: yed
                  status: failure
                  workspace: Cumque enim.
                - account: x
                  created: 6110074494449943000
                  org: 3pa
                  pipeline: Incidunt voluptatem voluptatem est labore dolores.
                  pipeline_execution_id: Ut ea dolore qui et sit facilis.
                  pipeline_stage_id: Fugiat beatae.
                  project: yed
                  status: failure
                  workspace: Cumque enim.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - executions
      summary: Create execution
      description: Create a new execution.
      operationId: executions#create-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '5'
            minLength: 1
            maxLength: 128
          example: z
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '7'
            minLength: 1
            maxLength: 128
          example: 92i
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: icb
            minLength: 1
            maxLength: 128
          example: b1p
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExecutionRequest'
            example:
              pipeline: Incidunt veniam.
              pipeline_execution_id: Aut labore iste consequatur.
              pipeline_stage_id: Minus sed rem id omnis quia.
              workspace: Dolor voluptatem assumenda placeat atque voluptas sint.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateExecutionResponse'
              example:
                account: sie
                created: 1301507188662004000
                org: ip
                pipeline: Dolores consequatur.
                pipeline_execution_id: Ea necessitatibus iure odio in earum.
                pipeline_stage_id: Esse id fuga.
                project: 5iw
                status: success
                workspace: Iure provident aut eligendi qui aperiam consequatur.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/{pipeline_stage_id}:
    get:
      tags:
        - executions
      summary: Show execution
      description: Show an individual execution.
      operationId: executions#show-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: fp
            minLength: 1
            maxLength: 128
          example: vk
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: ye7
            minLength: 1
            maxLength: 128
          example: x9
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: 9gu
            minLength: 1
            maxLength: 128
          example: c
        - name: pipeline_stage_id
          in: path
          description: Pipeline execution stage ID
          required: true
          schema:
            type: string
            description: Pipeline execution stage ID
            example: x
            minLength: 1
            maxLength: 128
          example: ah
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '5'
            minLength: 1
            maxLength: 128
          example: g4
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowExecutionResponse'
              example:
                account: '6'
                created: 4477937886036050400
                org: d
                pipeline: Totam ullam dignissimos quisquam voluptas non.
                pipeline_execution_id: Reiciendis laboriosam qui neque voluptatem.
                pipeline_stage_id: Quia accusamus corrupti nulla quibusdam facilis in.
                project: pkt
                status: none
                workspace: Non placeat error repellendus nisi iste.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/{pipeline_stage_id}/audit-event:
    post:
      tags:
        - executions
      summary: Update execution
      description: Modify an individual execution by adding audit data.
      operationId: executions#modify-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: hf
            minLength: 1
            maxLength: 128
          example: b6
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: f
            minLength: 1
            maxLength: 128
          example: 8c
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: e3
            minLength: 1
            maxLength: 128
          example: q
        - name: pipeline_stage_id
          in: path
          description: Pipeline execution stage ID
          required: true
          schema:
            type: string
            description: Pipeline execution stage ID
            example: 8ut
            minLength: 1
            maxLength: 128
          example: 4lf
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: f
            minLength: 1
            maxLength: 128
          example: ok
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateExecutionRequest'
            example:
              audit:
                git_audit_data:
                  hash: ha
                  name: Voluptate est aut sit distinctio.
                  repo_url: th
                  type: branch, tag
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/cost-changes:
    get:
      tags:
        - executions
      summary: List cost changes
      description: >-
        List cost changes from the latest plan and last applied state for the
        current execution.
      operationId: executions#list-cost-changes
      parameters:
        - name: pipeline_stage_id
          in: query
          allowEmptyValue: true
          schema:
            type: string
            default: ''
            example: Necessitatibus consectetur omnis iusto blanditiis.
          example: Facere inventore molestiae enim rerum aut et.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: vzb
            minLength: 1
            maxLength: 128
          example: wm
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 8w
            minLength: 1
            maxLength: 128
          example: 83i
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: z
            minLength: 1
            maxLength: 128
          example: jla
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: s1
            minLength: 1
            maxLength: 128
          example: b5
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCostChangesResponse'
              example:
                currency: Error odit et occaecati non inventore asperiores.
                diff:
                  Aut aut voluptates maxime est minima.:
                    current_monthly_cost: Ratione iste sequi dolorem sed.
                    diff:
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                    diff_monthly_cost: Est veniam molestias eos numquam quis.
                    percentage_change_monthly_cost: 7543237256298908000
                    previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  Non maiores.:
                    current_monthly_cost: Ratione iste sequi dolorem sed.
                    diff:
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                    diff_monthly_cost: Est veniam molestias eos numquam quis.
                    percentage_change_monthly_cost: 7543237256298908000
                    previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  Quam quam inventore.:
                    current_monthly_cost: Ratione iste sequi dolorem sed.
                    diff:
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                      - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                        diff_monthly_cost: Tempora sed et animi consequuntur.
                        name: Tenetur voluptas eum amet distinctio suscipit.
                        percentage_change_monthly_cost: 3581947795968102000
                        previous_monthly_cost: Dolorem ullam et autem.
                        subresources:
                          Neque odio qui.:
                            current_monthly_cost: >-
                              Et qui ratione nostrum quis reprehenderit
                              expedita.
                            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                            percentage_change_monthly_cost: 5266508547392496000
                            previous_monthly_cost: Aut aut.
                    diff_monthly_cost: Est veniam molestias eos numquam quis.
                    percentage_change_monthly_cost: 7543237256298908000
                    previous_monthly_cost: Minus omnis consequatur et ad et amet.
                diff_total_monthly_cost: Assumenda cupiditate atque.
                past_total_monthly_cost: Consectetur et consequatur.
                percentage_change_total_monthly_cost: 5954681333749264000
                stage_execution_id: Facilis temporibus tempora deleniti.
                stage_id: Eos tempore adipisci.
                total_monthly_cost: Numquam similique sint vel.
                workspace_id: Laudantium quaerat.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/cost-changes-all-stages:
    get:
      tags:
        - executions
      summary: List cost changes for all stages
      description: >-
        List cost changes for all stages from the latest plan and last applied
        state for the current execution.
      operationId: executions#list-cost-changes-all-stages
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: u
            minLength: 1
            maxLength: 128
          example: me5
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: j
            minLength: 1
            maxLength: 128
          example: fn
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: a
            minLength: 1
            maxLength: 128
          example: 4q7
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: c44
            minLength: 1
            maxLength: 128
          example: 3b
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChangedCostsCollection'
              example:
                - currency: Voluptatem tenetur.
                  diff:
                    Itaque et dolorem perferendis et dolore.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                    Labore exercitationem ab at et tenetur voluptas.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  diff_total_monthly_cost: Ratione reiciendis error.
                  past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
                  percentage_change_total_monthly_cost: 8071160406141093000
                  stage_execution_id: Et enim dolores earum tempore totam porro.
                  stage_id: Animi voluptatem.
                  total_monthly_cost: Et quibusdam rerum et.
                  workspace_id: Laboriosam labore illo magnam quae officia.
                - currency: Voluptatem tenetur.
                  diff:
                    Itaque et dolorem perferendis et dolore.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                    Labore exercitationem ab at et tenetur voluptas.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  diff_total_monthly_cost: Ratione reiciendis error.
                  past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
                  percentage_change_total_monthly_cost: 8071160406141093000
                  stage_execution_id: Et enim dolores earum tempore totam porro.
                  stage_id: Animi voluptatem.
                  total_monthly_cost: Et quibusdam rerum et.
                  workspace_id: Laboriosam labore illo magnam quae officia.
                - currency: Voluptatem tenetur.
                  diff:
                    Itaque et dolorem perferendis et dolore.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                    Labore exercitationem ab at et tenetur voluptas.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  diff_total_monthly_cost: Ratione reiciendis error.
                  past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
                  percentage_change_total_monthly_cost: 8071160406141093000
                  stage_execution_id: Et enim dolores earum tempore totam porro.
                  stage_id: Animi voluptatem.
                  total_monthly_cost: Et quibusdam rerum et.
                  workspace_id: Laboriosam labore illo magnam quae officia.
                - currency: Voluptatem tenetur.
                  diff:
                    Itaque et dolorem perferendis et dolore.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                    Labore exercitationem ab at et tenetur voluptas.:
                      current_monthly_cost: Ratione iste sequi dolorem sed.
                      diff:
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                          diff_monthly_cost: Tempora sed et animi consequuntur.
                          name: Tenetur voluptas eum amet distinctio suscipit.
                          percentage_change_monthly_cost: 3581947795968102000
                          previous_monthly_cost: Dolorem ullam et autem.
                          subresources:
                            Neque odio qui.:
                              current_monthly_cost: >-
                                Et qui ratione nostrum quis reprehenderit
                                expedita.
                              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                              percentage_change_monthly_cost: 5266508547392496000
                              previous_monthly_cost: Aut aut.
                      diff_monthly_cost: Est veniam molestias eos numquam quis.
                      percentage_change_monthly_cost: 7543237256298908000
                      previous_monthly_cost: Minus omnis consequatur et ad et amet.
                  diff_total_monthly_cost: Ratione reiciendis error.
                  past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
                  percentage_change_total_monthly_cost: 8071160406141093000
                  stage_execution_id: Et enim dolores earum tempore totam porro.
                  stage_id: Animi voluptatem.
                  total_monthly_cost: Et quibusdam rerum et.
                  workspace_id: Laboriosam labore illo magnam quae officia.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/resource-changes:
    get:
      tags:
        - executions
      summary: List resource changes
      description: List resource changes from the latest plan and state for this execution.
      operationId: executions#list-resource-changes
      parameters:
        - name: exclude_state
          in: query
          description: When true, exclude values from the state in the response
          allowEmptyValue: true
          schema:
            type: boolean
            description: When true, exclude values from the state in the response
            default: false
            example: true
          example: false
        - name: pipeline_stage_id
          in: query
          allowEmptyValue: true
          schema:
            type: string
            default: ''
            example: Aliquid eligendi.
          example: Officiis unde illum.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: tj
            minLength: 1
            maxLength: 128
          example: j
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '9'
            minLength: 1
            maxLength: 128
          example: 1ub
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: sr
            minLength: 1
            maxLength: 128
          example: '472'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: me
            minLength: 1
            maxLength: 128
          example: oj
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResourceChangesResponse'
              example:
                data_sources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                drift_changes:
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                outputs:
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                  - change: added
                    name: instance_public_ip
                    new: new value
                    old: old value
                    sensitive: true
                pipeline_execution: Sequi impedit velit.
                pipeline_stage: Ipsa quis repellat itaque recusandae.
                planned_changes:
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                  - change: added
                    change_count: 10
                    changes:
                      Et libero explicabo vel nihil incidunt.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                      Quas praesentium.:
                        change: added
                        drift: true
                        new: new value
                        old: old value
                        sensitive: true
                    drift: false
                    module: full_stack
                    name: app_server
                    provider: AWS
                    type: S3 Bucket
                resources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                stage_id: Numquam doloribus quod repellat unde modi.
                workspace_id: Cumque ipsam nihil eligendi omnis.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/executions/{pipeline_execution_id}/resource-changes-all-stages:
    get:
      tags:
        - executions
      summary: List resource changes for all stages
      description: >-
        List resource changes for all stages from the latest plan and state for
        this execution.
      operationId: executions#list-resource-changes-all-stages
      parameters:
        - name: exclude_state
          in: query
          description: When true, exclude values from the state in the response
          allowEmptyValue: true
          schema:
            type: boolean
            description: When true, exclude values from the state in the response
            default: false
            example: true
          example: true
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '82'
            minLength: 1
            maxLength: 128
          example: af
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: amq
            minLength: 1
            maxLength: 128
          example: 9x9
        - name: pipeline_execution_id
          in: path
          description: Pipeline execution ID
          required: true
          schema:
            type: string
            description: Pipeline execution ID
            example: '0'
            minLength: 1
            maxLength: 128
          example: '25'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 9io
            minLength: 1
            maxLength: 128
          example: s7e
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChangedResourcesCollection'
              example:
                - data_sources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  drift_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  outputs:
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                  pipeline_execution: Hic voluptatibus consequatur.
                  pipeline_stage: Corporis sunt quisquam aliquam ullam.
                  planned_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  resources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  stage_id: Dolor cumque.
                  workspace_id: Velit assumenda adipisci quibusdam quia.
                - data_sources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  drift_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  outputs:
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                  pipeline_execution: Hic voluptatibus consequatur.
                  pipeline_stage: Corporis sunt quisquam aliquam ullam.
                  planned_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  resources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  stage_id: Dolor cumque.
                  workspace_id: Velit assumenda adipisci quibusdam quia.
                - data_sources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  drift_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  outputs:
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                    - change: added
                      name: instance_public_ip
                      new: new value
                      old: old value
                      sensitive: true
                  pipeline_execution: Hic voluptatibus consequatur.
                  pipeline_stage: Corporis sunt quisquam aliquam ullam.
                  planned_changes:
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                    - change: added
                      change_count: 10
                      changes:
                        Et libero explicabo vel nihil incidunt.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                        Quas praesentium.:
                          change: added
                          drift: true
                          new: new value
                          old: old value
                          sensitive: true
                      drift: false
                      module: full_stack
                      name: app_server
                      provider: AWS
                      type: S3 Bucket
                  resources:
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                    - attributes:
                        ami: ami-830c94ec
                        instance_type: t2.micro
                      drift_attributes:
                        instance_type: t2.nano
                      drift_status: changed
                      mode: resource
                      module: full_stack
                      name: app_server
                      path_id: namespace
                      provider: AWS
                      sensitive_attributes:
                        - instance_type
                      type: S3 Bucket
                  stage_id: Dolor cumque.
                  workspace_id: Velit assumenda adipisci quibusdam quia.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/settings/default-pipelines:
    delete:
      tags:
        - settings
      summary: Delete default pipeline
      description: >-
        Delete the association between a default pipeline and a provisioner
        operation
      operationId: settings#delete-default-pipeline
      parameters:
        - name: org
          in: path
          required: true
          schema:
            type: string
            example: Corrupti quas quisquam in aperiam.
          example: Aliquid dicta a voluptatem maxime quo.
        - name: project
          in: path
          required: true
          schema:
            type: string
            example: Ratione assumenda dolor nesciunt.
          example: Aut aut libero.
        - name: Harness-Account
          in: header
          allowEmptyValue: true
          required: true
          schema:
            type: string
            example: Facere architecto molestiae.
          example: Nihil voluptatem voluptas dolorum excepturi enim.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteDefaultPipelineRequest'
            example:
              operation: plan
              provisioner: opentofu
              workspace: plan
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - settings
      summary: List default pipelines
      description: >-
        List all associations between provisioner operations and default
        pipelines
      operationId: settings#list-default-pipelines
      parameters:
        - name: workspace
          in: query
          description: Workspace identifier
          allowEmptyValue: true
          schema:
            type: string
            description: Workspace identifier
            default: ''
            example: workspace123
          example: workspace123
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: v9
            minLength: 1
            maxLength: 128
          example: t6e
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: v
            minLength: 1
            maxLength: 128
          example: sif
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: rsh
            minLength: 1
            maxLength: 128
          example: '8'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultPipelineCollection'
              example:
                - account: Officia eligendi assumenda placeat vero dolorem.
                  operation: plan
                  org: Sint aut et sit quis.
                  pipeline: testpipeline
                  project: Dolores delectus aut eum alias.
                  provisioner: opentofu
                  updated: 1636669297674
                  workspace: plan
                - account: Officia eligendi assumenda placeat vero dolorem.
                  operation: plan
                  org: Sint aut et sit quis.
                  pipeline: testpipeline
                  project: Dolores delectus aut eum alias.
                  provisioner: opentofu
                  updated: 1636669297674
                  workspace: plan
                - account: Officia eligendi assumenda placeat vero dolorem.
                  operation: plan
                  org: Sint aut et sit quis.
                  pipeline: testpipeline
                  project: Dolores delectus aut eum alias.
                  provisioner: opentofu
                  updated: 1636669297674
                  workspace: plan
                - account: Officia eligendi assumenda placeat vero dolorem.
                  operation: plan
                  org: Sint aut et sit quis.
                  pipeline: testpipeline
                  project: Dolores delectus aut eum alias.
                  provisioner: opentofu
                  updated: 1636669297674
                  workspace: plan
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - settings
      summary: Upsert default pipeline
      description: Associate a default pipeline with a provisioner operation
      operationId: settings#upsert-default-pipeline
      parameters:
        - name: org
          in: path
          required: true
          schema:
            type: string
            example: Beatae cumque nemo odit.
          example: Incidunt quos nihil reprehenderit.
        - name: project
          in: path
          required: true
          schema:
            type: string
            example: Architecto fuga.
          example: Quo cum libero.
        - name: Harness-Account
          in: header
          allowEmptyValue: true
          required: true
          schema:
            type: string
            example: Omnis illo voluptatem.
          example: Explicabo officia commodi itaque quis et voluptatem.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpsertDefaultPipelineRequest'
            example:
              operation: plan
              pipeline: testpipeline
              provisioner: opentofu
              updated: 1636669297674
              workspace: plan
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/settings/disabled:
    get:
      tags:
        - settings
      summary: Check push data
      description: Check if the plan/state should be sent to the server
      operationId: settings#check-push-data
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: gn
            minLength: 1
            maxLength: 128
          example: 7l1
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: l
            minLength: 1
            maxLength: 128
          example: tt7
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: tt
            minLength: 1
            maxLength: 128
          example: a
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckPushDataResponse'
              example:
                disabled: false
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/tags:
    get:
      tags:
        - workspaces
      summary: List all workspace tags
      description: List all tags
      operationId: workspaces#list-all-workspace-tags
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '0'
            minLength: 1
            maxLength: 128
          example: j
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: u
            minLength: 1
            maxLength: 128
          example: '8'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '5'
            minLength: 1
            maxLength: 128
          example: 5h
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Fugit perferendis dolore.
                example:
                  - Et est sint quia itaque amet.
                  - Consequatur voluptas ea voluptatum illo.
                  - Velit maiores et eum provident eos exercitationem.
              example:
                - Officia aut.
                - Qui ut quia qui laudantium odio.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/unified-executions:
    post:
      tags:
        - unified-executions
      summary: Create unified execution
      description: Create a new unified execution.
      operationId: unified-executions#create-unified-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: nd
            minLength: 1
            maxLength: 128
          example: a
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: h
            minLength: 1
            maxLength: 128
          example: zai
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '7'
            minLength: 1
            maxLength: 128
          example: h
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UnifiedExecutionRequest2'
            example:
              module_test: Eos minima consequatur in veritatis id.
              pipeline_execution_id: Quasi rerum.
              pipeline_id: Recusandae in eos est tempora rem.
              pipeline_stage_id: Atque et.
              remote_execution_id: Et vero.
              skip_adding_to_db: true
              webhook:
                connector: Illo debitis.
                link: Qui a.
                repo: Sint saepe.
                type: release
              workspace: Corrupti fugit maiores nam voluptas quia.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnifiedExecutionResponse'
              example:
                env_variables:
                  Blanditiis ut ad aut.: Maiores deserunt.
                outputs:
                  Mollitia consequuntur qui facilis dolor quia sed.: Accusantium tenetur consequuntur veritatis nihil odit.
                  Sit vitae aliquam qui reprehenderit libero fugiat.: Consectetur delectus delectus veritatis sint.
                steps:
                  - dynamic_fields:
                      Aut recusandae quis quis ut.: Facere accusamus dolor quia assumenda beatae enim.
                      Exercitationem ipsa cum consequuntur illo qui dolor.: Eaque qui vel labore aperiam.
                      Quidem id rem molestiae quaerat.: Blanditiis facere quisquam.
                    id: Ea non illo quia.
                    name: Veniam ut.
                    yaml: Temporibus ab.
                  - dynamic_fields:
                      Aut recusandae quis quis ut.: Facere accusamus dolor quia assumenda beatae enim.
                      Exercitationem ipsa cum consequuntur illo qui dolor.: Eaque qui vel labore aperiam.
                      Quidem id rem molestiae quaerat.: Blanditiis facere quisquam.
                    id: Ea non illo quia.
                    name: Veniam ut.
                    yaml: Temporibus ab.
                  - dynamic_fields:
                      Aut recusandae quis quis ut.: Facere accusamus dolor quia assumenda beatae enim.
                      Exercitationem ipsa cum consequuntur illo qui dolor.: Eaque qui vel labore aperiam.
                      Quidem id rem molestiae quaerat.: Blanditiis facere quisquam.
                    id: Ea non illo quia.
                    name: Veniam ut.
                    yaml: Temporibus ab.
                  - dynamic_fields:
                      Aut recusandae quis quis ut.: Facere accusamus dolor quia assumenda beatae enim.
                      Exercitationem ipsa cum consequuntur illo qui dolor.: Eaque qui vel labore aperiam.
                      Quidem id rem molestiae quaerat.: Blanditiis facere quisquam.
                    id: Ea non illo quia.
                    name: Veniam ut.
                    yaml: Temporibus ab.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/variable-set:
    post:
      tags:
        - variable_sets
      summary: Create a new Variable Set on project level
      description: Create a new Variable Set on project level.
      operationId: variable_sets#create-variable-set-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: e
            minLength: 1
            maxLength: 128
          example: oko
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: ox
            minLength: 1
            maxLength: 128
          example: zzy
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: kbp
            minLength: 1
            maxLength: 128
          example: de
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVariableSetRequestProjScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Quo autem vel veritatis nostrum.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Voluptas quia.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 8733156696902043000
              identifier: r
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Vitae rerum repellat quia fugit dolor culpa.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/variable-set/{identifier}:
    delete:
      tags:
        - variable_sets
      summary: Delete Variable Set by identifier on project level
      description: Delete Variable Set by identifier on project level.
      operationId: variable_sets#delete-variable-set-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: wr
            minLength: 1
            maxLength: 128
          example: l
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: eq
            minLength: 1
            maxLength: 128
          example: z1
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: l2k
            minLength: 1
            maxLength: 128
          example: ey
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 4u2
            minLength: 1
            maxLength: 128
          example: wl
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - variable_sets
      summary: Get Variable Set by identifier on project level
      description: Get Variable Set by identifier on project level.
      operationId: variable_sets#get-variable-set-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: lnl
            minLength: 1
            maxLength: 128
          example: cv
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: z
            minLength: 1
            maxLength: 128
          example: '9'
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: cq
            minLength: 1
            maxLength: 128
          example: z
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 3hs
            minLength: 1
            maxLength: 128
          example: j1l
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody
              example:
                account: u5t
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Placeat quasi ab debitis quam qui et.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: g
                name: resource name
                org: v7
                project: aug
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Ipsum aspernatur dicta veniam consequatur quis.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Qui corrupti adipisci ratione nemo.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Quisquam distinctio vel suscipit.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - variable_sets
      summary: Update a Variable Set on project level
      description: Update a Variable Set on project level.
      operationId: variable_sets#update-variable-set-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: h
            minLength: 1
            maxLength: 128
          example: wi4
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: m21
            minLength: 1
            maxLength: 128
          example: mw
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: lka
            minLength: 1
            maxLength: 128
          example: eyl
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: e53
            minLength: 1
            maxLength: 128
          example: 2n
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVariableSetRequestProjScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Provident delectus dolores qui blanditiis soluta.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Qui necessitatibus mollitia.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Ullam saepe corrupti voluptas aut aliquam.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 1737324858307281700
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Enim illo.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Est sit id quas sit sit.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Officiis omnis at excepturi id sint quod.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/variable-set/{identifier}/references:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set References list on project level
      description: Get Variable Set References list on project level.
      operationId: variable_sets#list-variable-set-references-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: edw
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: aqj
            minLength: 1
            maxLength: 128
          example: m
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: '50'
            minLength: 1
            maxLength: 128
          example: '8'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 2h
            minLength: 1
            maxLength: 128
          example: w
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmWorkspaceList'
              example:
                items:
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/variable-sets:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set list on project level
      description: Get Variable Set list on project level.
      operationId: variable_sets#list-variable-sets-proj-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 3kz
            minLength: 1
            maxLength: 128
          example: sz
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: s
            minLength: 1
            maxLength: 128
          example: 1fe
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 34y
            minLength: 1
            maxLength: 128
          example: q
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmVariableSetList'
              example:
                items:
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspace-metrics:
    get:
      tags:
        - workspaces
      summary: Show workspace metrics
      description: Show metrics for workspaces
      operationId: workspaces#show-workspace-metrics
      parameters:
        - name: start_time
          in: query
          description: Start time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: Start time filter (Unix timestamp)
            example: 2909448309629820000
            format: int64
          example: 1381321581348952000
        - name: end_time
          in: query
          description: End time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: End time filter (Unix timestamp)
            example: 274547322032244740
            format: int64
          example: 1332398207745129700
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 5l
            minLength: 1
            maxLength: 128
          example: '55'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: q
            minLength: 1
            maxLength: 128
          example: cp5
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: snh
            minLength: 1
            maxLength: 128
          example: e
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowWorkspaceMetricsRequest'
              example:
                status_counts:
                  Quia labore eveniet beatae qui id.: 5476307991923535000
                  Rem et et rem eligendi.: 1864306535411487000
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspace/template/{workspace_id}/yaml-diff:
    get:
      tags:
        - workspace_templates
      summary: Retrieve workspace-template reconciliation diff
      description: >-
        Get the differences between the current workspace YAML and what it will
        look like when reconciled with the template
      operationId: workspace_templates#get-workspace-template-reconciliation-diff
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '7'
            minLength: 1
            maxLength: 128
          example: '7'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: c
            minLength: 1
            maxLength: 128
          example: 4s
        - name: workspace_id
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: '2'
            minLength: 1
            maxLength: 128
          example: j
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: j6
            minLength: 1
            maxLength: 128
          example: 9iq
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/GetWorkspaceTemplateReconciliationDiffResponse
              example:
                currentWorkspaceYaml: Reiciendis unde quam iusto id voluptate nesciunt.
                reconcilableWorkspaceYaml: Vero repellendus recusandae.
                requiresReconciliation: false
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspace/templates:
    post:
      tags:
        - workspace_templates
      summary: Create workspace template
      description: Add a workspace-template combination to the table.
      operationId: workspace_templates#add-workspace-template
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: fy
            minLength: 1
            maxLength: 128
          example: v4r
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: ph
            minLength: 1
            maxLength: 128
          example: fk
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: h
            minLength: 1
            maxLength: 128
          example: bl
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWorkspaceTemplateRequest'
            example:
              template_id: 89m
              version: rd
              workspace_id: d03
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateWorkspaceTemplateResponse'
              example:
                account: '39'
                created_at: 1627590400
                org: cx
                project: yrg
                template_id: 5ky
                updated_at: 1627686800
                version: gza
                workspace_id: q
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspace/templates/{template_id}:
    get:
      tags:
        - workspace_templates
      summary: List workspaces by template id
      description: >-
        Get all workspaces associated with a specific template ID  for a given
        scope.
      operationId: workspace_templates#get-workspaces-by-template-id
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: drc
            minLength: 1
            maxLength: 128
          example: amz
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: m51
            minLength: 1
            maxLength: 128
          example: c
        - name: template_id
          in: path
          description: Template identifier to filter workspaces
          required: true
          schema:
            type: string
            description: Template identifier to filter workspaces
            example: v
            minLength: 1
            maxLength: 128
          example: '1'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 9vg
            minLength: 1
            maxLength: 128
          example: '144'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/HarnessIacmWorkspaceTemplate'
                description: List of workspaces associated with the template ID
                example:
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
              example:
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspace/templates/{template_id}/{workspace_id}:
    put:
      tags:
        - workspace_templates
      summary: Update workspace template
      description: Update a workspace template combo to change its version.
      operationId: workspace_templates#update-workspace-template
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: t
            minLength: 1
            maxLength: 128
          example: xrt
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 9b
            minLength: 1
            maxLength: 128
          example: '9'
        - name: template_id
          in: path
          description: Template identifier
          required: true
          schema:
            type: string
            description: Template identifier
            example: o
            minLength: 1
            maxLength: 128
          example: '0'
        - name: workspace_id
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: '0'
            minLength: 1
            maxLength: 128
          example: '4'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: b07
            minLength: 1
            maxLength: 128
          example: '5'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWorkspaceTemplateRequest'
            example:
              version: 0d
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateWorkspaceTemplateResponse'
              example:
                account: pz
                created_at: 1627590400
                org: trx
                project: e
                template_id: e6
                updated_at: 1627686800
                version: h
                workspace_id: se
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces:
    get:
      tags:
        - workspaces
      summary: List workspaces
      description: List all workspaces.
      operationId: workspaces#list-workspaces
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mysta
          example: mysta
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: name,DESC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: updated,ASC
        - name: status
          in: query
          description: Status of the execution
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Assumenda laboriosam consequatur.
            description: Status of the execution
            example:
              - Voluptatum non provident ex.
              - Asperiores dolorem.
          example:
            - Voluptas accusamus.
            - Est placeat dolores.
            - Ad ex molestias nesciunt autem.
        - name: tags
          in: query
          description: Comma separated list of tags to filter by
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Dicta voluptas.
            description: Comma separated list of tags to filter by
            example:
              - Delectus sed dicta.
              - Autem quidem veniam.
              - Exercitationem tempore inventore consequatur molestiae fugit.
              - Sint dolor magni quia.
          example:
            - Impedit facilis dolor eius.
            - Est nam.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: g
            minLength: 1
            maxLength: 128
          example: 4k
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: fyc
            minLength: 1
            maxLength: 128
          example: 'n'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 9ea
            minLength: 1
            maxLength: 128
          example: h1
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceResourceSummaryCollection'
              example:
                - account: 4j
                  created: 4988103444423354000
                  description: this is a more detailed explanation of the resource.
                  identifier: '1'
                  name: resource name
                  org: w
                  project: wd
                  status: provisioning
                  updated: 4982422765976356000
                - account: 4j
                  created: 4988103444423354000
                  description: this is a more detailed explanation of the resource.
                  identifier: '1'
                  name: resource name
                  org: w
                  project: wd
                  status: provisioning
                  updated: 4982422765976356000
                - account: 4j
                  created: 4988103444423354000
                  description: this is a more detailed explanation of the resource.
                  identifier: '1'
                  name: resource name
                  org: w
                  project: wd
                  status: provisioning
                  updated: 4982422765976356000
                - account: 4j
                  created: 4988103444423354000
                  description: this is a more detailed explanation of the resource.
                  identifier: '1'
                  name: resource name
                  org: w
                  project: wd
                  status: provisioning
                  updated: 4982422765976356000
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - workspaces
      summary: Create workspace
      description: Create a new workspace.
      operationId: workspaces#create-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: bg
            minLength: 1
            maxLength: 128
          example: dq
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: vh5
            minLength: 1
            maxLength: 128
          example: fl
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: jok
            minLength: 1
            maxLength: 128
          example: i
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWorkspaceRequest'
            example:
              associated_template:
                template_id: h
                version: ck
              budget: 0.8687616
              cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
              cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
              cost_estimation_enabled: true
              default_pipelines:
                Aut et vero saepe facilis.:
                  project_pipeline: Sint natus sint quos enim magni.
                  workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
                Corporis non reiciendis.:
                  project_pipeline: Sint natus sint quos enim magni.
                  workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
                Sint sit aut quia beatae et qui.:
                  project_pipeline: Sint natus sint quos enim magni.
                  workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Deserunt adipisci et quod officiis et repellat.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
                Nihil laborum voluptas architecto eum.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
                Quia sit et eligendi et sit.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
              id: 6875335565912036000
              identifier: g6v
              modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
              name: resource name
              provider_connector: Et enim ut illo adipisci voluptas nulla.
              provider_connectors:
                - connector_ref: chx
                  created: 1627590400
                  id: 7929633474489630000
                  terragrunt_provider: false
                  type: aws
                  updated: 1627686800
                  workspace_id: 8974035677896112000
                - connector_ref: chx
                  created: 1627590400
                  id: 7929633474489630000
                  terragrunt_provider: false
                  type: aws
                  updated: 1627686800
                  workspace_id: 8974035677896112000
              providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
              provisioner: Dolorem molestiae consequuntur consequuntur ducimus atque quis.
              provisioner_version: Tempore ipsum esse fugit.
              prune_sensitive_data: true
              repository: Labore in dolores aut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Quasi quidem.
              repository_path: ''
              repository_sha: abc10ed
              repository_submodules: recursive
              run_all: true
              sparse_checkout: Necessitatibus ipsum.
              state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
              tags:
                foo: bar
              terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
              terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
              terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
              terraform_variable_files:
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
              terraform_variables:
                Culpa quia repudiandae modi.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
                Fugit officiis possimus cupiditate modi.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
              terragrunt_provider: true
              terragrunt_version: Modi autem laborum vitae qui ut sed.
              variable_sets:
                - Est perferendis velit dolores.
                - Laboriosam explicabo.
                - Sed voluptatibus ut qui rerum itaque molestiae.
                - Rerum qui et praesentium.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspacesCreateWorkspaceResponseBody'
              example:
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}:
    delete:
      tags:
        - workspaces
      summary: Destroy workspace
      description: Deletes the given workspace.
      operationId: workspaces#destroy-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '167'
            minLength: 1
            maxLength: 128
          example: x
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: p1
        - name: identifier
          in: path
          description: Identifier is the project identifier.
          required: true
          schema:
            type: string
            description: Identifier is the project identifier.
            example: na
            minLength: 1
            maxLength: 128
          example: fio
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ge
            minLength: 1
            maxLength: 128
          example: a
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - workspaces
      summary: Show workspace
      description: Show an individual workspace.
      operationId: workspaces#show-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ztq
            minLength: 1
            maxLength: 128
          example: qkh
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: spu
            minLength: 1
            maxLength: 128
          example: kg
        - name: identifier
          in: path
          description: Identifier is the project identifier.
          required: true
          schema:
            type: string
            description: Identifier is the project identifier.
            example: e5o
            minLength: 1
            maxLength: 128
          example: oe
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '7'
            minLength: 1
            maxLength: 128
          example: wlz
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspacesShowWorkspaceResponseBody'
              example:
                account: 9z
                associated_template:
                  template_id: w
                  version: 3bl
                backend_locked: false
                budget: 0.759433
                cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                cost_estimation_enabled: true
                created: 3280154920341013500
                default_pipelines:
                  Quia veritatis amet.:
                    project_pipeline: Architecto quia ut ratione earum impedit sed.
                    workspace_pipeline: Quisquam enim rem similique.
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Harum minima laboriosam velit accusantium.:
                    created: 4167943712779243000
                    key: 0s
                    updated: 7113477059707596000
                    value: Minima placeat provident maiores odio officia.
                    value_type: secret
                  Ipsam harum consequuntur voluptatibus ut qui labore.:
                    created: 4167943712779243000
                    key: 0s
                    updated: 7113477059707596000
                    value: Minima placeat provident maiores odio officia.
                    value_type: secret
                  Quidem natus ut cupiditate aut quia facere.:
                    created: 4167943712779243000
                    key: 0s
                    updated: 7113477059707596000
                    value: Minima placeat provident maiores odio officia.
                    value_type: secret
                identifier: q5
                modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                name: resource name
                org: du
                project: vji
                provider_connector: Consectetur earum dolore.
                provider_connectors:
                  - connector_ref: 8be
                    created: 1627590400
                    id: 1417218168821303600
                    terragrunt_provider: true
                    type: aws
                    updated: 1627686800
                    workspace_id: 7475434293435524000
                  - connector_ref: 8be
                    created: 1627590400
                    id: 1417218168821303600
                    terragrunt_provider: true
                    type: aws
                    updated: 1627686800
                    workspace_id: 7475434293435524000
                  - connector_ref: 8be
                    created: 1627590400
                    id: 1417218168821303600
                    terragrunt_provider: true
                    type: aws
                    updated: 1627686800
                    workspace_id: 7475434293435524000
                providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                provisioner: Ea sed qui eum ipsa nesciunt dolor.
                provisioner_data: Enim repellat.
                provisioner_version: Et quos natus ut iure et.
                prune_sensitive_data: true
                repository: Suscipit quos minus velit velit ut.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Sint dolorem vitae vel magni occaecati.
                repository_path: ''
                repository_sha: abc10ed
                repository_submodules: recursive
                run_all: true
                sparse_checkout: Explicabo unde adipisci.
                state_checksum: >-
                  d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                status: unknown
                tags:
                  foo: bar
                terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                terraform_variable_files:
                  - repository: Quia omnis nobis tempore ipsam ea quia.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Vitae perferendis incidunt aut assumenda et.
                    repository_path: ''
                    repository_sha: abc10ed
                  - repository: Quia omnis nobis tempore ipsam ea quia.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Vitae perferendis incidunt aut assumenda et.
                    repository_path: ''
                    repository_sha: abc10ed
                terraform_variables:
                  Quisquam et in aut iusto ipsum.:
                    created: 4167943712779243000
                    key: 0s
                    updated: 7113477059707596000
                    value: Minima placeat provident maiores odio officia.
                    value_type: secret
                terragrunt_provider: true
                terragrunt_version: Recusandae architecto tenetur.
                updated: 4449287912954681000
                variable_sets:
                  - Impedit corporis exercitationem laboriosam voluptate natus.
                  - Voluptas similique sunt sunt ut deleniti.
                  - Et aut.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - workspaces
      summary: Update workspace
      description: Updates the given workspace with new info.
      operationId: workspaces#update-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: d8
            minLength: 1
            maxLength: 128
          example: l73
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: j7p
            minLength: 1
            maxLength: 128
          example: vz
        - name: identifier
          in: path
          description: Workspace identifier.
          required: true
          schema:
            type: string
            description: Workspace identifier.
            example: of
            minLength: 1
            maxLength: 128
          example: 5x
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: kah
            minLength: 1
            maxLength: 128
          example: v
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWorkspaceRequest'
            example:
              budget: 0.25446224
              cost_estimation_enabled: true
              default_pipelines:
                Dolore voluptate ut sed.:
                  project_pipeline: Sint natus sint quos enim magni.
                  workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
                Exercitationem debitis deleniti incidunt voluptatibus quos omnis.:
                  project_pipeline: Sint natus sint quos enim magni.
                  workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Omnis nemo non nemo similique qui.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
              name: resource name
              provider_connector: Iste quas voluptate beatae et architecto.
              provider_connectors:
                - connector_ref: chx
                  created: 1627590400
                  id: 7929633474489630000
                  terragrunt_provider: false
                  type: aws
                  updated: 1627686800
                  workspace_id: 8974035677896112000
                - connector_ref: chx
                  created: 1627590400
                  id: 7929633474489630000
                  terragrunt_provider: false
                  type: aws
                  updated: 1627686800
                  workspace_id: 8974035677896112000
              provisioner: Enim architecto excepturi molestias nesciunt ut reprehenderit.
              provisioner_version: Sed ut.
              prune_sensitive_data: true
              repository: Esse laboriosam aut rerum fugit expedita quis.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Consequatur iste dolores ipsa consequatur enim magni.
              repository_path: ''
              repository_sha: abc10ed
              repository_submodules: recursive
              run_all: false
              sparse_checkout: Excepturi vero rerum.
              tags:
                foo: bar
              terraform_variable_files:
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
                - repository: Nihil dolor sequi praesentium.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Explicabo pariatur maxime omnis qui nisi.
                  repository_path: ''
                  repository_sha: abc10ed
              terraform_variables:
                Autem officia quae quidem explicabo officiis.:
                  key: ppn
                  value: Expedita sed eos voluptatibus doloremque.
                  value_type: secret
              terragrunt_provider: false
              terragrunt_version: Voluptatem commodi molestiae pariatur voluptas.
              variable_sets:
                - Facere cupiditate ab enim.
                - Suscipit ipsa labore.
                - Cum inventore.
                - Iste autem est vel aliquam.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateWorkspaceResponse'
              example:
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/actions/force-unlock:
    post:
      tags:
        - workspaces
      summary: Force unlock workspace
      description: Force unlock a workspace.
      operationId: workspaces#force-unlock-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: t5
            minLength: 1
            maxLength: 128
          example: i9c
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: tzz
            minLength: 1
            maxLength: 128
          example: g
        - name: identifier
          in: path
          description: Identifier is the project identifier.
          required: true
          schema:
            type: string
            description: Identifier is the project identifier.
            example: ui
            minLength: 1
            maxLength: 128
          example: nlh
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: qnr
            minLength: 1
            maxLength: 128
          example: 7vc
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/modules:
    get:
      tags:
        - workspaces
      summary: List modules
      description: List modules associated with this workspace.
      operationId: workspaces#list-workspace-modules
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: yl
            minLength: 1
            maxLength: 128
          example: 8d
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: tks
            minLength: 1
            maxLength: 128
          example: 3ci
        - name: identifier
          in: path
          description: Identifier is the project identifier.
          required: true
          schema:
            type: string
            description: Identifier is the project identifier.
            example: q
            minLength: 1
            maxLength: 128
          example: i0j
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: s7s
            minLength: 1
            maxLength: 128
          example: bi7
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceModuleCollection'
              example:
                - key: ec2-instance_test
                  source: >-
                    registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
                  version: 5.0.0
                - key: ec2-instance_test
                  source: >-
                    registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
                  version: 5.0.0
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources:
    get:
      tags:
        - workspaces
      summary: List resources
      description: List resources associated with this workspace.
      operationId: workspaces#list-resources
      parameters:
        - name: resource_types
          in: query
          description: Resource types to filter by.
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              example: Fugiat quia corrupti voluptas veritatis delectus.
            description: Resource types to filter by.
            example:
              - aws_instance
              - google_compute_instance
          example:
            - aws_instance
            - google_compute_instance
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '3'
            minLength: 1
            maxLength: 128
          example: o
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: njq
            minLength: 1
            maxLength: 128
          example: '1'
        - name: identifier
          in: path
          description: Workspace identifier.
          required: true
          schema:
            type: string
            description: Workspace identifier.
            example: glb
            minLength: 1
            maxLength: 128
          example: '0'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '88'
            minLength: 1
            maxLength: 128
          example: 86u
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResourcesResponse'
              example:
                data_sources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                outputs:
                  - name: instance_public_ip
                    sensitive: true
                    value: Omnis soluta nisi et.
                  - name: instance_public_ip
                    sensitive: true
                    value: Omnis soluta nisi et.
                resources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{identifier}/resources/search:
    post:
      tags:
        - workspaces
      summary: List resources using selectors
      description: List resources for a workspace using selectors.
      operationId: workspaces#search-resources
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: iu1
            minLength: 1
            maxLength: 128
          example: x
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: j
            minLength: 1
            maxLength: 128
          example: '93'
        - name: identifier
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Quia id est.
          example: Eos nulla rerum velit.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: z
            minLength: 1
            maxLength: 128
          example: i
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchResourcesRequest'
            example:
              limit: 30
              page: 1
              selectors:
                - include_conditions:
                    - attribute: tag.environment
                      operator: equals
                      value: prod
                  path_id: qa
                  provider: aws
                  resource_type: aws_instance
                  search_text: some text
                - include_conditions:
                    - attribute: tag.environment
                      operator: equals
                      value: prod
                  path_id: qa
                  provider: aws
                  resource_type: aws_instance
                  search_text: some text
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResourcesResponse'
              example:
                data_sources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                outputs:
                  - name: instance_public_ip
                    sensitive: true
                    value: Omnis soluta nisi et.
                  - name: instance_public_ip
                    sensitive: true
                    value: Omnis soluta nisi et.
                resources:
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
                  - attributes:
                      ami: ami-830c94ec
                      instance_type: t2.micro
                    drift_attributes:
                      instance_type: t2.nano
                    drift_status: changed
                    mode: resource
                    module: full_stack
                    name: app_server
                    path_id: namespace
                    provider: AWS
                    sensitive_attributes:
                      - instance_type
                    type: S3 Bucket
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/SearchResourcesResponse'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/clone:
    post:
      tags:
        - workspaces
      summary: Clone workspace
      description: Clone the given workspace with new name.
      operationId: workspaces#clone-workspace
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: na
            minLength: 1
            maxLength: 128
          example: '9'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 2p4
            minLength: 1
            maxLength: 128
          example: e5
        - name: workspace
          in: path
          required: true
          schema:
            type: string
            example: Ullam pariatur vel.
          example: Neque officiis natus corporis.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 9eo
            minLength: 1
            maxLength: 128
          example: zzl
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloneWorkspaceRequest'
            example:
              identifier: cwq
              name: resource name
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspacesCreateWorkspaceResponseBody'
              example:
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data:
    get:
      tags:
        - workspaces
      summary: List data
      description: List all stored data for a workspace.
      operationId: workspaces#list-data
      parameters:
        - name: pipeline_execution_id
          in: query
          description: Filter by pipeline execution ID
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by pipeline execution ID
            example: Eum aut quam omnis perspiciatis soluta.
          example: Sit rerum qui explicabo.
        - name: pipeline_stage_id
          in: query
          description: Filter by pipeline execution stage ID
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by pipeline execution stage ID
            example: Culpa sint labore possimus voluptas velit atque.
          example: Soluta id omnis et.
        - name: provisioner_type
          in: query
          description: Filter by provisioner type
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by provisioner type
            example: Quaerat aut rerum perferendis hic.
          example: Dolores aut repellat iusto tempora quam.
        - name: data_type
          in: query
          description: Filter by data type
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by data type
            example: Maiores in ut.
          example: Voluptate voluptas et voluptate vel.
        - name: stack_path
          in: query
          description: Filter by stack path
          allowEmptyValue: true
          schema:
            type: string
            description: Filter by stack path
            example: Autem voluptatum.
          example: Velit incidunt accusantium velit minus laudantium repudiandae.
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: uuz
            minLength: 1
            maxLength: 128
          example: f
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 2d
            minLength: 1
            maxLength: 128
          example: '48'
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Ea doloremque.
          example: Quibusdam impedit earum officiis similique.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: xaw
            minLength: 1
            maxLength: 128
          example: eyv
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceDataResourceCollection'
              example:
                - account: q
                  created: 1785679687111850800
                  data_type: cost_diff
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  org: cq
                  pipeline_execution_id: Accusantium aliquam quis in tempore dolorem molestiae.
                  pipeline_id: Illo deserunt ab.
                  pipeline_stage_id: Magnam nisi beatae sed.
                  project: esl
                  provisioner_type: tf
                  stack_path: Voluptate ratione dolores modi et numquam.
                  stage_id: In molestiae.
                  workspace: workspace123
                - account: q
                  created: 1785679687111850800
                  data_type: cost_diff
                  id: dc538c61-de48-4220-958c-5f3c4f983daa
                  org: cq
                  pipeline_execution_id: Accusantium aliquam quis in tempore dolorem molestiae.
                  pipeline_id: Illo deserunt ab.
                  pipeline_stage_id: Magnam nisi beatae sed.
                  project: esl
                  provisioner_type: tf
                  stack_path: Voluptate ratione dolores modi et numquam.
                  stage_id: In molestiae.
                  workspace: workspace123
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - workspaces
      summary: Create data
      description: >-
        Store binary data generated by the provisioner, such as plans and state
        files.
      operationId: workspaces#create-data
      parameters:
        - name: pipeline_id
          in: query
          description: The unique identifier for the associated pipeline
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline
            example: Culpa et nesciunt numquam quo impedit nisi.
          example: Inventore dolorum molestiae.
        - name: stage_id
          in: query
          description: The unique identifier for a stage
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: The unique identifier for a stage
            example: Autem quod est libero.
          example: Quis ducimus vero earum est.
        - name: pipeline_execution_id
          in: query
          description: The unique identifier for the associated pipeline execution
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline execution
            example: Officia dolor dolores facilis eligendi praesentium.
          example: Qui deserunt sit accusamus qui repudiandae temporibus.
        - name: pipeline_stage_id
          in: query
          description: The unique identifier for the associated pipeline execution stage
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: The unique identifier for the associated pipeline execution stage
            example: Et eum ipsum quam saepe enim exercitationem.
          example: Aliquid illum.
        - name: provisioner_type
          in: query
          description: Type of provisioner that created the data
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Type of provisioner that created the data
            example: tf
            enum:
              - tf
          example: tf
        - name: data_type
          in: query
          description: Type of data stored
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Type of data stored
            example: state_human
            enum:
              - plan_human
              - state_raw
              - state_human
              - cost_breakdown
              - cost_diff
              - modules
              - providers
          example: cost_diff
        - name: policy_action
          in: query
          description: Policy action used during OPA evaluation
          allowEmptyValue: true
          schema:
            type: string
            description: Policy action used during OPA evaluation
            example: afterTerraformApply
          example: afterTerraformApply
        - name: stack_path
          in: query
          description: Optional path to the stack module
          allowEmptyValue: true
          schema:
            type: string
            description: Optional path to the stack module
            example: Accusantium ut cupiditate officiis.
          example: Et placeat atque cumque impedit modi.
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: c8d
            minLength: 1
            maxLength: 128
          example: '4'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: mg
            minLength: 1
            maxLength: 128
          example: f
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: workspace123
          example: workspace123
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: l
            minLength: 1
            maxLength: 128
          example: ebk
        - name: Content-Length
          in: header
          description: Size in bytes of the data.
          allowEmptyValue: true
          schema:
            type: integer
            description: Size in bytes of the data.
            example: 843816495763856000
            format: int64
          example: 5310443489745365000
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateDataResponse'
              example:
                id: dc538c61-de48-4220-958c-5f3c4f983daa
                policy_evaluation:
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                policy_evaluation_message: '- instance type ''xlarge'' is not permitted'
                policy_evaluation_status: error
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}:
    get:
      tags:
        - workspaces
      summary: Show data
      description: >-
        Get binary data generated by the provisioner, such as plans and state
        files.
      operationId: workspaces#show-data
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: hy
            minLength: 1
            maxLength: 128
          example: fh
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: v
            minLength: 1
            maxLength: 128
          example: '7'
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Tenetur natus ad voluptate rerum.
          example: Blanditiis ut inventore omnis sed commodi.
        - name: id
          in: path
          description: The unique identifier for the data
          required: true
          schema:
            type: string
            description: The unique identifier for the data
            example: dc538c61-de48-4220-958c-5f3c4f983daa
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: jx
            minLength: 1
            maxLength: 128
          example: cml
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/data/{id}/evaluate-policy:
    get:
      tags:
        - workspaces
      summary: Evaluate data
      description: >-
        Evaluate policy against previously stored data, such as plans and state
        files.
      operationId: workspaces#evaluate-data
      parameters:
        - name: pipeline_execution_id
          in: query
          description: Pipeline execution associated with this evaluation
          allowEmptyValue: true
          schema:
            type: string
            description: Pipeline execution associated with this evaluation
            example: Rerum blanditiis fugit veniam impedit temporibus.
          example: Vero rerum eaque ex ex laudantium.
        - name: policy_action
          in: query
          description: Policy action used during OPA evaluation
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Policy action used during OPA evaluation
            example: afterTerraformApply
          example: afterTerraformApply
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: e0y
            minLength: 1
            maxLength: 128
          example: r
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 5bn
            minLength: 1
            maxLength: 128
          example: 2u
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Consectetur nulla tempora perferendis dignissimos explicabo.
          example: Ullam voluptates minus.
        - name: id
          in: path
          description: The unique identifier for the data
          required: true
          schema:
            type: string
            description: The unique identifier for the data
            example: dc538c61-de48-4220-958c-5f3c4f983daa
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '1'
            minLength: 1
            maxLength: 128
          example: 4eh
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluateDataResponse'
              example:
                id: dc538c61-de48-4220-958c-5f3c4f983daa
                policy_evaluation:
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                  - message: Sint asperiores qui id.
                    policy_id: Facere maxime amet.
                    policy_name: Dolores quo quasi.
                    policy_set_id: Dolorem aut animi.
                    policy_set_name: Ad quae dicta dolores.
                    policy_status: Quaerat aut amet.
                policy_evaluation_message: '- instance type ''xlarge'' is not permitted'
                policy_evaluation_status: error
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/events:
    post:
      tags:
        - workspaces
      summary: Send event
      description: >-
        Store binary data generated by the provisioner, such as plans and state
        files.
      operationId: workspaces#send-event
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: yvt
            minLength: 1
            maxLength: 128
          example: yo4
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 'n'
            minLength: 1
            maxLength: 128
          example: s
        - name: workspace
          in: path
          description: Workspace associated with this event
          required: true
          schema:
            type: string
            description: Workspace associated with this event
            example: vx
            minLength: 1
            maxLength: 1024
          example: zy
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: g6
            minLength: 1
            maxLength: 128
          example: h
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendEventRequest'
            example:
              data:
                Officiis est et qui et aut.: Incidunt rerum et consequatur quae aspernatur facilis.
                Sunt magnam aspernatur.: Voluptate non dolores.
              event_type: drifted
              metadata:
                PlannedChangesCount: 2242289416486480400
                activity_status: success
                activity_type: apply
                cost_breakdown_uuid: Aut iure maiores est sit hic magnam.
                cost_currency: Blanditiis sunt similique voluptate corporis.
                cost_diff_total_monthly: Doloremque nemo sed explicabo quia atque nesciunt.
                cost_diff_uuid: Sed corporis deserunt assumenda neque maiores assumenda.
                cost_past_total_monthly: Inventore cumque dolorem aspernatur et.
                cost_total_monthly: Corporis voluptates sapiente culpa.
                cost_total_monthly_percentage_change: Ut natus.
                drift_counts:
                  added: 5453536451209125000
                  changed: 3005812491622674400
                  deleted: 80726413424464500
                  imported: 3301990761375628300
                  removed: 5410369387984331000
                  unchanged: 6252460999198102000
                enable_solutions_factory: true
                git_branch: Earum voluptas vitae suscipit.
                git_commit_message: Atque velit blanditiis fugiat et.
                git_commit_sha: Officiis rerum vitae.
                git_repo: Repellendus eligendi perspiciatis quia voluptate fuga vel.
                modules_uuid: Pariatur repellat quod dolor.
                output_counts:
                  added: 5453536451209125000
                  changed: 3005812491622674400
                  deleted: 80726413424464500
                  imported: 3301990761375628300
                  removed: 5410369387984331000
                  unchanged: 6252460999198102000
                pipeline: Nihil cum recusandae quis nisi aliquam.
                pipeline_execution_id: Alias maiores tempora est magnam.
                pipeline_execution_number: Qui sit libero et.
                pipeline_name: Accusantium a sapiente aliquid iure.
                pipeline_stage_id: Molestiae aut maxime ducimus quis.
                plan_uuid: Tenetur aut labore natus dolor quis quo.
                providers_uuid: Neque aut ullam eum aperiam.
                provisioner: Est sit architecto ut in cum.
                provisioner_version: Voluptates et et minus voluptate non consequatur.
                resource_counts:
                  added: 5453536451209125000
                  changed: 3005812491622674400
                  deleted: 80726413424464500
                  imported: 3301990761375628300
                  removed: 5410369387984331000
                  unchanged: 6252460999198102000
                state_checksum: Fuga delectus eveniet.
                state_uuid: Aliquam rerum.
                trigger:
                  Voluptatum voluptatem aliquid nisi fuga consequatur est.: Recusandae eos et possimus laudantium dolor.
              pipeline_execution_id: Qui delectus.
              pipeline_stage_id: Repudiandae saepe ad autem modi.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/pipelines:
    get:
      tags:
        - workspaces
      summary: List pipelines
      description: List the pipelines where the workspace is been used
      operationId: workspaces#list-pipelines
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: j
            minLength: 1
            maxLength: 128
          example: 9s
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: go
            minLength: 1
            maxLength: 128
          example: b
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Beatae sed eligendi adipisci occaecati magni.
          example: Voluptatem et nihil sint ut facilis.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: kr
            minLength: 1
            maxLength: 128
          example: tm2
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPipelinesResponse'
              example:
                account: vjz
                org: p2
                pipelines:
                  - Rerum quo non consectetur.
                  - Consequuntur dignissimos.
                project: 62e
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions:
    post:
      tags:
        - workspaces
      summary: Create remote execution
      description: Create a remote execution for a workspace.
      operationId: workspaces#create-remote-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ufd
            minLength: 1
            maxLength: 128
          example: x
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: sv
            minLength: 1
            maxLength: 128
          example: 'n'
        - name: workspace
          in: path
          description: The workspace associated with the remote execution.
          required: true
          schema:
            type: string
            description: The workspace associated with the remote execution.
            example: Aut sapiente cumque.
          example: Et incidunt.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: x
            minLength: 1
            maxLength: 128
          example: e
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRemoteExecutionRequest'
            example:
              custom_arguments:
                Rerum et qui quod sed aut laboriosam.:
                  - Est nobis.
                  - Nam cupiditate.
                Sunt consequatur incidunt modi error voluptatem.:
                  - Explicabo quos cum ea totam excepturi.
                  - Facilis in omnis asperiores assumenda.
                  - Nulla est.
                  - Inventore autem id officia et consequatur voluptas.
                Voluptate non eum provident nemo possimus distinctio.:
                  - Debitis a aliquam soluta dolorem.
                  - Eligendi cumque qui quos.
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRemoteExecutionResponse'
              example:
                account: 8mb
                created: 902550952491435400
                custom_arguments:
                  Veritatis est nisi quia molestiae vel.:
                    - Ut ipsa excepturi vel.
                    - Omnis omnis.
                executed: false
                id: ee07972d-f30b-4307-823b-eb9160200d90
                org: '6'
                pipeline_execution_id: Repudiandae animi esse rem qui ipsum.
                pipeline_execution_url: Quibusdam quam.
                project: '76'
                sha256_checksum: Corrupti expedita omnis aliquam dolor.
                updated: 6768051157987252000
                workspace: Vitae assumenda nulla laudantium commodi.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}:
    get:
      tags:
        - workspaces
      summary: Show remote execution
      description: Find remote execution
      operationId: workspaces#find-remote-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: z
            minLength: 1
            maxLength: 128
          example: 2v
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: h
            minLength: 1
            maxLength: 128
          example: jl
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Iste a.
          example: Amet et eius sit consequuntur commodi iste.
        - name: id
          in: path
          description: The ID of the remote execution
          required: true
          schema:
            type: string
            description: The ID of the remote execution
            example: 448180c0-0aba-4b39-ad24-d020f559b666
            format: uuid
          example: b3e11b80-011f-495a-bcce-1be90f5800b0
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 5o
            minLength: 1
            maxLength: 128
          example: bx
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowRemoteExecutionResponse'
              example:
                account: c5k
                created: 3478899471543610000
                custom_arguments:
                  Eius nisi quae iste quia aut illo.:
                    - Cupiditate ex deserunt sapiente quia non.
                    - Quia amet dolorem ut.
                  Sed ab modi veniam magni autem et.:
                    - >-
                      Nesciunt repellendus eos modi enim voluptatem
                      necessitatibus.
                    - Ullam sunt nesciunt qui et quam ex.
                    - >-
                      Voluptates maiores qui consequatur veniam consequatur
                      aliquid.
                  Soluta vero impedit dolorum sint in sed.:
                    - Dicta esse error sapiente omnis porro et.
                    - Deserunt et consectetur.
                    - Ad fugit inventore.
                    - Voluptatibus quaerat.
                executed: true
                id: 71ac5220-3224-4f43-bc2b-9ac0a5545509
                org: tzo
                pipeline_execution_id: Aliquid nobis rerum inventore voluptas qui voluptatem.
                pipeline_execution_url: Exercitationem ipsum voluptas ea.
                project: s2
                sha256_checksum: Qui voluptatem ducimus.
                updated: 2199127951116502300
                workspace: Et quia praesentium.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/download:
    get:
      tags:
        - workspaces
      summary: Download remote execution
      description: Download the source code for the remote plan.
      operationId: workspaces#download-remote-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ssp
            minLength: 1
            maxLength: 128
          example: i
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: fq
            minLength: 1
            maxLength: 128
          example: j2
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Accusamus vero earum.
          example: Omnis laudantium voluptates excepturi tempore et qui.
        - name: id
          in: path
          description: The ID of the remote execution
          required: true
          schema:
            type: string
            description: The ID of the remote execution
            example: 7b780142-c3c7-43ad-a049-a2278e8fec3a
            format: uuid
          example: bde8d9da-1572-4a1a-9cb3-2b4672c48ae6
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 5q
            minLength: 1
            maxLength: 128
          example: lmw
      responses:
        '200':
          description: OK response.
          headers:
            Content-Digest:
              description: >-
                Content-Digest header as defined in
                https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest.
                Sha256 is the only supported algorithm.
              schema:
                type: string
                description: >-
                  Content-Digest header as defined in
                  https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest.
                  Sha256 is the only supported algorithm.
                example: Reiciendis unde aut aut et vel id.
              example: Et sunt.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/execute:
    post:
      tags:
        - workspaces
      summary: execute-remote-execution workspaces
      description: Execute the remote execution
      operationId: workspaces#execute-remote-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: b
            minLength: 1
            maxLength: 128
          example: 2py
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: h
            minLength: 1
            maxLength: 128
          example: ae
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Autem iusto aut explicabo esse atque.
          example: Non est officia sunt.
        - name: id
          in: path
          description: The ID of the remote execution
          required: true
          schema:
            type: string
            description: The ID of the remote execution
            example: c3feab43-ab6e-40b6-b93e-a96648c55f86
            format: uuid
          example: 89c0bf8a-7388-4e53-af5c-012f1b8483dd
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '9'
            minLength: 1
            maxLength: 128
          example: ii
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RemoteExecution'
              example:
                account: jy
                created: 405921273091714560
                custom_arguments:
                  Aspernatur iste quo quo magni.:
                    - Accusantium tenetur voluptatem ut officia totam.
                    - Ut quaerat delectus.
                    - Sapiente quis esse ex quia incidunt.
                    - Cupiditate tenetur vero ipsum.
                  Sit rem cupiditate ut et.:
                    - Consequuntur totam.
                    - Ut qui consequuntur est qui voluptas.
                    - Cumque voluptates.
                  Tempora eum maiores.:
                    - Asperiores et autem.
                    - Aspernatur et non mollitia nulla modi.
                    - Repellendus officiis.
                    - Quae ad et rerum aut.
                executed: true
                id: 9c80449b-b428-47d6-adbd-c3c3e53dba1a
                org: bvr
                pipeline_execution_id: Saepe ducimus illo aut asperiores sit.
                pipeline_execution_url: Accusantium molestias.
                project: '2'
                sha256_checksum: Dolorem aperiam.
                updated: 5403896783350046000
                workspace: Sit est.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/remote-executions/{id}/upload:
    post:
      tags:
        - workspaces
      summary: Upload remote execution source
      description: Upload the source code for the remote execution.
      operationId: workspaces#upload-remote-execution
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '4'
            minLength: 1
            maxLength: 128
          example: e
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '6'
            minLength: 1
            maxLength: 128
          example: 9p1
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Aut impedit itaque.
          example: Modi corrupti possimus dolores amet at.
        - name: id
          in: path
          description: The ID of the remote execution
          required: true
          schema:
            type: string
            description: The ID of the remote execution
            example: 44f60521-9feb-4e97-8cf7-07880325f323
            format: uuid
          example: 427ddcbb-9e5a-4e79-a300-60a7b600f8a6
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: d3
            minLength: 1
            maxLength: 128
          example: '67'
        - name: Content-Length
          in: header
          description: Size in bytes of the source code.
          allowEmptyValue: true
          schema:
            type: integer
            description: Size in bytes of the source code.
            example: 5651528278077390000
            format: int64
          example: 949805237331761700
        - name: Content-Digest
          in: header
          description: >-
            Content-Digest header as defined in
            https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest.
            Sha256 is the only supported algorithm.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: >-
              Content-Digest header as defined in
              https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Digest.
              Sha256 is the only supported algorithm.
            example: Voluptates praesentium praesentium soluta sit velit.
          example: Sapiente sed consequatur libero in.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadRemoteExecutionResponse'
              example:
                account: ce
                created: 8826787117870114000
                custom_arguments:
                  Consectetur sequi nesciunt et.:
                    - Quaerat fuga expedita eaque alias.
                    - Voluptatem sed voluptatum velit veniam dolorem qui.
                    - Enim aperiam totam.
                  Non qui eaque.:
                    - Officiis et accusantium ipsa.
                    - Vitae qui.
                    - Consequatur est et minus non.
                  Qui fuga.:
                    - Non qui amet deleniti vel id voluptatibus.
                    - Voluptatum asperiores.
                    - Maxime ut.
                executed: false
                id: 9d501ca1-23b5-4673-9c98-1ca70552452a
                org: s8e
                pipeline_execution_id: Consequatur voluptate fugit quia repudiandae eius.
                pipeline_execution_url: Totam non.
                project: w
                sha256_checksum: Quos possimus temporibus sit.
                updated: 2238432088016602600
                workspace: Id ex cupiditate et.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types:
    get:
      tags:
        - workspaces
      summary: List workspace resource types
      description: Retrieves the resource types used by workspaces
      operationId: workspaces#list-workspace-resource-types
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 63x
            minLength: 1
            maxLength: 128
          example: '6'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: a6
            minLength: 1
            maxLength: 128
          example: 0er
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Incidunt quam quod nihil voluptas odio.
          example: Sunt odit autem dolor tenetur expedita nemo.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: nug
            minLength: 1
            maxLength: 128
          example: j5z
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Porro dolores et perspiciatis ipsa.
                description: List of resource types
                example:
                  - Rerum repudiandae magni consequuntur.
                  - Tenetur est quam eaque.
                  - Temporibus esse voluptate harum.
                  - Sed ab non dolor et nisi.
              example:
                - Animi ratione.
                - Dignissimos enim aut amet beatae rerum.
                - Non ipsam culpa.
                - Laboriosam ut explicabo fugiat sit.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resource-types/{resource_type}/attributes:
    get:
      tags:
        - workspaces
      summary: List workspace resource type attributes
      description: Retrieves the resource type attributes used by workspaces
      operationId: workspaces#list-workspace-resource-type-attributes
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: g
            minLength: 1
            maxLength: 128
          example: v
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '3'
            minLength: 1
            maxLength: 128
          example: 7st
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Et vitae esse minus itaque aut aut.
          example: Eum atque.
        - name: resource_type
          in: path
          description: Resource type
          required: true
          schema:
            type: string
            description: Resource type
            example: Voluptatem temporibus fuga cumque nulla laudantium eos.
          example: Et qui modi.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: m
            minLength: 1
            maxLength: 128
          example: t7q
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Fugit exercitationem dolore est et.
                description: List of resource type attributes
                example:
                  - Est nisi voluptatem illum.
                  - Officiis in repellendus enim vel aliquid.
              example:
                - Consequatur aut non sed.
                - Error explicabo.
                - Saepe quis sequi.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/resources:
    delete:
      tags:
        - workspaces
      summary: Delete resources
      description: Deletes destroyed resources for a workspace.
      operationId: workspaces#delete-resources
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 5n
            minLength: 1
            maxLength: 128
          example: fjw
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: rzd
            minLength: 1
            maxLength: 128
          example: b
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Et et laboriosam enim rerum quia.
          example: Id recusandae cumque non quo.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: p3d
            minLength: 1
            maxLength: 128
          example: qtp
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteResourcesRequest'
            example:
              resources:
                - module: Accusantium aspernatur rerum dicta magni velit eveniet.
                  name: Pariatur itaque sed ut.
                  path_id: Id eum ab voluptatem officiis omnis.
                  provider: Pariatur ut aperiam fugiat qui architecto.
                  type: Et consequatur voluptas est temporibus minima.
                - module: Accusantium aspernatur rerum dicta magni velit eveniet.
                  name: Pariatur itaque sed ut.
                  path_id: Id eum ab voluptatem officiis omnis.
                  provider: Pariatur ut aperiam fugiat qui architecto.
                  type: Et consequatur voluptas est temporibus minima.
                - module: Accusantium aspernatur rerum dicta magni velit eveniet.
                  name: Pariatur itaque sed ut.
                  path_id: Id eum ab voluptatem officiis omnis.
                  provider: Pariatur ut aperiam fugiat qui architecto.
                  type: Et consequatur voluptas est temporibus minima.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteResourcesResponse'
              example:
                results:
                  - error: Libero iste sit quibusdam doloremque.
                    module: Neque cum consectetur ut nulla.
                    name: Laborum facilis vel illo sit aut ad.
                    provider: Suscipit hic voluptatem beatae.
                    status: deleted
                    type: Corporis voluptatem velit non fuga.
                  - error: Libero iste sit quibusdam doloremque.
                    module: Neque cum consectetur ut nulla.
                    name: Laborum facilis vel illo sit aut ad.
                    provider: Suscipit hic voluptatem beatae.
                    status: deleted
                    type: Corporis voluptatem velit non fuga.
                summary:
                  deleted: 6250241410445223000
                  failed: 5629116169965849000
                  skipped: 119490300577806300
                  total: 1196836203758572300
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/DeleteResourcesResponse'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    patch:
      tags:
        - workspaces
      summary: Update resources
      description: Updates resources for a workspace.
      operationId: workspaces#update-resources
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '4'
            minLength: 1
            maxLength: 128
          example: wr9
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 1cs
            minLength: 1
            maxLength: 128
          example: 7co
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: Dolor provident ipsum vel.
          example: Velit mollitia est.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '82'
            minLength: 1
            maxLength: 128
          example: 76g
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateResourcesRequest'
            example:
              resources:
                - attributes: Quod voluptate est officia.
                  mode: Id deleniti saepe maxime tempora.
                  module: Qui possimus ea.
                  name: Atque et velit non eos.
                  path_id: Quas voluptatem.
                  provider: Aut autem.
                  sensitive_attribute_paths:
                    - Qui ut adipisci deleniti dolorum.
                    - Mollitia hic.
                  type: Odio reprehenderit quia.
                - attributes: Quod voluptate est officia.
                  mode: Id deleniti saepe maxime tempora.
                  module: Qui possimus ea.
                  name: Atque et velit non eos.
                  path_id: Quas voluptatem.
                  provider: Aut autem.
                  sensitive_attribute_paths:
                    - Qui ut adipisci deleniti dolorum.
                    - Mollitia hic.
                  type: Odio reprehenderit quia.
                - attributes: Quod voluptate est officia.
                  mode: Id deleniti saepe maxime tempora.
                  module: Qui possimus ea.
                  name: Atque et velit non eos.
                  path_id: Quas voluptatem.
                  provider: Aut autem.
                  sensitive_attribute_paths:
                    - Qui ut adipisci deleniti dolorum.
                    - Mollitia hic.
                  type: Odio reprehenderit quia.
                - attributes: Quod voluptate est officia.
                  mode: Id deleniti saepe maxime tempora.
                  module: Qui possimus ea.
                  name: Atque et velit non eos.
                  path_id: Quas voluptatem.
                  provider: Aut autem.
                  sensitive_attribute_paths:
                    - Qui ut adipisci deleniti dolorum.
                    - Mollitia hic.
                  type: Odio reprehenderit quia.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateResourcesResponse'
              example:
                results:
                  - error: Beatae exercitationem recusandae aspernatur fuga id.
                    mode: Quae repellat sequi nulla architecto eum.
                    module: Illo quae inventore explicabo et.
                    name: Et debitis.
                    provider: Itaque quas est rerum.
                    status: failed
                    type: Ut et ea vero repudiandae.
                  - error: Beatae exercitationem recusandae aspernatur fuga id.
                    mode: Quae repellat sequi nulla architecto eum.
                    module: Illo quae inventore explicabo et.
                    name: Et debitis.
                    provider: Itaque quas est rerum.
                    status: failed
                    type: Ut et ea vero repudiandae.
                summary:
                  failed: 1486761336074332700
                  skipped: 8788134602931658000
                  total: 965565015304788000
                  updated: 8283236234346798000
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/UpdateResourcesResponse'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend:
    get:
      tags:
        - tf-standard-backend
      summary: Show terraform state
      operationId: tf-standard-backend#pull-terraform-state
      parameters:
        - name: accountIdentifier
          in: query
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 7t2
            minLength: 1
            maxLength: 128
          example: ki5
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: ts
            minLength: 1
            maxLength: 128
          example: m
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: vhk
            minLength: 1
            maxLength: 128
          example: g
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: workspace123
          example: workspace123
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - tf-standard-backend
      summary: Create terraform state
      operationId: tf-standard-backend#push-terraform-state
      parameters:
        - name: accountIdentifier
          in: query
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: z
            minLength: 1
            maxLength: 128
          example: j4
        - name: ID
          in: query
          description: >-
            If the backend is locked, this value must match the persisted
            terraform lock id.
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              If the backend is locked, this value must match the persisted
              terraform lock id.
            example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
          example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '97'
            minLength: 1
            maxLength: 128
          example: '22'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: mh
            minLength: 1
            maxLength: 128
          example: a9
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: workspace123
          example: workspace123
        - name: Content-Length
          in: header
          description: Size in bytes of the state.
          allowEmptyValue: true
          schema:
            type: integer
            description: Size in bytes of the state.
            example: 318069181712814600
            format: int64
          example: 6374232862799218000
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/terraform-backend/lock:
    delete:
      tags:
        - tf-standard-backend
      summary: Unlock workspace
      operationId: tf-standard-backend#unlock-workspace
      parameters:
        - name: accountIdentifier
          in: query
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: av
            minLength: 1
            maxLength: 128
          example: m1
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 70q
            minLength: 1
            maxLength: 128
          example: s
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: q
            minLength: 1
            maxLength: 128
          example: t
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: workspace123
          example: workspace123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UnlockWorkspaceRequest'
            example:
              created: '2023-07-03T20:16:18.382839Z'
              id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
              info: production workspace lock
              operation: OperationTypePlan
              path: >-
                /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
              version: 1.0.0
              who: user1
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - tf-standard-backend
      summary: Lock workspace
      operationId: tf-standard-backend#lock-workspace
      parameters:
        - name: accountIdentifier
          in: query
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: vnz
            minLength: 1
            maxLength: 128
          example: 90h
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 2a
            minLength: 1
            maxLength: 128
          example: k
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: 1zs
            minLength: 1
            maxLength: 128
          example: k8p
        - name: workspace
          in: path
          description: Workspace identifier
          required: true
          schema:
            type: string
            description: Workspace identifier
            example: workspace123
          example: workspace123
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LockWorkspaceRequest'
            example:
              created: '2023-07-03T20:16:18.382839Z'
              id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
              info: production workspace lock
              operation: OperationTypePlan
              path: >-
                /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
              version: 1.0.0
              who: user1
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmLockinfo'
              example:
                account: k
                created: '2023-07-03T20:16:18.382839Z'
                id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
                info: production workspace lock
                operation: OperationTypePlan
                org: '3'
                path: >-
                  /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
                project: zc0
                version: 1.0.0
                who: user1
                workspace: workspace123
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables:
    get:
      tags:
        - variables
      summary: List workspace variables
      description: List all workspace variables.
      operationId: variables#list-variables
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: k8
            minLength: 1
            maxLength: 128
          example: wr5
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: p
            minLength: 1
            maxLength: 128
          example: 0vv
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Ipsa non necessitatibus.
          example: Ipsa molestiae.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: sd
            minLength: 1
            maxLength: 128
          example: mf8
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceVariableResourceCollection'
              example:
                - account: i
                  created: 4430897693983287300
                  key: g
                  kind: env
                  org: f8
                  project: ll
                  updated: 6466361052361896000
                  value: Earum quos accusamus ut velit labore ex.
                  value_type: string
                  workspace: Odit porro qui voluptas quam iure perferendis.
                - account: i
                  created: 4430897693983287300
                  key: g
                  kind: env
                  org: f8
                  project: ll
                  updated: 6466361052361896000
                  value: Earum quos accusamus ut velit labore ex.
                  value_type: string
                  workspace: Odit porro qui voluptas quam iure perferendis.
                - account: i
                  created: 4430897693983287300
                  key: g
                  kind: env
                  org: f8
                  project: ll
                  updated: 6466361052361896000
                  value: Earum quos accusamus ut velit labore ex.
                  value_type: string
                  workspace: Odit porro qui voluptas quam iure perferendis.
                - account: i
                  created: 4430897693983287300
                  key: g
                  kind: env
                  org: f8
                  project: ll
                  updated: 6466361052361896000
                  value: Earum quos accusamus ut velit labore ex.
                  value_type: string
                  workspace: Odit porro qui voluptas quam iure perferendis.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - variables
      summary: Create workspace variable
      description: Creates a new workspace variable
      operationId: variables#create-variable
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: o
            minLength: 1
            maxLength: 128
          example: px
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: z1h
            minLength: 1
            maxLength: 128
          example: gv
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Qui reiciendis soluta incidunt quia.
          example: Et voluptatem.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: zg
            minLength: 1
            maxLength: 128
          example: tw
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWorkspaceVariableRequest'
            example:
              key: cxa
              kind: tf
              value: Consequuntur tempora consectetur.
              value_type: secret
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateWorkspaceVariableResponse'
              example:
                account: 'y'
                created: 8999319795914507000
                key: ws
                kind: tf
                org: s
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
                project: '1'
                updated: 2102771776940098800
                value: Vero deserunt.
                value_type: string
                workspace: Aliquid quasi iste cum sequi consequatur.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/{kind}/{key}:
    delete:
      tags:
        - variables
      summary: Destroy workspace variable
      description: Deletes the given workspace variable.
      operationId: variables#destroy-variable
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: di
            minLength: 1
            maxLength: 128
          example: '0'
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: '76'
            minLength: 1
            maxLength: 128
          example: z
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Magnam eum ut suscipit libero.
          example: Sit dignissimos sapiente eligendi.
        - name: kind
          in: path
          description: Kind is the classfcation of the variable.
          required: true
          schema:
            type: string
            description: Kind is the classfcation of the variable.
            example: tf
            enum:
              - env
              - tf
          example: env
        - name: key
          in: path
          description: Key is the identifier for the secret.
          required: true
          schema:
            type: string
            description: Key is the identifier for the secret.
            example: 5k7
            pattern: ^[a-zA-Z0-9_]+$
            minLength: 1
            maxLength: 128
          example: p
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: vgx
            minLength: 1
            maxLength: 128
          example: 9j
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DestroyWorkspaceVariableResponse'
              example:
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - variables
      summary: Show workspace variable
      description: Show an individual workspace variable.
      operationId: variables#show-variable
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: j
            minLength: 1
            maxLength: 128
          example: uh
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: k7
            minLength: 1
            maxLength: 128
          example: 0s
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Molestiae quaerat qui rem nulla.
          example: Sequi amet ipsum aliquid vel officiis quo.
        - name: kind
          in: path
          description: Kind is the classfcation of the variable.
          required: true
          schema:
            type: string
            description: Kind is the classfcation of the variable.
            example: env
            enum:
              - env
              - tf
          example: env
        - name: key
          in: path
          description: Key is the identifier for the secret.
          required: true
          schema:
            type: string
            description: Key is the identifier for the secret.
            example: w2
            pattern: ^[a-zA-Z0-9_]+$
            minLength: 1
            maxLength: 128
          example: nkp
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 7y
            minLength: 1
            maxLength: 128
          example: l8
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowWorkspaceVariableResponse'
              example:
                account: na
                created: 8908547145594089000
                key: vd
                kind: tf
                org: 40j
                project: v
                updated: 5390043880046454000
                value: Molestiae sint ipsum molestiae.
                value_type: string
                workspace: Error quam corporis a.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - variables
      summary: Update workspace variable
      description: Updates the given workspace variable with new info.
      operationId: variables#update-variable
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: upj
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: lu4
            minLength: 1
            maxLength: 128
          example: 0g6
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Aspernatur quis illum nemo.
          example: Eaque aut aperiam in.
        - name: kind
          in: path
          description: Kind is the classfcation of the variable.
          required: true
          schema:
            type: string
            description: Kind is the classfcation of the variable.
            example: env
            enum:
              - env
              - tf
          example: env
        - name: key
          in: path
          description: Key is the identifier for the secret.
          required: true
          schema:
            type: string
            description: Key is the identifier for the secret.
            example: b
            pattern: ^[a-zA-Z0-9_]+$
            minLength: 1
            maxLength: 128
          example: b6
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: q
            minLength: 1
            maxLength: 128
          example: 2w
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWorkspaceVariableRequest'
            example:
              value: Alias aut voluptatem maxime nemo nostrum.
              value_type: secret
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateWorkspaceVariableResponse'
              example:
                policy_evaluation:
                  account_id: XRQAjvT37acOiXx9PRaQMF
                  action: onrun
                  created: 1636370209475
                  details:
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                    - account_id: eBqAoNchMLKigC_qZ5EdC
                      action: onrun
                      created: 1636669297674
                      description: Captures critical production policies
                      details:
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                        - deny_messages:
                            - >-
                              deployment stage 'example-stage' does not have a
                              HarnessApproval step
                            - >-
                              deployment stage 'example-stage' has step
                              'run-script' that is forbidden type 'ShellScript'
                          output: |-
                            {
                                "deny": [
                                    "deployment stage 'deploy' does not have a HarnessApproval step"
                                ],
                                "stages_with_approval": []
                            }
                          policy:
                            account_id: eBqAoNchMLKigC_qZ5EdC
                            created: 1636669297674
                            identifier: policy-1
                            name: Pipeline Approval
                            org_id: test-org
                            project_id: test-project
                            rego: ''
                            updated: 1636669297674
                          rego_error: >-
                            policy.rego:25: rego_parse_error: non-terminated
                            string m == "test
                          status: error
                      enabled: true
                      identifier: policyset-1
                      name: Production Policies
                      org_id: test-org
                      project_id: test-project
                      status: error
                      type: pipeline
                      updated: 1636669297674
                  entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
                  id: 123
                  input: ''
                  org_id: test-org
                  project_id: test-project
                  status: error
                  type: pipeline,service
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/PolicyViolationError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/{workspace}/variables/merged:
    get:
      tags:
        - variables
      summary: Get variables, provider connectors, and variable files
      description: >-
        Returns all terraform/environment variables, provider connectors, and
        variable files for a workspace
      operationId: variables#get-variables-and-providers
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: nfd
            minLength: 1
            maxLength: 128
          example: r
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: i9
            minLength: 1
            maxLength: 128
          example: p
        - name: workspace
          in: path
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          required: true
          schema:
            type: string
            description: >-
              Workspace is the resource workspace this variable is associated
              with.
            example: Labore in iusto sint aperiam.
          example: Similique ullam atque quos.
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: jk
            minLength: 1
            maxLength: 128
          example: '6'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetVariablesAndProvidersResponse'
              example:
                environment_variables:
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                provider_connectors:
                  - associatedTemplate: >-
                      Aut odit vel distinctio necessitatibus voluptatem
                      deserunt.
                    associatedVariableSet: Qui modi tenetur quia perferendis.
                    connector_ref: Et recusandae placeat excepturi aut sed.
                    created: 8271516165869049000
                    inUse: true
                    isInWorkspace: true
                    isLocked: false
                    permissions:
                      canDelete: false
                    source: variableSet
                    type: azure
                    updated: 8272095620861659000
                    uuid: Voluptatem velit maxime quis.
                  - associatedTemplate: >-
                      Aut odit vel distinctio necessitatibus voluptatem
                      deserunt.
                    associatedVariableSet: Qui modi tenetur quia perferendis.
                    connector_ref: Et recusandae placeat excepturi aut sed.
                    created: 8271516165869049000
                    inUse: true
                    isInWorkspace: true
                    isLocked: false
                    permissions:
                      canDelete: false
                    source: variableSet
                    type: azure
                    updated: 8272095620861659000
                    uuid: Voluptatem velit maxime quis.
                  - associatedTemplate: >-
                      Aut odit vel distinctio necessitatibus voluptatem
                      deserunt.
                    associatedVariableSet: Qui modi tenetur quia perferendis.
                    connector_ref: Et recusandae placeat excepturi aut sed.
                    created: 8271516165869049000
                    inUse: true
                    isInWorkspace: true
                    isLocked: false
                    permissions:
                      canDelete: false
                    source: variableSet
                    type: azure
                    updated: 8272095620861659000
                    uuid: Voluptatem velit maxime quis.
                  - associatedTemplate: >-
                      Aut odit vel distinctio necessitatibus voluptatem
                      deserunt.
                    associatedVariableSet: Qui modi tenetur quia perferendis.
                    connector_ref: Et recusandae placeat excepturi aut sed.
                    created: 8271516165869049000
                    inUse: true
                    isInWorkspace: true
                    isLocked: false
                    permissions:
                      canDelete: false
                    source: variableSet
                    type: azure
                    updated: 8272095620861659000
                    uuid: Voluptatem velit maxime quis.
                terraform_variables:
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                  - associatedTemplate: Sequi molestiae.
                    associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
                    created: 7854777466879569000
                    inUse: false
                    includeInWorkspace: true
                    isLocked: false
                    key: Voluptatem quis quae ut atque et.
                    kind: Non qui.
                    permissions:
                      canDelete: false
                      canEditKey: true
                      canEditValue: false
                      canEditValueType: true
                    source: workspace
                    updated: 2304535647252161500
                    uuid: Sint qui.
                    value: Deserunt repellendus pariatur quo sit ipsam.
                    value_type: Animi veniam.
                variable_files:
                  - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
                    associatedVariableSet: Ut iste aut.
                    inUse: true
                    isInWorkspace: true
                    isLocked: true
                    permissions:
                      canDelete: true
                      canEdit: false
                    repository: Laboriosam iure excepturi quam.
                    repository_branch: At quia harum exercitationem non.
                    repository_commit: Amet id dicta omnis expedita quae.
                    repository_connector: Sint hic sit libero ea maiores aut.
                    repository_path: Autem numquam incidunt nesciunt quas.
                    repository_sha: Ut et id optio voluptatem quasi.
                    source: template
                    uuid: Dignissimos dolorum velit et porro pariatur.
                  - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
                    associatedVariableSet: Ut iste aut.
                    inUse: true
                    isInWorkspace: true
                    isLocked: true
                    permissions:
                      canDelete: true
                      canEdit: false
                    repository: Laboriosam iure excepturi quam.
                    repository_branch: At quia harum exercitationem non.
                    repository_commit: Amet id dicta omnis expedita quae.
                    repository_connector: Sint hic sit libero ea maiores aut.
                    repository_path: Autem numquam incidunt nesciunt quas.
                    repository_sha: Ut et id optio voluptatem quasi.
                    source: template
                    uuid: Dignissimos dolorum velit et porro pariatur.
                  - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
                    associatedVariableSet: Ut iste aut.
                    inUse: true
                    isInWorkspace: true
                    isLocked: true
                    permissions:
                      canDelete: true
                      canEdit: false
                    repository: Laboriosam iure excepturi quam.
                    repository_branch: At quia harum exercitationem non.
                    repository_commit: Amet id dicta omnis expedita quae.
                    repository_connector: Sint hic sit libero ea maiores aut.
                    repository_path: Autem numquam incidunt nesciunt quas.
                    repository_sha: Ut et id optio voluptatem quasi.
                    source: template
                    uuid: Dignissimos dolorum velit et porro pariatur.
                  - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
                    associatedVariableSet: Ut iste aut.
                    inUse: true
                    isInWorkspace: true
                    isLocked: true
                    permissions:
                      canDelete: true
                      canEdit: false
                    repository: Laboriosam iure excepturi quam.
                    repository_branch: At quia harum exercitationem non.
                    repository_commit: Amet id dicta omnis expedita quae.
                    repository_connector: Sint hic sit libero ea maiores aut.
                    repository_path: Autem numquam incidunt nesciunt quas.
                    repository_sha: Ut et id optio voluptatem quasi.
                    source: template
                    uuid: Dignissimos dolorum velit et porro pariatur.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/projects/{project}/workspaces/provisioners-ratio:
    get:
      tags:
        - workspaces
      summary: List provisioners ratio
      description: Retrieves the ratio of provisioners used by workspaces
      operationId: workspaces#list-provisioners-ratio
      parameters:
        - name: start_time
          in: query
          description: Start time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: Start time filter (Unix timestamp)
            example: 599267409165639400
            format: int64
          example: 5074340712893388000
        - name: end_time
          in: query
          description: End time filter (Unix timestamp)
          allowEmptyValue: true
          schema:
            type: integer
            description: End time filter (Unix timestamp)
            example: 2679587431488361500
            format: int64
          example: 8401309650590548000
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 2f
            minLength: 1
            maxLength: 128
          example: gbo
        - name: project
          in: path
          description: Project is the project identifier.
          required: true
          schema:
            type: string
            description: Project is the project identifier.
            example: c4x
            minLength: 1
            maxLength: 128
          example: w
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: bzf
            minLength: 1
            maxLength: 128
          example: c
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProvisionersRatioResponse'
              example:
                provisioner:
                  Et officia debitis sit nobis ea.: 0.5049561881503309
                  Et repellendus.: 0.3065017526651024
                total: 0.27829752400702457
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/variable-set:
    post:
      tags:
        - variable_sets
      summary: Create a new Variable Set on org level
      description: Create a new Variable Set on org level.
      operationId: variable_sets#create-variable-set-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: 5p
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: y86
            minLength: 1
            maxLength: 128
          example: g3
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVariableSetRequestOrgScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Dolor officiis aut ab adipisci quis illo.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Eaque temporibus consequatur commodi.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Provident animi repellendus corporis fugiat quam cupiditate.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 7312445357296802000
              identifier: 1a
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Earum fugit.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Fugit et consequatur necessitatibus sapiente minus.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/variable-set/{identifier}:
    delete:
      tags:
        - variable_sets
      summary: Delete Variable Set by identifier on org level
      description: Delete Variable Set by identifier on org level.
      operationId: variable_sets#delete-variable-set-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: mrw
            minLength: 1
            maxLength: 128
          example: 2g
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: lw
            minLength: 1
            maxLength: 128
          example: v8
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ts
            minLength: 1
            maxLength: 128
          example: m
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - variable_sets
      summary: Get Variable Set by identifier on org level
      description: Get Variable Set by identifier on org level.
      operationId: variable_sets#get-variable-set-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: v0
            minLength: 1
            maxLength: 128
          example: g
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: jdc
            minLength: 1
            maxLength: 128
          example: h
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: ug
            minLength: 1
            maxLength: 128
          example: p
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody
              example:
                account: u5t
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Placeat quasi ab debitis quam qui et.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: g
                name: resource name
                org: v7
                project: aug
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Ipsum aspernatur dicta veniam consequatur quis.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Qui corrupti adipisci ratione nemo.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Quisquam distinctio vel suscipit.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - variable_sets
      summary: Update a Variable Set on org level
      description: Update a Variable Set on org level.
      operationId: variable_sets#update-variable-set-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: jjl
            minLength: 1
            maxLength: 128
          example: 9a
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: nxz
            minLength: 1
            maxLength: 128
          example: x6
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: oov
            minLength: 1
            maxLength: 128
          example: os8
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVariableSetRequestOrgScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Aut aut itaque dolores.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 7171077632424195000
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Nulla cum mollitia aut ipsum.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Qui asperiores nostrum est et voluptatum.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/variable-set/{identifier}/references:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set References list on org level
      description: Get Variable Set References list on org level.
      operationId: variable_sets#list-variable-set-references-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: rv6
            minLength: 1
            maxLength: 128
          example: s
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: 9h
            minLength: 1
            maxLength: 128
          example: i5
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: wap
            minLength: 1
            maxLength: 128
          example: r
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmWorkspaceList'
              example:
                items:
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/orgs/{org}/variable-sets:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set list on org level
      description: Get Variable Set list on org level.
      operationId: variable_sets#list-variable-sets-org-level
      parameters:
        - name: org
          in: path
          description: Org is the organisation identifier.
          required: true
          schema:
            type: string
            description: Org is the organisation identifier.
            example: 2s
            minLength: 1
            maxLength: 128
          example: h
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: '4'
            minLength: 1
            maxLength: 128
          example: 0l0
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmVariableSetList'
              example:
                items:
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers:
    get:
      tags:
        - provider-registry
      summary: List providers
      description: Lists all providers for an account
      operationId: provider-registry#list-providers
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mymod
          example: mymod
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: updated,DESC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: name,ASC
        - name: Harness-Account
          in: header
          description: Account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account name
            example: Et ut eius impedit.
          example: Repellendus quidem ratione veniam est.
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderCollection'
              example:
                - account: Tenetur consequatur quod in odio minus.
                  created: 8121796847450423000
                  description: Incidunt quis eum at.
                  id: Autem est.
                  type: Eos qui et aut iure.
                  updated: 5457981860161328000
                  versions:
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                - account: Tenetur consequatur quod in odio minus.
                  created: 8121796847450423000
                  description: Incidunt quis eum at.
                  id: Autem est.
                  type: Eos qui et aut iure.
                  updated: 5457981860161328000
                  versions:
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                - account: Tenetur consequatur quod in odio minus.
                  created: 8121796847450423000
                  description: Incidunt quis eum at.
                  id: Autem est.
                  type: Eos qui et aut iure.
                  updated: 5457981860161328000
                  versions:
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                - account: Tenetur consequatur quod in odio minus.
                  created: 8121796847450423000
                  description: Incidunt quis eum at.
                  id: Autem est.
                  type: Eos qui et aut iure.
                  updated: 5457981860161328000
                  versions:
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
                    - files:
                        - Aut molestiae quia inventore corporis.
                        - Impedit possimus quibusdam.
                      synced: false
                      version: Porro maiores.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}:
    delete:
      tags:
        - provider-registry
      summary: Delete provider
      description: Deletes a provider
      operationId: provider-registry#delete-provider
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: Et sed aut.
          example: Nulla dolores harum inventore modi incidunt.
        - name: Harness-Account
          in: header
          description: Account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account name
            example: Aut quaerat eos laudantium.
          example: Ea quia ut sapiente.
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - provider-registry
      summary: Get provider
      description: Gets a provider by ID
      operationId: provider-registry#get-provider
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: Hic dolore soluta quo aut.
          example: Non nam et nostrum quos labore odio.
        - name: Harness-Account
          in: header
          description: Account name
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account name
            example: Alias non consequatur.
          example: Voluptatem commodi eos voluptate.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IaCMGetProviderResponse'
              example:
                account: Similique earum molestiae iusto.
                created: 2151595392334958800
                description: Aut doloremque rerum id.
                id: Qui omnis laboriosam distinctio quis aut.
                type: Dolores odio placeat et.
                updated: 6991109530659590000
                versions:
                  - files:
                      - Labore quo reprehenderit.
                      - Alias voluptate animi accusamus quia et.
                    synced: true
                    version: Ad dolores exercitationem aut.
                  - files:
                      - Labore quo reprehenderit.
                      - Alias voluptate animi accusamus quia et.
                    synced: true
                    version: Ad dolores exercitationem aut.
                  - files:
                      - Labore quo reprehenderit.
                      - Alias voluptate animi accusamus quia et.
                    synced: true
                    version: Ad dolores exercitationem aut.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}/version:
    post:
      tags:
        - provider-registry
      summary: Create provider version
      description: Create a provider version
      operationId: provider-registry#create-provider-version
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProviderVersionRequestBody'
            example:
              gpg_key_id: '1234567890'
              protocol:
                - '4.0'
              version: 1.0.0
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}/version/{version}:
    delete:
      tags:
        - provider-registry
      summary: Delete provider version
      description: Delete a provider version
      operationId: provider-registry#delete-provider-version
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - provider-registry
      summary: Get provider version
      description: Get a provider version
      operationId: provider-registry#get-provider-version
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetProviderVersionResponseBody'
              example:
                gpg_key_id: '1234567890'
                id: '1'
                protocols:
                  - '4.0'
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - provider-registry
      summary: Update provider version
      description: Update a provider version
      operationId: provider-registry#update-provider-version
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateProviderVersionRequestBody'
            example:
              gpg_key_id: '1234567890'
              protocol:
                - '4.0'
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}/version/{version}/file/{filename}:
    delete:
      tags:
        - provider-registry
      summary: Delete file from a non synced provider version
      description: Delete a file from a non synced provider version
      operationId: provider-registry#delete-file
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: filename
          in: path
          description: File name
          required: true
          schema:
            type: string
            description: File name
            example: file.txt
          example: file.txt
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}/version/{version}/files:
    post:
      tags:
        - provider-registry
      summary: Upload files
      description: Upload files to the provider registry
      operationId: provider-registry#post-files
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: terraform
          example: terraform
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
        - name: Content-Disposition
          in: header
          description: Content-Disposition header
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Content-Disposition header
            example: Autem reiciendis quae omnis est autem.
          example: Ut minus similique.
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostFilesResponseBody'
              example:
                synced: false
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{id}/version/{version}/publish:
    post:
      tags:
        - provider-registry
      summary: Publish a provider version
      description: Publish a provider version
      operationId: provider-registry#publish-provider-version
      parameters:
        - name: id
          in: path
          description: Provider ID
          required: true
          schema:
            type: string
            description: Provider ID
            example: '1'
          example: '1'
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: 1.0.0
          example: 1.0.0
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/{type}:
    post:
      tags:
        - provider-registry
      summary: Create provider
      description: Create a provider
      operationId: provider-registry#create-provider
      parameters:
        - name: type
          in: path
          description: Provider type
          required: true
          schema:
            type: string
            description: Provider type
            example: terraform
          example: terraform
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnsibleDataInfo'
              example:
                id: '1'
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/keys:
    get:
      tags:
        - provider-registry
      summary: List signing keys
      description: List all GPG signing keys for an account
      operationId: provider-registry#list-signing-keys
      parameters:
        - name: limit
          in: query
          description: Limit is the number of records to return for a page.
          allowEmptyValue: true
          schema:
            type: integer
            description: Limit is the number of records to return for a page.
            default: 30
            example: 30
            format: int64
            minimum: 1
            maximum: 1000
          example: 30
        - name: page
          in: query
          description: Page is the page number to return relative to the page 'limit'.
          allowEmptyValue: true
          schema:
            type: integer
            description: Page is the page number to return relative to the page 'limit'.
            default: 1
            example: 1
            format: int64
            minimum: 1
          example: 1
        - name: searchTerm
          in: query
          description: Filter results by partial name match
          allowEmptyValue: true
          schema:
            type: string
            description: Filter results by partial name match
            default: ''
            example: mymod
          example: mymod
        - name: sort
          in: query
          description: Sort order for results
          allowEmptyValue: true
          schema:
            type: string
            description: Sort order for results
            default: name,ASC
            example: updated,ASC
            enum:
              - name,ASC
              - name,DESC
              - updated,ASC
              - updated,DESC
          example: name,ASC
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '200':
          description: OK response.
          headers:
            x-page-size:
              description: Current page size
              schema:
                type: integer
                description: Current page size
                example: 50
                format: int64
              example: 50
            x-total-items:
              description: Total items available
              schema:
                type: integer
                description: Total items available
                example: 1800
                format: int64
              example: 1800
            x-total-pages:
              description: Total pages available
              schema:
                type: integer
                description: Total pages available
                example: 36
                format: int64
              example: 36
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SigningKeyCollection'
              example:
                - ascii_armor: Ut est.
                  created_at: Non perspiciatis cupiditate.
                  id: Aperiam veritatis et omnis dolor quo.
                  key_id: Quasi qui.
                  key_name: Architecto ut reiciendis.
                  updated_at: Omnis magnam unde corrupti natus.
                  user: Voluptas et consequatur.
                - ascii_armor: Ut est.
                  created_at: Non perspiciatis cupiditate.
                  id: Aperiam veritatis et omnis dolor quo.
                  key_id: Quasi qui.
                  key_name: Architecto ut reiciendis.
                  updated_at: Omnis magnam unde corrupti natus.
                  user: Voluptas et consequatur.
                - ascii_armor: Ut est.
                  created_at: Non perspiciatis cupiditate.
                  id: Aperiam veritatis et omnis dolor quo.
                  key_id: Quasi qui.
                  key_name: Architecto ut reiciendis.
                  updated_at: Omnis magnam unde corrupti natus.
                  user: Voluptas et consequatur.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    post:
      tags:
        - provider-registry
      summary: Upload signing key
      description: Upload a GPG signing key for an account
      operationId: provider-registry#upload-signing-key
      parameters:
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UploadSigningKeyRequest'
            example:
              ascii_armor: Omnis laborum modi non consequuntur.
              key_id: ABCD1234
              key_name: harness
              user: Porro cupiditate aut temporibus.
      responses:
        '201':
          description: Created response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/providers/keys/{id}:
    delete:
      tags:
        - provider-registry
      summary: Delete a signing key for a provider
      description: Delete a signing key for a provider
      operationId: provider-registry#delete-signing-key
      parameters:
        - name: id
          in: path
          description: id of the key in the db
          required: true
          schema:
            type: string
            description: id of the key in the db
            example: '1'
          example: '1'
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - provider-registry
      summary: Update a signing key for a provider
      description: Update a signing key for a provider
      operationId: provider-registry#update-signing-key
      parameters:
        - name: id
          in: path
          description: id of the key in the db
          required: true
          schema:
            type: string
            description: id of the key in the db
            example: '1'
          example: '1'
        - name: Harness-Account
          in: header
          description: Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account ID
            example: harness
          example: harness
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UploadSigningKeyRequest'
            example:
              ascii_armor: Id ut sapiente.
              key_id: ABCD1234
              key_name: harness
              user: foo
      responses:
        '200':
          description: OK response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/provisioners/supported/{provisioner}:
    get:
      tags:
        - system
      summary: list-supported-provisioner-versions system
      description: List supported provisioner versions.
      operationId: system#list-supported-provisioner-versions
      parameters:
        - name: provisioner
          in: path
          description: Provisioner defines the provisioning tool to use.
          required: true
          schema:
            type: string
            description: Provisioner defines the provisioning tool to use.
            example: opentofu
            enum:
              - terraform
              - opentofu
              - terragrunt
          example: terragrunt
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                  example: Quae voluptatum.
                example:
                  - Iste nihil.
                  - Aut rem molestiae harum consectetur.
              example:
                - Dolor praesentium aperiam consectetur et ut.
                - Ut dicta vel aut dolorem et et.
  /iacm/api/usage/check-licence:
    get:
      tags:
        - usage
      summary: Show licence
      description: Check whether the account is currently licenced
      operationId: usage#checkLicence
      parameters:
        - name: Harness-Account
          in: header
          description: Account identifier
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account identifier
            example: Sint dignissimos recusandae.
          example: Molestiae suscipit sunt.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShowLicenceResponse'
              example:
                account: o0
                isLicenced: true
                isPaid: true
                reason: Dignissimos eos natus quia suscipit nostrum.
                startTime: 682508450274215300
                total: 3312446703538779000
                used: 9141337000041818000
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/variable-set:
    post:
      tags:
        - variable_sets
      summary: Create a new Variable Set on account level
      description: Create a new Variable Set on account level.
      operationId: variable_sets#create-variable-set-account-level
      parameters:
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: s
            minLength: 1
            maxLength: 128
          example: '5'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVariableSetRequestAccScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Dolores nulla et.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Doloribus dicta et soluta impedit.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Itaque aut aut aut.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 2330596045690622500
              identifier: c
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Voluptas accusamus.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '201':
          description: Created response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/variable-set/{identifier}:
    delete:
      tags:
        - variable_sets
      summary: Delete Variable Set by identifier on account level
      description: Delete Variable Set by identifier on account level.
      operationId: variable_sets#delete-variable-set-account-level
      parameters:
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: d
            minLength: 1
            maxLength: 128
          example: j6
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: j
            minLength: 1
            maxLength: 128
          example: q
      responses:
        '204':
          description: No Content response.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    get:
      tags:
        - variable_sets
      summary: Get Variable Set by identifier on account level
      description: Get Variable Set by identifier on account level.
      operationId: variable_sets#get-variable-set-account-level
      parameters:
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: '8'
            minLength: 1
            maxLength: 128
          example: '54'
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: 'y'
            minLength: 1
            maxLength: 128
          example: ms
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsGetVariableSetAccountLevelResponseBody
              example:
                account: u5t
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Placeat quasi ab debitis quam qui et.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: g
                name: resource name
                org: v7
                project: aug
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Ipsum aspernatur dicta veniam consequatur quis.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Qui corrupti adipisci ratione nemo.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Quisquam distinctio vel suscipit.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
    put:
      tags:
        - variable_sets
      summary: Update a Variable Set on account level
      description: Update a Variable Set on account level.
      operationId: variable_sets#update-variable-set-account-level
      parameters:
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: '1'
            minLength: 1
            maxLength: 128
          example: p8
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: s4
            minLength: 1
            maxLength: 128
          example: du
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVariableSetRequestAccountScope'
            example:
              connectors:
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
                - connector_ref: u4
                  created: 1627590400
                  id: 7962156907835833000
                  type: aws
                  updated: 1627686800
              created: 1627590400
              description: this is a more detailed explanation of the resource.
              environment_variables:
                Sed sit ipsam incidunt laboriosam vel quod.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              id: 4008264380773708300
              name: resource name
              terraform_variable_files:
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
                - created: 1627590400
                  id: 5786881645804242000
                  repository: Ut molestias ratione est asperiores.
                  repository_branch: main
                  repository_commit: abc10ed
                  repository_connector: Occaecati aut repellendus deserunt ullam.
                  repository_path: ''
                  repository_sha: abc10ed
                  updated: 1627686800
              terraform_variables:
                Aut dignissimos aut dolorum tenetur.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
                Delectus doloribus laborum ex soluta cupiditate.:
                  created: 1627590400
                  id: 1736065500175353900
                  key: '72'
                  updated: 1627686800
                  value: Molestias est non est sit quas.
                  value_type: secret
              updated: 1627686800
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/VariableSetsCreateVariableSetAccountLevelResponseBody
              example:
                account: sj
                connectors:
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                  - connector_ref: oe5
                    created: 1627590400
                    id: 5780234500233303000
                    type: aws
                    updated: 1627686800
                created: 1627590400
                description: this is a more detailed explanation of the resource.
                environment_variables:
                  Ut nulla recusandae consequuntur nisi eius.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                identifier: 'n'
                name: resource name
                org: g
                project: yiy
                terraform_variable_files:
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                  - created: 1627590400
                    id: 1219232998228301800
                    repository: Ea nemo ut.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Facilis error sit vel.
                    repository_path: ''
                    repository_sha: abc10ed
                    updated: 1627686800
                terraform_variables:
                  Aspernatur illo qui non.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                  Enim voluptas aut nihil quas.:
                    created: 1627590400
                    id: 4738113372485281000
                    key: v
                    updated: 1627686800
                    value: Pariatur voluptates voluptatem.
                    value_type: string
                updated: 1627686800
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/variable-set/{identifier}/references:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set References list on account level
      description: Get Variable Set References list on account level.
      operationId: variable_sets#list-variable-set-references-account-level
      parameters:
        - name: identifier
          in: path
          description: Identifier is the VariableSet identifier.
          required: true
          schema:
            type: string
            description: Identifier is the VariableSet identifier.
            example: 4u
            minLength: 1
            maxLength: 128
          example: 9vc
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: vc2
            minLength: 1
            maxLength: 128
          example: 9q
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmWorkspaceList'
              example:
                items:
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
                  - account: o9k
                    associated_template:
                      template_id: '9'
                      version: 9ks
                    backend_locked: false
                    budget: 0.26886165
                    cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    cost_estimation_enabled: true
                    created: 5458079498988329000
                    default_pipelines:
                      Et autem.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                      Voluptatem consequatur occaecati sapiente est.:
                        project_pipeline: Aut dolorum quis illum.
                        workspace_pipeline: Saepe quaerat modi.
                    description: this is a more detailed explanation of the resource.
                    environment_variables:
                      Aut quia quisquam dolorem sequi fuga ipsum.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Dolor natus eum eaque natus.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                      Soluta optio et.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    id: 3067592544267795500
                    identifier: '9'
                    modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    name: resource name
                    org: 8c
                    project: w
                    provider_connector: Accusantium odio nesciunt mollitia.
                    provider_connectors:
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                      - connector_ref: b
                        created: 1627590400
                        id: 7841704743406482000
                        terragrunt_provider: true
                        type: aws
                        updated: 1627686800
                        workspace_id: 5631387644666327000
                    providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    provisioner: Nesciunt aut voluptas velit sapiente vel.
                    provisioner_data: Eos est excepturi illum et.
                    provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
                    prune_sensitive_data: true
                    repository: Repudiandae est optio totam a.
                    repository_branch: main
                    repository_commit: abc10ed
                    repository_connector: Enim molestiae porro totam.
                    repository_path: ''
                    repository_sha: abc10ed
                    repository_submodules: recursive
                    run_all: false
                    sparse_checkout: >-
                      Molestias assumenda necessitatibus debitis vero rerum
                      incidunt.
                    state_checksum: >-
                      d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
                    status: active
                    tags:
                      foo: bar
                    terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
                    terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
                    terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
                    terraform_variable_files:
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                      - repository: Ut ut id neque voluptatem doloremque.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: Est reiciendis error id.
                        repository_path: ''
                        repository_sha: abc10ed
                    terraform_variables:
                      Et dolores.:
                        created: 7004477956953783000
                        key: u8p
                        updated: 2029366920103826400
                        value: Animi natus repellendus ut vel.
                        value_type: string
                    terragrunt_provider: true
                    terragrunt_version: Aut et.
                    updated: 2837326796703995400
                    variable_sets:
                      - Et consequatur rerum quidem.
                      - Est dignissimos ut doloremque nihil nam doloribus.
                      - Delectus dolor id fuga ratione sit fuga.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/variable-sets:
    get:
      tags:
        - variable_sets
      summary: Get Variable Set list on account level
      description: Get Variable Set list on account level.
      operationId: variable_sets#list-variable-sets-account-level
      parameters:
        - name: Harness-Account
          in: header
          description: Account is the internal customer account ID.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account is the internal customer account ID.
            example: v9w
            minLength: 1
            maxLength: 128
          example: '1'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HarnessIacmVariableSetList'
              example:
                items:
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
                  - account: v
                    connectors:
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                      - connector_ref: 2bx
                        created: 1627590400
                        id: 740081176343001300
                        type: gcp
                        updated: 1627686800
                    created: 1627590400
                    description: this is a more detailed explanation of the resource.
                    env_vars_count: 3495156499201020400
                    environment_variables:
                      Assumenda non minima.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                      Sunt omnis deserunt error nobis in.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    id: 6831056336778097000
                    identifier: kf
                    name: resource name
                    org: 18v
                    project: k
                    terraform_variable_files:
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                      - created: 1627590400
                        id: 3061502594466213000
                        repository: Vel nam et.
                        repository_branch: main
                        repository_commit: abc10ed
                        repository_connector: >-
                          Officiis praesentium et distinctio magni voluptas
                          magni.
                        repository_path: ''
                        repository_sha: abc10ed
                        updated: 1627686800
                    terraform_variables:
                      Odio ea dolores perferendis eos esse ut.:
                        created: 1627590400
                        id: 7766730759644117000
                        key: lzd
                        updated: 1627686800
                        value: Earum et qui exercitationem accusantium porro animi.
                        value_type: secret
                    tf_vars_count: 7273079195395788000
                    updated: 1627686800
                    var_files_count: 1842691425972299300
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/api/version:
    get:
      tags:
        - system
      summary: version system
      description: Get server version
      operationId: IaCMsystem#version
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IaCMServiceVersion'
              example:
                commit: 96381692bf3a2bd7904769c6886e832435768b57
                deployment_mode: saas
                version: v0.123.0
  /iacm/api/workspace/templates/{template_id}:
    get:
      tags:
        - workspaces
      summary: List workspaces associated with a template ID
      description: Get all workspaces associated with a specific template ID
      operationId: workspaces#list-associated-workspaces
      parameters:
        - name: org
          in: query
          description: Organization identifier (required for 'org' and 'project' scope).
          allowEmptyValue: true
          schema:
            type: string
            description: Organization identifier (required for 'org' and 'project' scope).
            example: aj
            minLength: 1
            maxLength: 128
          example: vp
        - name: project
          in: query
          description: Project identifier (required for 'project' scope).
          allowEmptyValue: true
          schema:
            type: string
            description: Project identifier (required for 'project' scope).
            example: pk
            minLength: 1
            maxLength: 128
          example: 9i0
        - name: version
          in: query
          description: Template version associated with the workspace.
          allowEmptyValue: true
          schema:
            type: string
            description: Template version associated with the workspace.
            example: dt
            minLength: 1
            maxLength: 32
          example: oq
        - name: template_id
          in: path
          description: Template identifier to filter workspaces
          required: true
          schema:
            type: string
            description: Template identifier to filter workspaces
            example: '1'
            minLength: 1
            maxLength: 128
          example: pc
        - name: Harness-Account
          in: header
          description: Account identifier.
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Account identifier.
            example: 7d
            minLength: 1
            maxLength: 128
          example: xx
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/HarnessIacmWorkspaceTemplate'
                description: List of workspaces associated with the template ID
                example:
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
                  - account: '1'
                    created_at: 1627590400
                    org: m
                    project: z5c
                    template_id: t
                    updated_at: 1627686800
                    version: s
                    workspace_id: w2
              example:
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
                - account: '1'
                  created_at: 1627590400
                  org: m
                  project: z5c
                  template_id: t
                  updated_at: 1627686800
                  version: s
                  workspace_id: w2
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/provider/account/{account}/{type}/{version}/download/{os}/{arch}:
    get:
      tags:
        - provider-registry
      summary: Get provider download information
      description: >-
        Returns download information for a specific provider version and
        platform
      operationId: provider-registry#get-provider-download
      parameters:
        - name: account
          in: path
          description: Account that owns the provider
          required: true
          schema:
            type: string
            description: Account that owns the provider
            example: Deleniti voluptatem et.
          example: Rerum ratione velit voluptatem.
        - name: type
          in: path
          description: Provider type
          required: true
          schema:
            type: string
            description: Provider type
            example: Et voluptatem aliquid et.
          example: Doloremque placeat.
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: Natus possimus iste est.
          example: Id sed dolore.
        - name: os
          in: path
          description: Operating system
          required: true
          schema:
            type: string
            description: Operating system
            example: Consequatur velit assumenda distinctio cupiditate.
          example: Omnis alias doloremque cumque.
        - name: arch
          in: path
          description: Architecture
          required: true
          schema:
            type: string
            description: Architecture
            example: Id corrupti iusto recusandae quibusdam.
          example: Eum velit.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetProviderDownloadResponse'
              example:
                arch: Minima sint vel officia et illum ipsum.
                download_url: Omnis dolore et libero fugiat consequatur.
                filename: Error minima at voluptatem in aut.
                os: Ut numquam sed provident.
                protocols:
                  - Voluptatibus et dicta et minima voluptas dolor.
                  - Expedita quam eveniet sed repudiandae.
                  - Ut sed sequi eos.
                shasum: Nesciunt voluptate sequi beatae.
                shasums_signature_url: Qui voluptatem sit totam incidunt explicabo.
                shasums_url: Repellendus quisquam iste repudiandae perferendis aut.
                signing_keys:
                  gpg_public_keys:
                    - ascii_armor: Sequi et nisi in reprehenderit ut.
                      key_id: Culpa est minima excepturi qui eaque molestiae.
                    - ascii_armor: Sequi et nisi in reprehenderit ut.
                      key_id: Culpa est minima excepturi qui eaque molestiae.
                    - ascii_armor: Sequi et nisi in reprehenderit ut.
                      key_id: Culpa est minima excepturi qui eaque molestiae.
                    - ascii_armor: Sequi et nisi in reprehenderit ut.
                      key_id: Culpa est minima excepturi qui eaque molestiae.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/provider/account/{account}/{type}/{version}/download/{os}/{arch}/{filetype}:
    get:
      tags:
        - provider-registry
      summary: Get provider file
      description: Download a provider file (binary, checksums, or signature)
      operationId: provider-registry#get-file
      parameters:
        - name: token
          in: query
          description: Token to access the file
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Token to access the file
            example: Impedit iure nobis sint voluptatem.
          example: Voluptates voluptatem voluptatem.
        - name: account
          in: path
          description: Account identifier
          required: true
          schema:
            type: string
            description: Account identifier
            example: Doloribus enim ipsum eos ducimus quidem.
          example: Qui eum.
        - name: type
          in: path
          description: Provider type
          required: true
          schema:
            type: string
            description: Provider type
            example: Omnis culpa et ex rerum eligendi.
          example: Consequatur nisi eum sed reiciendis voluptas aut.
        - name: version
          in: path
          description: Provider version
          required: true
          schema:
            type: string
            description: Provider version
            example: Aspernatur impedit deleniti eaque consequuntur.
          example: Illum porro quia consequatur ratione.
        - name: os
          in: path
          description: Operating system
          required: true
          schema:
            type: string
            description: Operating system
            example: Vitae dicta eaque omnis.
          example: Ut et deleniti ut nostrum.
        - name: arch
          in: path
          description: Architecture
          required: true
          schema:
            type: string
            description: Architecture
            example: Sequi deleniti deserunt deleniti aut voluptas magni.
          example: Sequi ex.
        - name: filetype
          in: path
          description: Type of file to download
          required: true
          schema:
            type: string
            description: Type of file to download
            example: checksums
            enum:
              - binary
              - checksums
              - signature
          example: checksums
      responses:
        '200':
          description: OK response.
          headers:
            Content-Disposition:
              description: Content-Disposition header
              schema:
                type: string
                description: Content-Disposition header
                example: Voluptas libero hic ut nemo est.
              example: Consectetur occaecati.
            Content-Type:
              description: Content-Type header
              schema:
                type: string
                description: Content-Type header
                example: Est commodi occaecati.
              example: Fugiat quaerat accusamus ratione tempora.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/provider/account/{account}/{type}/versions:
    get:
      tags:
        - provider-registry
      summary: List provider versions
      description: Lists available versions for a provider
      operationId: provider-registry#list-provider-versions
      parameters:
        - name: account
          in: path
          description: Account that owns the provider
          required: true
          schema:
            type: string
            description: Account that owns the provider
            example: Quos nihil explicabo.
          example: Expedita fuga ratione.
        - name: type
          in: path
          description: Provider type
          required: true
          schema:
            type: string
            description: Provider type
            example: Et aliquid.
          example: Iure doloremque nemo dignissimos.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProviderVersionsResponse'
              example:
                versions:
                  - platforms:
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                    protocols:
                      - Neque quasi.
                      - Fugiat illo esse suscipit eius dolores voluptas.
                      - Quam qui blanditiis ipsam modi.
                      - Nihil quis voluptatem tenetur quia.
                    version: Aut quaerat aut unde est unde esse.
                  - platforms:
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                      - arch: Sed reprehenderit.
                        os: Minus qui voluptatibus voluptate ea eos.
                    protocols:
                      - Neque quasi.
                      - Fugiat illo esse suscipit eius dolores voluptas.
                      - Quam qui blanditiis ipsam modi.
                      - Nihil quis voluptatem tenetur quia.
                    version: Aut quaerat aut unde est unde esse.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/registry/account/{account}/{name}/{system}/{version}/download:
    get:
      tags:
        - module-registry
      summary: Download module
      description: Download a module given a specific version
      operationId: module-registry#download
      parameters:
        - name: account
          in: path
          description: account name
          required: true
          schema:
            type: string
            description: account name
            example: Maxime at vel qui expedita.
          example: Enim est laboriosam.
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: Praesentium non iusto.
          example: Praesentium rerum quia velit doloremque eius minima.
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: Illum nostrum et nihil.
          example: Ab ea aliquam.
        - name: version
          in: path
          description: version of the module
          required: true
          schema:
            type: string
            description: version of the module
            example: Vitae deleniti.
          example: Illum quidem iste voluptatem non est ducimus.
      responses:
        '200':
          description: OK response.
          headers:
            X-Terraform-Get:
              description: url of the module for a given version
              schema:
                type: string
                description: url of the module for a given version
                example: Optio numquam ut molestiae corporis.
              example: Nobis occaecati ut.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadModuleResponse'
              example:
                location: Soluta maiores et ipsum necessitatibus.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/registry/account/{account}/{name}/{system}/{version}/download/file:
    get:
      tags:
        - module-registry
      summary: Download module file tarball
      description: Download a module given a specific version
      operationId: module-registry#getModule
      parameters:
        - name: token
          in: query
          description: token for authentication
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: token for authentication
            example: Reprehenderit unde earum in ea dolor et.
          example: Odit fuga.
        - name: account
          in: path
          description: account name
          required: true
          schema:
            type: string
            description: account name
            example: Cum recusandae.
          example: Fuga voluptatem dignissimos.
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: Ut ut sunt facilis culpa voluptatem qui.
          example: Consequatur accusamus rem aliquam vitae.
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: Totam aspernatur.
          example: Occaecati officiis rerum neque.
        - name: version
          in: path
          description: version of the module
          required: true
          schema:
            type: string
            description: version of the module
            example: Quod amet.
          example: Totam temporibus.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: string
                format: binary
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /iacm/registry/account/{account}/{name}/{system}/versions:
    get:
      tags:
        - module-registry
      summary: List module versions
      description: list-module-versions returns an array of versions for a given module
      operationId: module-registry#list-versions
      parameters:
        - name: account
          in: path
          description: account name
          required: true
          schema:
            type: string
            description: account name
            example: Aperiam aspernatur.
          example: Quibusdam tempore officiis velit praesentium quisquam.
        - name: name
          in: path
          description: module name
          required: true
          schema:
            type: string
            description: module name
            example: Quae voluptas iusto fugit voluptas.
          example: Illum reprehenderit.
        - name: system
          in: path
          description: system name
          required: true
          schema:
            type: string
            description: system name
            example: Exercitationem est sed pariatur necessitatibus ut veritatis.
          example: Nam est.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListModuleVersionsResponse'
              example:
                modules:
                  - versions:
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
                  - versions:
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
                  - versions:
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
                      - git_version: Earum qui.
                        module_version: Pariatur explicabo velit in dolor optio iusto.
        '400':
          description: 'BadRequestError: Bad Request response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '401':
          description: 'UnauthorizedError: Unauthorized response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '403':
          description: 'ForbiddenError: Forbidden response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '404':
          description: 'NotFoundError: Not Found response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '408':
          description: 'TimeoutError: Request Timeout response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '409':
          description: 'ConflictError: Conflict response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '423':
          description: 'LockedError: Locked response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '499':
          description: 'ContextCancelledError:  response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
        '502':
          description: 'BadGatewayError: Bad Gateway response.'
          content:
            application/vnd.goa.error:
              schema:
                $ref: '#/components/schemas/IaCMError'
  /sto/api/usage:
    get:
      description: Report usage
      operationId: Usage#ReportUsage
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: >-
            Timestamp indicating the end of the usage interval (in milliseconds
            since Unix epoch)
          example: 1670427991307
          in: query
          name: timestamp
          required: true
          schema:
            description: >-
              Timestamp indicating the end of the usage interval (in
              milliseconds since Unix epoch)
            example: 1670427991307
            format: int64
            type: integer
        - allowEmptyValue: true
          description: Usage calculation interval (in days)
          example: 30
          in: query
          name: interval
          schema:
            default: 30
            description: Usage calculation interval (in days)
            example: 30
            format: int64
            type: integer
      responses:
        '200':
          content:
            application/json:
              example:
                accountIdentifier: BdsgiWzwT7CQFeJl9XkQ3A
                activeDevelopers:
                  count: 0
                  displayName: Last 30 Days
                  references:
                    - Numquam ad asperiores rerum illo.
                    - Voluptas et odio aut veritatis.
                    - Id quis sint magni similique.
                    - Labore qui quia est sed repellendus ut.
                activeScans:
                  count: 0
                  displayName: Last 30 Days
                  references:
                    - Numquam ad asperiores rerum illo.
                    - Voluptas et odio aut veritatis.
                    - Id quis sint magni similique.
                    - Labore qui quia est sed repellendus ut.
                module: STO
                timestamp: 1670427991307
              schema:
                $ref: '#/components/schemas/UsageReportUsageResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - core_account_view
      tags:
        - Usage
    x-internal: true
  /sto/api/usage/all-accounts:
    get:
      description: Report usage for all accounts
      operationId: Usage#UsageAllAccounts
      parameters:
        - allowEmptyValue: true
          description: >-
            Timestamp indicating the end of the usage interval (in milliseconds
            since Unix epoch)
          example: 1670427991307
          in: query
          name: timestamp
          required: true
          schema:
            description: >-
              Timestamp indicating the end of the usage interval (in
              milliseconds since Unix epoch)
            example: 1670427991307
            format: int64
            type: integer
        - allowEmptyValue: true
          description: Usage calculation interval (in days)
          example: 30
          in: query
          name: interval
          schema:
            default: 30
            description: Usage calculation interval (in days)
            example: 30
            format: int64
            type: integer
      responses:
        '200':
          content:
            application/json:
              example:
                timestamp: 1670427991307
                usage:
                  - accountId: BdsgiWzwT7CQFeJl9XkQ3A
                    developerCount: 25
                    scanCount: 5000
                  - accountId: BdsgiWzwT7CQFeJl9XkQ3A
                    developerCount: 25
                    scanCount: 5000
              schema:
                $ref: '#/components/schemas/UsageUsageAllAccountsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_internal_use_only
      tags:
        - Usage
    x-internal: true
  /sto/api/v2/accounts/{id}/data:
    delete:
      description: Delete all account data
      operationId: Accounts#DeleteAccountData
      parameters:
        - description: The ID of the account to delete data for
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the account to delete data for
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                status: ok
              schema:
                $ref: '#/components/schemas/StoStatus'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_internal_use_only
      tags:
        - Accounts
    x-internal: true
  /sto/api/v2/exemptions:
    get:
      tags:
        - Exemptions
      description: List a collection of Exemptions
      operationId: Exemptions#ListExemptions
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Suscipit quia velit ipsam sed nihil eaque.
          example: Dicta ratione incidunt.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsListExemptionsResponseBody'
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    comment: This exemption was reviewed by the security team.
                    created: 1651578240
                    exemptionStatusAtScan: Approved
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    issueId: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    link: https://example.com/ABC-1234
                    numOccurrences: 10
                    occurrences:
                      - 42
                      - 666
                    orgId: your_project
                    orgName: Organization Name
                    pendingChanges:
                      durationDays: 7
                    pipelineId: your_pipeline
                    projectId: your_project
                    projectName: Project Name
                    reason: Waiting on upstream bug fix
                    requesterId: user111111111111111111
                    scanId: abcdef1234567890ghijkl
                    scope: PROJECT
                    search: CWE-123,5
                    status: Rejected
                    targetId: abcdef1234567890ghijkl
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    comment: This exemption was reviewed by the security team.
                    created: 1651578240
                    exemptionStatusAtScan: Approved
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    issueId: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    link: https://example.com/ABC-1234
                    numOccurrences: 10
                    occurrences:
                      - 42
                      - 666
                    orgId: your_project
                    orgName: Organization Name
                    pendingChanges:
                      durationDays: 7
                    pipelineId: your_pipeline
                    projectId: your_project
                    projectName: Project Name
                    reason: Waiting on upstream bug fix
                    requesterId: user111111111111111111
                    scanId: abcdef1234567890ghijkl
                    scope: PROJECT
                    search: CWE-123,5
                    status: Rejected
                    targetId: abcdef1234567890ghijkl
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    comment: This exemption was reviewed by the security team.
                    created: 1651578240
                    exemptionStatusAtScan: Approved
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    issueId: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    link: https://example.com/ABC-1234
                    numOccurrences: 10
                    occurrences:
                      - 42
                      - 666
                    orgId: your_project
                    orgName: Organization Name
                    pendingChanges:
                      durationDays: 7
                    pipelineId: your_pipeline
                    projectId: your_project
                    projectName: Project Name
                    reason: Waiting on upstream bug fix
                    requesterId: user111111111111111111
                    scanId: abcdef1234567890ghijkl
                    scope: PROJECT
                    search: CWE-123,5
                    status: Rejected
                    targetId: abcdef1234567890ghijkl
                    type: Other
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_view
    post:
      tags:
        - Exemptions
      description: Create a new Exemption
      operationId: Exemptions#CreateExemption
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: >-
            ID of the Harness Organization to which the exemption applies.
            Cannot be specified alongside "targetId".
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: >-
              ID of the Harness Organization to which the exemption applies.
              Cannot be specified alongside "targetId".
            example: your_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: your_project
        - name: projectId
          in: query
          description: >-
            ID of the Harness Project to which the exemption applies. You must
            also specify "orgId". Cannot be specified alongside "targetId".
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: >-
              ID of the Harness Project to which the exemption applies. You must
              also specify "orgId". Cannot be specified alongside "targetId".
            example: your_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: your_project
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Qui esse odit.
          example: Velit eligendi sit consequatur excepturi.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateExemptionRequestBody'
            example:
              exemptFutureOccurrences: false
              expiration: 1651578240
              issueId: abcdef1234567890ghijkl
              link: https://example.com/ABC-1234
              occurrences:
                - 42
                - 666
              pendingChanges:
                durationDays: 7
              pipelineId: your_pipeline
              reason: Waiting on upstream bug fix
              requesterId: user111111111111111111
              scanId: abcdef1234567890ghijkl
              search: CWE-123,5
              targetId: abcdef1234567890ghijkl
              type: Other
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsCreateExemptionResponseBody'
              example:
                id: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_create
  /sto/api/v2/exemptions/{id}:
    delete:
      description: Delete an existing Exemption
      operationId: Exemptions#DeleteExemption
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          examples:
            default:
              summary: default
              value: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          examples:
            default:
              summary: default
              value: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - description: The ID of the Exemption to delete
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the Exemption to delete
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '204':
          description: No Content response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_exemption_create
      tags:
        - Exemptions
      x-internal: true
    get:
      tags:
        - Exemptions
      description: Find Exemption by ID
      operationId: Exemptions#FindExemptionById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: executionId
          in: query
          description: Harness Execution ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: ignoreScope
          in: query
          description: Ignore scope
          allowEmptyValue: true
          schema:
            type: boolean
            description: Ignore scope
            example: true
          example: false
        - name: id
          in: path
          description: The ID of the Exemption to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Exemption to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Sint quo.
          example: Autem et occaecati voluptas asperiores neque.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exemption'
              example:
                approverId: user111111111111111111
                canApproveFor:
                  - ACCOUNT
                  - ORG
                  - PROJECT
                  - PIPELINE
                canCancel: true
                canCreate: true
                canReApprove: true
                canReject: true
                comment: This exemption was reviewed by the security team.
                created: 1651578240
                exemptionStatusAtScan: Approved
                expiration: 1651578240
                id: abcdef1234567890ghijkl
                isDeleted: true
                issueId: abcdef1234567890ghijkl
                lastModified: 1651578240
                link: https://example.com/ABC-1234
                numOccurrences: 10
                occurrences:
                  - 42
                  - 666
                orgId: your_project
                orgName: Organization Name
                pendingChanges:
                  durationDays: 7
                pipelineId: your_pipeline
                projectId: your_project
                projectName: Project Name
                reason: Waiting on upstream bug fix
                requesterId: user111111111111111111
                scanId: abcdef1234567890ghijkl
                scope: PROJECT
                search: CWE-123,5
                status: Rejected
                targetId: abcdef1234567890ghijkl
                type: Other
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_view
    put:
      tags:
        - Exemptions
      description: Update an existing Exemption
      operationId: Exemptions#UpdateExemption
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: >-
            ID of the Harness Organization to which the exemption applies.
            Cannot be specified alongside "targetId".
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              ID of the Harness Organization to which the exemption applies.
              Cannot be specified alongside "targetId".
            example: your_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: your_project
        - name: projectId
          in: query
          description: >-
            ID of the Harness Project to which the exemption applies. You must
            also specify "orgId". Cannot be specified alongside "targetId".
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              ID of the Harness Project to which the exemption applies. You must
              also specify "orgId". Cannot be specified alongside "targetId".
            example: your_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: your_project
        - name: id
          in: path
          description: The ID of the Exemption to update
          required: true
          schema:
            type: string
            description: The ID of the Exemption to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Laborum fugit ab iusto.
          example: Et ex corrupti ea ullam.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateExemptionRequestBody'
            example:
              expiration: 1651578240
              link: https://example.com/ABC-1234
              pendingChanges:
                durationDays: 7
              pipelineId: your_pipeline
              reason: Waiting on upstream bug fix
              requesterId: user111111111111111111
              targetId: abcdef1234567890ghijkl
              type: Other
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exemption'
              example:
                approverId: user111111111111111111
                canApproveFor:
                  - ACCOUNT
                  - ORG
                  - PROJECT
                  - PIPELINE
                canCancel: true
                canCreate: true
                canReApprove: true
                canReject: true
                comment: This exemption was reviewed by the security team.
                created: 1651578240
                exemptionStatusAtScan: Approved
                expiration: 1651578240
                id: abcdef1234567890ghijkl
                isDeleted: true
                issueId: abcdef1234567890ghijkl
                lastModified: 1651578240
                link: https://example.com/ABC-1234
                numOccurrences: 10
                occurrences:
                  - 42
                  - 666
                orgId: your_project
                orgName: Organization Name
                pendingChanges:
                  durationDays: 7
                pipelineId: your_pipeline
                projectId: your_project
                projectName: Project Name
                reason: Waiting on upstream bug fix
                requesterId: user111111111111111111
                scanId: abcdef1234567890ghijkl
                scope: PROJECT
                search: CWE-123,5
                status: Rejected
                targetId: abcdef1234567890ghijkl
                type: Other
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_create
  /sto/api/v2/exemptions/{id}/{action}:
    put:
      tags:
        - Exemptions
      description: Approve/reject an existing Exemption
      operationId: Exemptions#ApproveExemption
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: id
          in: path
          description: The ID of the Exemption to update
          required: true
          schema:
            type: string
            description: The ID of the Exemption to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: action
          in: path
          description: The approval action to take on the Exemption
          required: true
          schema:
            type: string
            description: The approval action to take on the Exemption
            example: approve
            enum:
              - approve
              - reject
          example: approve
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Aliquid culpa.
          example: Porro et doloribus.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApproveExemptionRequestBody'
            example:
              approverId: user111111111111111111
              comment: This is a comment for the approval or rejection of the exemption
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exemption'
              example:
                approverId: user111111111111111111
                canApproveFor:
                  - ACCOUNT
                  - ORG
                  - PROJECT
                  - PIPELINE
                canCancel: true
                canCreate: true
                canReApprove: true
                canReject: true
                comment: This exemption was reviewed by the security team.
                created: 1651578240
                exemptionStatusAtScan: Approved
                expiration: 1651578240
                id: abcdef1234567890ghijkl
                isDeleted: true
                issueId: abcdef1234567890ghijkl
                lastModified: 1651578240
                link: https://example.com/ABC-1234
                numOccurrences: 10
                occurrences:
                  - 42
                  - 666
                orgId: your_project
                orgName: Organization Name
                pendingChanges:
                  durationDays: 7
                pipelineId: your_pipeline
                projectId: your_project
                projectName: Project Name
                reason: Waiting on upstream bug fix
                requesterId: user111111111111111111
                scanId: abcdef1234567890ghijkl
                scope: PROJECT
                search: CWE-123,5
                status: Rejected
                targetId: abcdef1234567890ghijkl
                type: Other
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_approve
  /sto/api/v2/exemptions/{id}/promote:
    put:
      tags:
        - Exemptions
      description: Promote an existing Exemption to a higher scope
      operationId: Exemptions#PromoteExemption
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: id
          in: path
          description: The ID of the Exemption to promote
          required: true
          schema:
            type: string
            description: The ID of the Exemption to promote
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Tempore quam numquam pariatur.
          example: Nesciunt unde at consequatur eius voluptates minus.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PromoteExemptionRequestBody'
            example:
              approverId: user111111111111111111
              comment: This is a comment for the approval or rejection of the exemption
              pipelineId: abcdef1234567890ghijkl
              targetId: abcdef1234567890ghijkl
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exemption'
              example:
                approverId: user111111111111111111
                canApproveFor:
                  - ACCOUNT
                  - ORG
                  - PROJECT
                  - PIPELINE
                canCancel: true
                canCreate: true
                canReApprove: true
                canReject: true
                comment: This exemption was reviewed by the security team.
                created: 1651578240
                exemptionStatusAtScan: Approved
                expiration: 1651578240
                id: abcdef1234567890ghijkl
                isDeleted: true
                issueId: abcdef1234567890ghijkl
                lastModified: 1651578240
                link: https://example.com/ABC-1234
                numOccurrences: 10
                occurrences:
                  - 42
                  - 666
                orgId: your_project
                orgName: Organization Name
                pendingChanges:
                  durationDays: 7
                pipelineId: your_pipeline
                projectId: your_project
                projectName: Project Name
                reason: Waiting on upstream bug fix
                requesterId: user111111111111111111
                scanId: abcdef1234567890ghijkl
                scope: PROJECT
                search: CWE-123,5
                status: Rejected
                targetId: abcdef1234567890ghijkl
                type: Other
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_approve
  /sto/api/v2/frontend/all-issues/filters:
    get:
      description: Provide list of filters for a projects latest baseline scans
      operationId: Frontend#AllIssuesFilters
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                latestBaselineScans:
                  - pipelineId: pipeline_1
                    scanTool: owasp
                    scanToolName: OWASP
                    targetId: abcdef1234567890ghijkl
                    targetName: The Target
                    targetType: repository
                  - pipelineId: pipeline_1
                    scanTool: owasp
                    scanToolName: OWASP
                    targetId: abcdef1234567890ghijkl
                    targetName: The Target
                    targetType: repository
                  - pipelineId: pipeline_1
                    scanTool: owasp
                    scanToolName: OWASP
                    targetId: abcdef1234567890ghijkl
                    targetName: The Target
                    targetType: repository
                  - pipelineId: pipeline_1
                    scanTool: owasp
                    scanToolName: OWASP
                    targetId: abcdef1234567890ghijkl
                    targetName: The Target
                    targetType: repository
              schema:
                $ref: '#/components/schemas/FrontendAllIssuesFiltersResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/all-issues/issues:
    get:
      description: >-
        Provides a paginated list of issues for a project found in the latest
        baseline scans
      operationId: Frontend#AllIssuesList
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: target1111111111111111,abcdef1234567890abcdef
          in: query
          name: targetIds
          schema:
            example: target1111111111111111,abcdef1234567890abcdef
            pattern: ^([a-zA-Z0-9_-]{22})(,[a-zA-Z0-9_-]{22})*$
            type: string
        - allowEmptyValue: true
          example: repository,container
          in: query
          name: targetTypes
          schema:
            example: repository,container
            pattern: >-
              ^(repository|container|instance|configuration)(,repository|,container|,instance|,configuration)*$
            type: string
        - allowEmptyValue: true
          example: pipeline1,pipeline2
          in: query
          name: pipelineIds
          schema:
            example: pipeline1,pipeline2
            pattern: ^([a-zA-Z0-9_-]+)(,[a-zA-Z0-9_-]+)*$
            type: string
        - allowEmptyValue: true
          example: owasp,zap
          in: query
          name: scanTools
          schema:
            example: owasp,zap
            pattern: ^([a-zA-Z0-9_-]+)(,[a-zA-Z0-9_-]+)*$
            type: string
        - allowEmptyValue: true
          example: Critical,High,Medium
          in: query
          name: severityCodes
          schema:
            example: Critical,High,Medium
            pattern: >-
              ^(Critical|High|Medium|Low|Info)(,Critical|,High|,Medium|,Low|,Info)*$
            type: string
        - allowEmptyValue: true
          example: None,Pending,Rejected,Expired
          in: query
          name: exemptionStatuses
          schema:
            example: None,Pending,Rejected,Expired
            pattern: >-
              ^(None|Pending|Approved|Rejected|Expired)(,None|,Pending|,Approved|,Rejected|,Expired)*$
            type: string
        - allowEmptyValue: true
          example: CWE-123
          in: query
          name: search
          schema:
            example: CWE-123
            maxLength: 256
            type: string
        - allowEmptyValue: true
          example: SAST
          in: query
          name: issueTypes
          schema:
            example: SAST
            pattern: >-
              ^(SAST|DAST|SCA|IAC|SECRET|MISCONFIG|BUG_SMELLS|CODE_SMELLS|CODE_COVERAGE|EXTERNAL_POLICY)(,SAST|,DAST|,SCA|,IAC|,SECRET|,MISCONFIG|,BUG_SMELLS|,CODE_SMELLS|,CODE_COVERAGE|,EXTERNAL_POLICY)*$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                issues:
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: '#/components/schemas/FrontendAllIssuesListResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/all-issues/issues/{issueId}:
    get:
      description: Provides issue details for a project's latest baseline scans
      operationId: Frontend#AllIssuesDetails
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: None,Pending,Rejected,Expired
          in: query
          name: exemptionStatuses
          schema:
            example: None,Pending,Rejected,Expired
            pattern: >-
              ^(None|Pending|Approved|Rejected|Expired)(,None|,Pending|,Approved|,Rejected|,Expired)*$
            type: string
        - allowEmptyValue: true
          example: A Target Name
          in: query
          name: search
          schema:
            example: A Target Name
            maxLength: 256
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - description: The ID of the Security Issue
          example: abcdef1234567890ghijkl
          in: path
          name: issueId
          required: true
          schema:
            description: The ID of the Security Issue
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                description: Iure quidem sapiente consectetur.
                impactedTargets:
                  - executionId: abcdef1234567890ghijkl
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
                    id: target1111111111111111
                    lastDetected: 1634836529
                    name: The Target Name
                    numOccurrences: 10
                    pipelineId: example_pipeline
                    userId: Sit qui minus omnis.
                    variantName: Vero sint est consequatur.
                  - executionId: abcdef1234567890ghijkl
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
                    id: target1111111111111111
                    lastDetected: 1634836529
                    name: The Target Name
                    numOccurrences: 10
                    pipelineId: example_pipeline
                    userId: Sit qui minus omnis.
                    variantName: Vero sint est consequatur.
                  - executionId: abcdef1234567890ghijkl
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
                    id: target1111111111111111
                    lastDetected: 1634836529
                    name: The Target Name
                    numOccurrences: 10
                    pipelineId: example_pipeline
                    userId: Sit qui minus omnis.
                    variantName: Vero sint est consequatur.
                issueType: Ipsa vel.
                lastDetected: 1634836529
                override:
                  originalSeverity: medium
                  reason: snyk
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                referenceIdentifiers:
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                scanTool: owasp
                severityCode: High
                targetType: Autem corrupti voluptatem excepturi molestiae est.
                title: >-
                  Semgrep Finding:
                  generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
              schema:
                $ref: '#/components/schemas/FrontendAllIssuesDetailsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/all-issues/issues/{issueId}/targets/{targetId}:
    get:
      description: Provide list of filters for the latest scans of a baseline
      operationId: Frontend#AllIssuesOccurrenceDetails
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: None,Pending,Rejected,Expired
          in: query
          name: exemptionStatuses
          schema:
            example: None,Pending,Rejected,Expired
            pattern: >-
              ^(None|Pending|Approved|Rejected|Expired)(,None|,Pending|,Approved|,Rejected|,Expired)*$
            type: string
        - allowEmptyValue: true
          example: A Target Name
          in: query
          name: search
          schema:
            example: A Target Name
            maxLength: 256
            type: string
        - description: The ID of the Security Issue
          example: abcdef1234567890ghijkl
          in: path
          name: issueId
          required: true
          schema:
            description: The ID of the Security Issue
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: Associated Target ID
          example: abcdef1234567890ghijkl
          in: path
          name: targetId
          required: true
          schema:
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                description: Voluptas et aut tempore.
                exemptionId: abcdef1234567890ghijkl
                issueType: Ratione quo quam sequi.
                occurrences:
                  - Repellat distinctio sunt.: Nostrum nobis odio molestiae illum laborum.
                    Ut inventore.: Occaecati minus qui.
                  - Aut animi fuga quae ipsum.: Optio eum laudantium sit labore reiciendis.
                    Natus fugiat.: Occaecati optio asperiores rerum aliquam.
                  - Laborum architecto necessitatibus.: Atque nisi et in sapiente.
                    Rerum natus tenetur qui maiores sit ea.: Quidem eos est.
                  - Aut quas veritatis voluptatem totam voluptatem nihil.: Enim quod.
                    Et iste sint.: Eos aliquid ipsam dolorem eveniet eius corporis.
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                referenceIdentifiers:
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                  - id: Voluptatibus sit iure aliquam doloribus.
                    type: Recusandae necessitatibus sit ullam eius.
                severityCode: High
                targetName: The Target
                targetType: Sint sit.
                title: >-
                  Semgrep Finding:
                  generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                variantName: Quia sed explicabo numquam temporibus.
              schema:
                $ref: >-
                  #/components/schemas/FrontendAllIssuesOccurrenceDetailsResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/exemption/{exemptionId}/issue-severity-change:
    get:
      description: >-
        Provides the severity change for an issue when approving occurrence
        level exemption
      operationId: Frontend#IssueSeverityChange
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: The Security Scan execution that detected this Security Issue
          example: abcdef1234567890ghijkl
          in: query
          name: scanId
          schema:
            description: The Security Scan execution that detected this Security Issue
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: The ID of the Security Issue
          example: abcdef1234567890ghijkl
          in: query
          name: issueId
          required: true
          schema:
            description: The ID of the Security Issue
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          in: path
          name: exemptionId
          required: true
          schema:
            description: ID of Security Test Exemption
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                currentSeverityCode: High
                newSeverityCode: Medium
              schema:
                $ref: '#/components/schemas/FrontendIssueSeverityChangeResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/exemption/{exemptionId}/targets:
    get:
      description: Returns a list of impacted target details for an exemption id
      operationId: Frontend#ImpactedTargetsForExemption
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: CWE-123
          in: query
          name: search
          schema:
            example: CWE-123
            maxLength: 256
            type: string
        - description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          in: path
          name: exemptionId
          required: true
          schema:
            description: ID of Security Test Exemption
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                impactedTargets:
                  - executionId: abcdef1234567890ghijkl
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    lastScanned: 1634836529
                    name: NodeGoat
                    numExemptedOccurrences: 150
                    numOccurrences: 150
                    orgId: example_org
                    parameters:
                      branch: main
                    pipelineId: pipeline_1
                    projectId: example_project
                    scanId: abcdef1234567890ghijkl
                    targetId: abcdef1234567890ghijkl
                    type: repository
                  - executionId: abcdef1234567890ghijkl
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    lastScanned: 1634836529
                    name: NodeGoat
                    numExemptedOccurrences: 150
                    numOccurrences: 150
                    orgId: example_org
                    parameters:
                      branch: main
                    pipelineId: pipeline_1
                    projectId: example_project
                    scanId: abcdef1234567890ghijkl
                    targetId: abcdef1234567890ghijkl
                    type: repository
                  - executionId: abcdef1234567890ghijkl
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    lastScanned: 1634836529
                    name: NodeGoat
                    numExemptedOccurrences: 150
                    numOccurrences: 150
                    orgId: example_org
                    parameters:
                      branch: main
                    pipelineId: pipeline_1
                    projectId: example_project
                    scanId: abcdef1234567890ghijkl
                    targetId: abcdef1234567890ghijkl
                    type: repository
                  - executionId: abcdef1234567890ghijkl
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    lastScanned: 1634836529
                    name: NodeGoat
                    numExemptedOccurrences: 150
                    numOccurrences: 150
                    orgId: example_org
                    parameters:
                      branch: main
                    pipelineId: pipeline_1
                    projectId: example_project
                    scanId: abcdef1234567890ghijkl
                    targetId: abcdef1234567890ghijkl
                    type: repository
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: >-
                  #/components/schemas/FrontendImpactedTargetsForExemptionResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/exemptions:
    post:
      description: Provides data needed by the Global Exemptions Security Review page
      operationId: Frontend#GlobalExemptions
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          description: Exemption status
          example: Approved
          in: query
          name: status
          required: true
          schema:
            description: Exemption status
            enum:
              - Approved
              - Pending
              - Expired
              - Rejected
              - Canceled
            example: Approved
            maxLength: 8
            type: string
        - allowEmptyValue: true
          example: Keyword search. Searches Title, Reason & Type
          in: query
          name: search
          schema:
            default: ''
            example: Keyword search. Searches Title, Reason & Type
            maxLength: 128
            type: string
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Maxime sint fugiat blanditiis.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Nisi aut sed magni veritatis dolor recusandae.
            type: string
      requestBody:
        content:
          application/json:
            example:
              orgProjectFilter:
                - org1:project1
                - org1:project2
            schema:
              $ref: '#/components/schemas/GlobalExemptionsRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                counts:
                  Approved: 150
                  Expired: 150
                  Pending: 150
                  Rejected: 150
                exemptions:
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: '#/components/schemas/FrontendSecurityReviewResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_exemption_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/expiring-exemptions/{executionId}:
    get:
      description: Returns issue summaries that are going to expire
      operationId: Frontend#ExpiringExemptions
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Number of days of Baseline Issue counts to return
          example: 5612
          in: query
          name: days
          schema:
            default: 7
            description: Number of days of Baseline Issue counts to return
            example: 2576
            format: int64
            maximum: 9999
            minimum: 1
            type: integer
        - description: Harness pipeline execution ID
          example: abcdef1234567890ghijkl
          in: path
          name: executionId
          required: true
          schema:
            description: Harness pipeline execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                issues:
                  - currentStatus: Expired
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Expired
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numNewOccurrences: 1048060960681060400
                    numOccurrences: 8296927288358581000
                    numRemediatedOccurrences: 7232480910270412000
                    originStatus: approved
                    origins:
                      - app
                      - base
                    override:
                      originalSeverity: medium
                      reason: snyk
                    scanId: scan111111111111111111
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - currentStatus: Expired
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Expired
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numNewOccurrences: 1048060960681060400
                    numOccurrences: 8296927288358581000
                    numRemediatedOccurrences: 7232480910270412000
                    originStatus: approved
                    origins:
                      - app
                      - base
                    override:
                      originalSeverity: medium
                      reason: snyk
                    scanId: scan111111111111111111
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - currentStatus: Expired
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Expired
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numNewOccurrences: 1048060960681060400
                    numOccurrences: 8296927288358581000
                    numRemediatedOccurrences: 7232480910270412000
                    originStatus: approved
                    origins:
                      - app
                      - base
                    override:
                      originalSeverity: medium
                      reason: snyk
                    scanId: scan111111111111111111
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
              schema:
                $ref: '#/components/schemas/FrontendExpiringExemptionsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/issue-counts:
    get:
      description: >-
        Returns counts of active Security Issues for one or more Pipeline
        Executions
      operationId: Frontend#ExecutionIssueCounts
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: >-
            Comma-separated list of Harness Execution IDs for which to count
            Security Issues
          example: abcdef1234567890ghijkl,mnopqr0987654321stuvwx
          in: query
          name: executionIds
          required: true
          schema:
            description: >-
              Comma-separated list of Harness Execution IDs for which to count
              Security Issues
            example: abcdef1234567890ghijkl,mnopqr0987654321stuvwx
            pattern: '[\dA-Za-z_-]{22}(,[\dA-Za-z_-]{22})*'
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                Molestias quia perferendis sunt amet dolor.:
                  critical: 1
                  high: 3
                  ignored: 1
                  info: 11
                  low: 39
                  medium: 17
                  newCritical: 1
                  newHigh: 3
                  newInfo: 11
                  newLow: 39
                  newMedium: 17
                  newUnassigned: 0
                  unassigned: 0
              schema:
                additionalProperties:
                  $ref: '#/components/schemas/IssueCounts'
                example:
                  Sit ex cumque harum quis sunt.:
                    critical: 1
                    high: 3
                    ignored: 1
                    info: 11
                    low: 39
                    medium: 17
                    newCritical: 1
                    newHigh: 3
                    newInfo: 11
                    newLow: 39
                    newMedium: 17
                    newUnassigned: 0
                    unassigned: 0
                type: object
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/issue-exemption/{exemptionId}:
    get:
      description: Returns a specific issue exemption
      operationId: Frontend#IssueForExemption
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness STO Target ID
          example: abcdef1234567890ghijkl
          in: query
          name: targetId
          schema:
            description: Harness STO Target ID
            example: abcdef1234567890ghijkl
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          in: path
          name: exemptionId
          required: true
          schema:
            description: ID of Security Test Exemption
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                baseImageName: baseImageName
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                currentStatus: Pending
                details:
                  package: json-schema
                  version: v0.2.3
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Expired
                harnessAugmentation:
                  Occaecati beatae molestias qui sint eos et.: Et autem iusto vero est eos.
                  Praesentium dolores tenetur voluptatem quae.: Ut in.
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                numOccurrences: 10
                occurrenceId: 12345
                occurrences:
                  - line: '42'
                  - line: '666'
                occurrencesPagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                originStatus: approved
                origins:
                  - app
                  - base
                productId: product1234567890abcde
                severity: 8.5
                severityCode: High
                status: Remediated
                subproduct: product
                targetId: abcdef1234567890ghijkl
                targetName: abcdef1234567890ghijkl
                targetType: repository
                targetVariantId: abcdef1234567890ghijkl
                targetVariantName: nodegoat:master
                targets:
                  - targetId: target2222222222222222
                    targetName: Target 1
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
              schema:
                $ref: '#/components/schemas/FrontendIssueForExemptionResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/overview/baselines:
    get:
      description: Provides baseline execution data needed by the Overview page
      operationId: Frontend#OverviewBaselines
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                executionIds:
                  - Consequatur molestiae et incidunt aspernatur harum deserunt.
                  - Eos modi occaecati corporis fugit atque distinctio.
                  - Repellat placeat dolore est rem sit optio.
              schema:
                $ref: '#/components/schemas/FrontendOverviewBaselinesResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/overview/historical-counts:
    get:
      description: Provides historical issue data needed by the Overview page
      operationId: Frontend#OverviewHistoricalCounts
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Number of days of Baseline Issue counts to return
          example: 44
          in: query
          name: days
          schema:
            default: 30
            description: Number of days of Baseline Issue counts to return
            example: 47
            format: int64
            maximum: 90
            minimum: 1
            type: integer
      responses:
        '200':
          content:
            application/json:
              example:
                counts:
                  - active: true
                    counts:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                    date: 1651578240
                    detections:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                    remediations:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                  - active: true
                    counts:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                    date: 1651578240
                    detections:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                    remediations:
                      critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
              schema:
                $ref: >-
                  #/components/schemas/FrontendOverviewHistoricalCountsResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/pipeline-security/issues:
    get:
      description: Provide issue data needed by the PipelineSecurityView
      operationId: Frontend#PipelineSecurityIssues
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          in: query
          name: executionId
          required: true
          schema:
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: pageExisting
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSizeExisting
          schema:
            default: 50
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: pageNew
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSizeNew
          schema:
            default: 50
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: stage1,stage2
          in: query
          name: stages
          schema:
            example: stage1,stage2
            pattern: ^([a-zA-Z0-9_]+)(,[a-zA-Z0-9_]+)*$
            type: string
        - allowEmptyValue: true
          example: stageId.step1id,stageId.step2Id
          in: query
          name: steps
          schema:
            example: stageId.step1id,stageId.step2Id
            pattern: ^([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)(,[a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)*$
            type: string
        - allowEmptyValue: true
          example: target1111111111111111,abcdef1234567890abcdef
          in: query
          name: targetIds
          schema:
            example: target1111111111111111,abcdef1234567890abcdef
            pattern: ^([a-zA-Z0-9_-]{22})(,[a-zA-Z0-9_-]{22})*$
            type: string
        - allowEmptyValue: true
          example: repository,container
          in: query
          name: targetTypes
          schema:
            example: repository,container
            pattern: >-
              ^(repository|container|instance|configuration)(,repository|,container|,instance|,configuration)*$
            type: string
        - allowEmptyValue: true
          example: owasp,zap
          in: query
          name: productNames
          schema:
            example: owasp,zap
            pattern: >-
              ^([a-zA-Z0-9_-]+(\|[a-zA-Z0-9_
              -]+)?)(,[a-zA-Z0-9_-]+(\|[a-zA-Z0-9_ -]+)?)*$
            type: string
        - allowEmptyValue: true
          example: Critical,High,Medium
          in: query
          name: severityCodes
          schema:
            example: Critical,High,Medium
            pattern: >-
              ^(Critical|High|Medium|Low|Info)(,Critical|,High|,Medium|,Low|,Info)*$
            type: string
        - allowEmptyValue: true
          example: true
          in: query
          name: includeExempted
          schema:
            default: true
            example: true
            type: boolean
        - allowEmptyValue: true
          example: CWE-123
          in: query
          name: search
          schema:
            example: CWE-123
            maxLength: 256
            type: string
        - allowEmptyValue: true
          example: SAST
          in: query
          name: issueTypes
          schema:
            example: SAST
            pattern: >-
              ^(SAST|DAST|SCA|IAC|SECRET|MISCONFIG|BUG_SMELLS|CODE_SMELLS|CODE_COVERAGE|EXTERNAL_POLICY)(,SAST|,DAST|,SCA|,IAC|,SECRET|,MISCONFIG|,BUG_SMELLS|,CODE_SMELLS|,CODE_COVERAGE|,EXTERNAL_POLICY)*$
            type: string
        - allowEmptyValue: true
          example: active,remediated
          in: query
          name: status
          schema:
            example: active,remediated
            pattern: >-
              ^(ACTIVE|REMEDIATED|PENDING_EXEMPTION|EXEMPTED|PARTIALLY_EXEMPTED|REJECTED)(,ACTIVE|,REMEDIATED|,PENDING_EXEMPTION|,EXEMPTED|,PARTIALLY_EXEMPTED|,REJECTED)*$
            type: string
        - allowEmptyValue: true
          example: app
          in: query
          name: origins
          schema:
            example: app
            pattern: ^(app|base|no_layer)(,app|,base|,no_layer)*$
            type: string
        - allowEmptyValue: true
          example: approved
          in: query
          name: originStatuses
          schema:
            example: approved
            pattern: ^(approved|unapproved)(,approved|,unapproved)*$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                counts:
                  activeIssueCount: 8118351700684797000
                  existing:
                    active: 150
                    critical: 1
                    high: 3
                    ignored: 1
                    info: 11
                    low: 39
                    medium: 17
                  new:
                    active: 150
                    critical: 1
                    high: 3
                    ignored: 1
                    info: 11
                    low: 39
                    medium: 17
                  remediated:
                    active: 150
                    critical: 1
                    high: 3
                    ignored: 1
                    info: 11
                    low: 39
                    medium: 17
                  totalActive: 5573055429440194000
                  totalApp: 7230377491846565000
                  totalBase: 7321888988188102000
                  totalDeduplicationRate: 0.7533872
                  totalExempted: 4813427233882540000
                  totalNoLayer: 505412228863283700
                  totalNumOccurrence: 7787001750933949000
                  totalPartiallyExempted: 8003506715595385000
                  totalPending: 982006258367386900
                  totalRejected: 1519204626652216600
                  totalRemediated: 7163594115465648000
                existing:
                  issues:
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                  pagination:
                    link: ''
                    page: 4
                    pageSize: 20
                    totalItems: 230
                    totalPages: 12
                matchingSteps:
                  - stageId: stage_id
                    stepId: step_id
                  - stageId: stage_id
                    stepId: step_id
                  - stageId: stage_id
                    stepId: step_id
                  - stageId: stage_id
                    stepId: step_id
                new:
                  issues:
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    - currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                  pagination:
                    link: ''
                    page: 4
                    pageSize: 20
                    totalItems: 230
                    totalPages: 12
              schema:
                $ref: >-
                  #/components/schemas/FrontendPipelineSecurityIssuesResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/pipeline-security/issues/csv:
    get:
      description: Export pipeline security issues as JSON data for CSV generation
      operationId: Frontend#PipelineSecurityIssuesCSV
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          in: query
          name: executionId
          required: true
          schema:
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: pageExisting
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSizeExisting
          schema:
            default: 50
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: pageNew
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSizeNew
          schema:
            default: 50
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: stage1,stage2
          in: query
          name: stages
          schema:
            example: stage1,stage2
            pattern: ^([a-zA-Z0-9_]+)(,[a-zA-Z0-9_]+)*$
            type: string
        - allowEmptyValue: true
          example: stageId.step1id,stageId.step2Id
          in: query
          name: steps
          schema:
            example: stageId.step1id,stageId.step2Id
            pattern: ^([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)(,[a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)*$
            type: string
        - allowEmptyValue: true
          example: target1111111111111111,abcdef1234567890abcdef
          in: query
          name: targetIds
          schema:
            example: target1111111111111111,abcdef1234567890abcdef
            pattern: ^([a-zA-Z0-9_-]{22})(,[a-zA-Z0-9_-]{22})*$
            type: string
        - allowEmptyValue: true
          example: repository,container
          in: query
          name: targetTypes
          schema:
            example: repository,container
            pattern: >-
              ^(repository|container|instance|configuration)(,repository|,container|,instance|,configuration)*$
            type: string
        - allowEmptyValue: true
          example: owasp,zap
          in: query
          name: productNames
          schema:
            example: owasp,zap
            pattern: >-
              ^([a-zA-Z0-9_-]+(\|[a-zA-Z0-9_
              -]+)?)(,[a-zA-Z0-9_-]+(\|[a-zA-Z0-9_ -]+)?)*$
            type: string
        - allowEmptyValue: true
          example: Critical,High,Medium
          in: query
          name: severityCodes
          schema:
            example: Critical,High,Medium
            pattern: >-
              ^(Critical|High|Medium|Low|Info)(,Critical|,High|,Medium|,Low|,Info)*$
            type: string
        - allowEmptyValue: true
          example: true
          in: query
          name: includeExempted
          schema:
            default: true
            example: true
            type: boolean
        - allowEmptyValue: true
          example: CWE-123
          in: query
          name: search
          schema:
            example: CWE-123
            maxLength: 256
            type: string
        - allowEmptyValue: true
          example: SAST
          in: query
          name: issueTypes
          schema:
            example: SAST
            pattern: >-
              ^(SAST|DAST|SCA|IAC|SECRET|MISCONFIG|BUG_SMELLS|CODE_SMELLS|CODE_COVERAGE|EXTERNAL_POLICY)(,SAST|,DAST|,SCA|,IAC|,SECRET|,MISCONFIG|,BUG_SMELLS|,CODE_SMELLS|,CODE_COVERAGE|,EXTERNAL_POLICY)*$
            type: string
        - allowEmptyValue: true
          example: active,remediated
          in: query
          name: status
          schema:
            example: active,remediated
            pattern: >-
              ^(ACTIVE|REMEDIATED|PENDING_EXEMPTION|EXEMPTED|PARTIALLY_EXEMPTED|REJECTED)(,ACTIVE|,REMEDIATED|,PENDING_EXEMPTION|,EXEMPTED|,PARTIALLY_EXEMPTED|,REJECTED)*$
            type: string
        - allowEmptyValue: true
          example: app
          in: query
          name: origins
          schema:
            example: app
            pattern: ^(app|base|no_layer)(,app|,base|,no_layer)*$
            type: string
        - allowEmptyValue: true
          example: approved
          in: query
          name: originStatuses
          schema:
            example: approved
            pattern: ^(approved|unapproved)(,approved|,unapproved)*$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                data:
                  - - Numquam ipsa aliquam nemo autem dolorum voluptate.
                    - Alias reprehenderit.
                    - Est architecto magni dignissimos officiis.
                  - - Et et.
                    - Magni voluptatem minus blanditiis consequatur.
                    - Aut illum.
                  - - Corrupti dicta impedit quia unde ut.
                    - Assumenda cum in.
                    - Aliquam qui inventore quam voluptatem soluta unde.
                    - Eveniet mollitia vel vero.
                executionId: Et fugit est.
                filename: Ipsum aut et praesentium fuga aspernatur voluptas.
                headers:
                  - Qui illo et molestiae qui.
                  - Quia tempore dolore et.
                  - Quo pariatur itaque incidunt natus doloremque veritatis.
                  - Recusandae accusantium optio illum dicta cum.
                totalRows: 5937843644555008000
              schema:
                $ref: >-
                  #/components/schemas/ExportPipelineSecurityIssuesCSVResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      summary: Export security issues data
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/pipeline-security/steps:
    get:
      description: Provide step data needed by the PipelineSecurityView
      operationId: Frontend#PipelineSecuritySteps
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          in: query
          name: executionId
          required: true
          schema:
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                steps:
                  - baselineVariant: 'branch: main'
                    scanId: scan111111111111111111
                    scanTool: owasp
                    scanToolName: OWASP
                    stageId: stage_id
                    stepId: step_id
                    subproduct: product
                    targetId: target1111111111111111
                    targetName: The Target
                    targetType: repository
                    targetVariant: 'branch: feature'
                  - baselineVariant: 'branch: main'
                    scanId: scan111111111111111111
                    scanTool: owasp
                    scanToolName: OWASP
                    stageId: stage_id
                    stepId: step_id
                    subproduct: product
                    targetId: target1111111111111111
                    targetName: The Target
                    targetType: repository
                    targetVariant: 'branch: feature'
                  - baselineVariant: 'branch: main'
                    scanId: scan111111111111111111
                    scanTool: owasp
                    scanToolName: OWASP
                    stageId: stage_id
                    stepId: step_id
                    subproduct: product
                    targetId: target1111111111111111
                    targetName: The Target
                    targetType: repository
                    targetVariant: 'branch: feature'
                  - baselineVariant: 'branch: main'
                    scanId: scan111111111111111111
                    scanTool: owasp
                    scanToolName: OWASP
                    stageId: stage_id
                    stepId: step_id
                    subproduct: product
                    targetId: target1111111111111111
                    targetName: The Target
                    targetType: repository
                    targetVariant: 'branch: feature'
              schema:
                $ref: '#/components/schemas/FrontendPipelineSecurityStepsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/security-review:
    get:
      description: Provides data needed by the Security Review page
      operationId: Frontend#SecurityReview
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          description: Exemption status
          example: Approved
          in: query
          name: status
          required: true
          schema:
            description: Exemption status
            enum:
              - Approved
              - Pending
              - Expired
              - Rejected
              - Canceled
            example: Approved
            maxLength: 8
            type: string
        - allowEmptyValue: true
          example: Keyword search. Searches Title, Reason & Type
          in: query
          name: search
          schema:
            default: ''
            example: Keyword search. Searches Title, Reason & Type
            maxLength: 128
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                counts:
                  Approved: 150
                  Expired: 150
                  Pending: 150
                  Rejected: 150
                exemptions:
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                  - approverId: user111111111111111111
                    canApproveFor:
                      - ACCOUNT
                      - ORG
                      - PROJECT
                      - PIPELINE
                    canCancel: true
                    canCreate: true
                    canReApprove: true
                    canReject: true
                    created: 1651578240
                    expiration: 1651578240
                    id: abcdef1234567890ghijkl
                    isDeleted: true
                    isOccurrenceLevelExemption: true
                    issueSummary:
                      currentStatus: Expired
                      exemptionCoverage: Partially Exempted
                      exemptionId: abcdef1234567890ghijkl
                      exemptionStatusAtScan: Expired
                      id: abcdef1234567890ghijkl
                      key: json-schema@0.2.3
                      numNewOccurrences: 1048060960681060400
                      numOccurrences: 8296927288358581000
                      numRemediatedOccurrences: 7232480910270412000
                      originStatus: approved
                      origins:
                        - app
                        - base
                      override:
                        originalSeverity: medium
                        reason: snyk
                      scanId: scan111111111111111111
                      severity: 8.5
                      severityCode: High
                      status: Remediated
                      targetVariantName: nodegoat:master
                      title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                      type: SAST
                    lastModified: 1651578240
                    link: Upstream bug
                    numOccurrences: 10
                    orgId: STO
                    pendingChanges:
                      durationDays: 7
                    pipelineId: pipeline_1
                    projectId: STO
                    reason: Upstream bug
                    requesterId: user111111111111111111
                    scope: PROJECT
                    status: Approved
                    targetId: target2222222222222222
                    totalOccurrences: 10
                    type: Other
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: '#/components/schemas/FrontendSecurityReviewResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_exemption_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/test-targets:
    get:
      description: Provides data needed by the Test Targets page
      operationId: Frontend#TestTargets
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Page number to fetch (starting from 0)
          example: 4
          in: query
          name: page
          schema:
            default: 0
            description: Page number to fetch (starting from 0)
            example: 4
            format: int64
            minimum: 0
            type: integer
        - allowEmptyValue: true
          description: Number of results per page
          example: 50
          in: query
          name: pageSize
          schema:
            default: 30
            description: Number of results per page
            example: 50
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: The Target
          in: query
          name: search
          schema:
            example: The Target
            maxLength: 128
            type: string
        - allowEmptyValue: true
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          in: query
          name: targetId
          schema:
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                targets:
                  - approvedVariantsCount: 1
                    baseline:
                      id: variant111111111111111
                      name: 'Branch: feature-1'
                      status: approved
                    baselineRegEx: release_.*
                    directory: /
                    id: target1111111111111111
                    lastScanned: 1634836529
                    name: target 1
                    status: approved
                    totalVariantsCount: 10
                    type: repository
                    url: github.com/harness/sto-core
                    variants:
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                  - approvedVariantsCount: 1
                    baseline:
                      id: variant111111111111111
                      name: 'Branch: feature-1'
                      status: approved
                    baselineRegEx: release_.*
                    directory: /
                    id: target1111111111111111
                    lastScanned: 1634836529
                    name: target 1
                    status: approved
                    totalVariantsCount: 10
                    type: repository
                    url: github.com/harness/sto-core
                    variants:
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                  - approvedVariantsCount: 1
                    baseline:
                      id: variant111111111111111
                      name: 'Branch: feature-1'
                      status: approved
                    baselineRegEx: release_.*
                    directory: /
                    id: target1111111111111111
                    lastScanned: 1634836529
                    name: target 1
                    status: approved
                    totalVariantsCount: 10
                    type: repository
                    url: github.com/harness/sto-core
                    variants:
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                  - approvedVariantsCount: 1
                    baseline:
                      id: variant111111111111111
                      name: 'Branch: feature-1'
                      status: approved
                    baselineRegEx: release_.*
                    directory: /
                    id: target1111111111111111
                    lastScanned: 1634836529
                    name: target 1
                    status: approved
                    totalVariantsCount: 10
                    type: repository
                    url: github.com/harness/sto-core
                    variants:
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                      - id: variant111111111111111
                        name: 'Branch: feature-1'
                        status: approved
                targetsPagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: '#/components/schemas/FrontendTestTargetsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_testtarget_view
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/frontend/test-targets/{targetId}/variants/status:
    put:
      description: Updates statuses for a list of Test Target Variants
      operationId: Frontend#UpdateTestTargetVariants
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - description: Associated Target ID
          example: abcdef1234567890ghijkl
          in: path
          name: targetId
          required: true
          schema:
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      requestBody:
        content:
          application/json:
            example:
              targetVariants:
                - id: abcdef1234567890ghijkl
                  status: approved
                - id: xyz987zyx654wvu321tsr9
                  status: unapproved
            schema:
              $ref: '#/components/schemas/UpdateTestTargetVariantsRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                status: Ducimus aspernatur facere in ut culpa.
              schema:
                $ref: '#/components/schemas/StoStatus'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_testtarget_approve
      tags:
        - Frontend
    x-internal: true
  /sto/api/v2/issues:
    get:
      tags:
        - Issues
      description: List a collection of Security Issues
      operationId: Issues#ListIssues
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: productId
          in: query
          description: Issue product ID
          allowEmptyValue: true
          schema:
            type: string
            description: Issue product ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: key
          in: query
          description: Compression/deduplication key
          allowEmptyValue: true
          schema:
            type: string
            description: Compression/deduplication key
            example: json-schema@0.2.3
            maxLength: 512
          example: json-schema@0.2.3
        - name: excludeOccurrences
          in: query
          allowEmptyValue: true
          schema:
            type: boolean
            example: false
          example: false
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Atque modi maiores.
          example: Temporibus quia illo corrupti molestiae.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssuesListIssuesResponseBody'
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
    post:
      tags:
        - Issues
      description: Create a new Security Issue
      operationId: Issues#CreateIssue
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: normalized
          in: query
          description: Indicates the Occurrences have already been normalized
          allowEmptyValue: true
          schema:
            type: boolean
            description: Indicates the Occurrences have already been normalized
            example: false
          example: false
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Recusandae autem voluptates.
          example: Nulla atque repudiandae deleniti commodi porro velit.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateIssueRequestBody'
            example:
              details:
                package: json-schema
                version: v0.2.3
              exemptionId: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              keyPattern:
                - library_name
                - library_version
              numOccurrences: 10
              occurrences:
                - line: '42'
                - line: '666'
              productId: product1234567890abcde
              scanId: abcdef1234567890ghijkl
              severity: 8.5
              severityCode: High
              subproduct: product
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsCreateExemptionResponseBody'
              example:
                id: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_edit
  /sto/api/v2/issues/{id}:
    delete:
      description: Delete an existing Security Issue
      operationId: Issues#DeleteIssue
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: The ID of the Security Issue to delete
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the Security Issue to delete
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '204':
          description: No Content response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_delete
      tags:
        - Issues
      x-internal: true
    get:
      tags:
        - Issues
      description: Find Security Issue by ID
      operationId: Issues#FindIssueById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: targetId
          in: query
          description: Associated Target ID
          allowEmptyValue: true
          schema:
            type: string
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          examples:
            default:
              summary: default
              value: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Security Issue to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Security Issue to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Quibusdam nihil ut.
          example: Vel nihil ut et.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Issue'
              example:
                baseImageName: baseImageName
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                currentStatus: Approved
                details:
                  package: json-schema
                  version: v0.2.3
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Pending
                harnessAugmentation:
                  Tenetur quia.: Facilis minima ea ut sed ab aut.
                  Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                numOccurrences: 10
                occurrenceId: 12345
                occurrences:
                  - line: '42'
                  - line: '666'
                originStatus: approved
                origins:
                  - app
                  - base
                productId: product1234567890abcde
                severity: 8.5
                severityCode: High
                status: Remediated
                subproduct: product
                targetId: abcdef1234567890ghijkl
                targetName: abcdef1234567890ghijkl
                targetType: repository
                targetVariantId: abcdef1234567890ghijkl
                targetVariantName: nodegoat:master
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
    put:
      tags:
        - Issues
      description: Update an existing Security Issue
      operationId: Issues#UpdateIssue
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Security Issue to update
          required: true
          schema:
            type: string
            description: The ID of the Security Issue to update
            example: Aut quasi.
          example: Nesciunt aut non quia eum.
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Quis voluptas ducimus libero ut velit sint.
          example: Quia est nihil voluptatem voluptate.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateIssueRequestBody'
            example:
              numOccurrences: 10
              occurrences:
                - line: '42'
                - line: '666'
              scanId: abcdef1234567890ghijkl
              type: SAST
      responses:
        '204':
          description: Update succeeded.
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_edit
  /sto/api/v2/issues/{id}/augment-remediation:
    post:
      tags:
        - Issues
      description: Use AI to augment the remediation steps for this Security Issue
      operationId: Issues#IssuesAugmentRemediation
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: id
          in: path
          description: The ID of the Security Issue to augment
          required: true
          schema:
            type: string
            description: The ID of the Security Issue to augment
            example: 1234567890abcdefghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: 1234567890abcdefghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Modi consequatur fuga sint distinctio eius recusandae.
          example: Qui deserunt sunt aperiam.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IssuesAugmentRemediationRequestBody'
            example:
              connectorId: Magnam non incidunt veritatis quasi qui voluptas.
              occurrenceId: 12345
              referenceId: CWE-123
              scanId: abcdefghijkl1234567890
              userSnippet: |-
                func example() int {
                  return 0
                }
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/IssuesIssuesAugmentRemediationResponseBody
              example:
                metadata:
                  warnings:
                    - message: Quo natus est non enim quia.
                      source: Ducimus aperiam tenetur et qui a.
                    - message: Quo natus est non enim quia.
                      source: Ducimus aperiam tenetur et qui a.
                    - message: Quo natus est non enim quia.
                      source: Ducimus aperiam tenetur et qui a.
                remediationCode: Enim praesentium earum maiores.
                remediationContext: Sed id in sed.
                repoContent: Explicabo minus consectetur.
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/pipeline-security/issues/csv:
    get:
      tags:
        - pipeline-security
      summary: ExportPipelineSecurityIssuesCSV pipeline-security
      description: Export pipeline security issues as CSV data
      operationId: pipeline-security#ExportPipelineSecurityIssuesCSV
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: executionId
          in: query
          description: Harness Execution ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/ExportPipelineSecurityIssuesCSVResponseBody
              example:
                data:
                  - - Cum autem nihil eius cumque.
                    - Corrupti autem nesciunt voluptas.
                  - - Illum quidem fugiat quo quo consequatur atque.
                    - Sit praesentium nisi rerum et et dignissimos.
                  - - Non cupiditate.
                    - Sed dolor.
                executionId: Fuga officiis.
                filename: Possimus eius assumenda.
                headers:
                  - Id eveniet nihil maxime.
                  - A est voluptate.
                totalRows: 864262751792666400
      security:
        - X-Api-Key_header_Authorization: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/products:
    get:
      tags:
        - Products
      description: List a collection of Scan Tools
      operationId: Products#ListProducts
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: name
          in: query
          description: Resource name
          allowEmptyValue: true
          schema:
            type: string
            description: Resource name
            example: NodeGoat
          example: NodeGoat
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductsListProductsResponseBody'
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - created: 1651578240
                    description: OWASP 5.x SCA scanner
                    id: abcdef1234567890ghijkl
                    isEnabled: true
                    lastModified: 1651578240
                    name: owasp
                    prettyName: owasp
                  - created: 1651578240
                    description: OWASP 5.x SCA scanner
                    id: abcdef1234567890ghijkl
                    isEnabled: true
                    lastModified: 1651578240
                    name: owasp
                    prettyName: owasp
                  - created: 1651578240
                    description: OWASP 5.x SCA scanner
                    id: abcdef1234567890ghijkl
                    isEnabled: true
                    lastModified: 1651578240
                    name: owasp
                    prettyName: owasp
                  - created: 1651578240
                    description: OWASP 5.x SCA scanner
                    id: abcdef1234567890ghijkl
                    isEnabled: true
                    lastModified: 1651578240
                    name: owasp
                    prettyName: owasp
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
  /sto/api/v2/products/{id}:
    get:
      tags:
        - Products
      description: Find Scan Tool by ID
      operationId: Products#FindProductById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Scan Tool to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Scan Tool to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
              example:
                created: 1651578240
                description: OWASP 5.x SCA scanner
                id: abcdef1234567890ghijkl
                isEnabled: true
                lastModified: 1651578240
                name: owasp
                prettyName: owasp
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
  /sto/api/v2/pull-requests/repositories:
    get:
      operationId: Pull Requests#ListPullRequests
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: Github
          in: query
          name: provider
          required: true
          schema:
            example: Github
            type: string
        - allowEmptyValue: true
          example: 1234567890abcdefghijkl
          in: query
          name: connectorId
          schema:
            example: 1234567890abcdefghijkl
            type: string
        - allowEmptyValue: true
          example: Ut quia sit sed quia non est.
          in: query
          name: repositoryPath
          required: true
          schema:
            example: Amet et nostrum est rerum enim doloremque.
            type: string
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Repellat quis dicta.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Vel ea distinctio.
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                pullRequests:
                  - pullRequestNumber: 4105272855209716700
                    pullRequestUrl: Rerum blanditiis.
                    sourceBranch: feat/shiny-object
                  - pullRequestNumber: 4105272855209716700
                    pullRequestUrl: Rerum blanditiis.
                    sourceBranch: feat/shiny-object
                  - pullRequestNumber: 4105272855209716700
                    pullRequestUrl: Rerum blanditiis.
                    sourceBranch: feat/shiny-object
              schema:
                $ref: '#/components/schemas/PullRequestsListPullRequestsResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Pull Requests
    x-internal: true
  /sto/api/v2/pull-requests/repositories/pulls:
    get:
      operationId: Pull Requests#FindPullRequestByID
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: Github
          in: query
          name: provider
          required: true
          schema:
            example: Github
            type: string
        - allowEmptyValue: true
          example: 1234567890abcdefghijkl
          in: query
          name: connectorId
          schema:
            example: 1234567890abcdefghijkl
            type: string
        - allowEmptyValue: true
          example: Dolorem totam molestias odit cum magni rerum.
          in: query
          name: repositoryPath
          required: true
          schema:
            example: Vel fuga officia neque.
            type: string
        - allowEmptyValue: true
          description: The number of the pullRequest to retrieve
          example: 11
          in: query
          name: pullRequestNumber
          required: true
          schema:
            description: The number of the pullRequest to retrieve
            example: 11
            format: int64
            minimum: 1
            type: integer
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Non debitis rerum.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Omnis est cupiditate.
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                pullRequestNumber: 4105272855209716700
                pullRequestUrl: Rerum blanditiis.
                sourceBranch: feat/shiny-object
              schema:
                $ref: '#/components/schemas/PullRequestResult'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Pull Requests
    post:
      description: Use AI to augment the remediation steps for this Security Issue
      operationId: Pull Requests#CreatePullRequest
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: Github
          in: query
          name: provider
          required: true
          schema:
            example: Github
            type: string
        - allowEmptyValue: true
          example: 1234567890abcdefghijkl
          in: query
          name: connectorId
          schema:
            example: 1234567890abcdefghijkl
            type: string
        - allowEmptyValue: true
          example: Et officia sit dolorem velit dicta.
          in: query
          name: repositoryPath
          required: true
          schema:
            example: Aut rerum qui inventore.
            type: string
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Culpa neque voluptatum consequatur rerum fugiat doloremque.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Quaerat rerum nulla voluptatum.
            type: string
      requestBody:
        content:
          application/json:
            example:
              branch: develop
              description: A description of the Pull Request.
              id: 1234567890abcdefghijkl
              occurrenceId: 12345
              pipelineUrl: https://app.harness.io/path/to/pipeline
              remediationCode: |-
                func example() int {
                  return 0
                }
              remediationCodeEnd: 16
              remediationCodePath: path/to/code
              remediationCodeStart: 14
              remediationContext: Context to the function.
              remediationIndent: 9
              vulnerableCode: |-
                func example() int {
                  return 0
                }
            schema:
              $ref: '#/components/schemas/CreatePullRequestRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                pullRequestNumber: 4105272855209716700
                pullRequestUrl: Rerum blanditiis.
                sourceBranch: feat/shiny-object
              schema:
                $ref: '#/components/schemas/PullRequestResult'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Pull Requests
    put:
      description: Use AI to augment the remediation steps for this Security Issue
      operationId: Pull Requests#UpdatePullRequest
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: Github
          in: query
          name: provider
          required: true
          schema:
            example: Github
            type: string
        - allowEmptyValue: true
          example: 1234567890abcdefghijkl
          in: query
          name: connectorId
          schema:
            example: 1234567890abcdefghijkl
            type: string
        - allowEmptyValue: true
          example: Blanditiis et neque sed qui sit.
          in: query
          name: repositoryPath
          required: true
          schema:
            example: Est cumque non sunt.
            type: string
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Aut totam.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Iusto aspernatur dignissimos qui est.
            type: string
      requestBody:
        content:
          application/json:
            example:
              id: 1234567890abcdefghijkl
              occurrenceId: 12345
              pipelineUrl: https://app.harness.io/path/to/pipeline
              pullRequestNumber: 11
              remediationCode: |-
                func example() int {
                  return 0
                }
              remediationCodeEnd: 16
              remediationCodePath: path/to/code
              remediationCodeStart: 14
              remediationContext: Context to the function.
              remediationIndent: 9
              vulnerableCode: |-
                func example() int {
                  return 0
                }
            schema:
              $ref: '#/components/schemas/UpdatePullRequestRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                pullRequestNumber: 4105272855209716700
                pullRequestUrl: Rerum blanditiis.
                sourceBranch: feat/shiny-object
              schema:
                $ref: '#/components/schemas/PullRequestResult'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
      tags:
        - Pull Requests
    x-internal: true
  /sto/api/v2/pull-requests/repositories/pulls/correlation:
    get:
      description: Determine if a path is correlated to a Pull Request.
      operationId: Pull Requests#GetPullRequestCorrelation
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          example: Github
          in: query
          name: provider
          required: true
          schema:
            example: Github
            type: string
        - allowEmptyValue: true
          example: 1234567890abcdefghijkl
          in: query
          name: connectorId
          schema:
            example: 1234567890abcdefghijkl
            type: string
        - allowEmptyValue: true
          example: Cumque sit dolore quasi molestias esse quo.
          in: query
          name: repositoryPath
          required: true
          schema:
            example: Dolores est qui sit.
            type: string
        - allowEmptyValue: true
          example: 11
          in: query
          name: pullRequestNumber
          required: true
          schema:
            example: 11
            format: int64
            minimum: 1
            type: integer
        - allowEmptyValue: true
          example: path/to/code
          in: query
          name: codePath
          required: true
          schema:
            example: path/to/code
            type: string
        - allowEmptyValue: true
          description: Harness personal or service access token
          example: Quod quae quia nihil praesentium.
          in: header
          name: X-Api-Key
          schema:
            description: Harness personal or service access token
            example: Nesciunt rem pariatur aspernatur odit occaecati omnis.
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                isCorrelated: true
              schema:
                $ref: >-
                  #/components/schemas/PullRequestsGetPullRequestCorrelationResponseBody
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
      summary: GetPullRequestCorrelation Pull Requests
      tags:
        - Pull Requests
    x-internal: true
  /sto/api/v2/reference-identifiers/{refId}:
    get:
      tags:
        - Reference Identifiers
      description: Reference Identifiers Lookup
      operationId: Reference Identifiers#getByReferenceId
      parameters:
        - name: refId
          in: path
          required: true
          schema:
            type: string
            example: CWE-123
          example: CWE-123
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Nulla accusamus at sit aut laborum.
          example: Et excepturi repellat praesentium facilis impedit nostrum.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetByReferenceIDResponseBody'
              example:
                description: Vel perferendis.
                extendedDescription: Atque quidem deserunt qui tempore omnis aut.
                remediationSteps: Beatae quis impedit.
                severity: 8.5
                severityCode: High
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - core_account_view
  /sto/api/v2/scans:
    get:
      tags:
        - Scans
      description: List a collection of Security Test Scans
      operationId: Scans#ListScans
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: executionId
          in: query
          description: Harness Execution ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Fugiat tempore.
          example: Ea modi.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScansListScansResponseBody'
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - codeCoverage: 65.5
                    created: 1651578240
                    executionId: abcdef1234567890ghijkl
                    gitMetadata:
                      detectedName: Nesciunt et.
                      detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                      droneCorrelated: true
                      provider: >-
                        Dignissimos incidunt quibusdam officiis doloremque eos
                        et.
                      pullRequestNumber: 11
                      repositoryHttp: https://github.com/harness/drone-cli.git
                      repositoryPath:
                        - Nulla ipsa.
                        - Molestiae possimus expedita odio ut.
                        - Et dolor doloribus.
                        - Ut adipisci optio sit itaque assumenda.
                      repositorySsh: git@github.com:harness/drone-cli.git
                      sourceBranch: feat/shiny-object
                      targetBranch: develop
                      workspace: /harness
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    metadata:
                      baseImageDigest: sha256:abcdef1234567890ghijkl
                      baseImageName: my-image
                      baseImageTag: 1.0.0
                    orgId: your_harness_org
                    pipelineId: your_harness_pipeline
                    productId: product111111111111111
                    projectId: your_harness_project
                    refinementVersion: 1.0.5
                    stageId: stage_id
                    status: Succeeded
                    stepId: step_id
                    subproduct: owasp
                    targetVariantId: variant111111111111111
                  - codeCoverage: 65.5
                    created: 1651578240
                    executionId: abcdef1234567890ghijkl
                    gitMetadata:
                      detectedName: Nesciunt et.
                      detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                      droneCorrelated: true
                      provider: >-
                        Dignissimos incidunt quibusdam officiis doloremque eos
                        et.
                      pullRequestNumber: 11
                      repositoryHttp: https://github.com/harness/drone-cli.git
                      repositoryPath:
                        - Nulla ipsa.
                        - Molestiae possimus expedita odio ut.
                        - Et dolor doloribus.
                        - Ut adipisci optio sit itaque assumenda.
                      repositorySsh: git@github.com:harness/drone-cli.git
                      sourceBranch: feat/shiny-object
                      targetBranch: develop
                      workspace: /harness
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    metadata:
                      baseImageDigest: sha256:abcdef1234567890ghijkl
                      baseImageName: my-image
                      baseImageTag: 1.0.0
                    orgId: your_harness_org
                    pipelineId: your_harness_pipeline
                    productId: product111111111111111
                    projectId: your_harness_project
                    refinementVersion: 1.0.5
                    stageId: stage_id
                    status: Succeeded
                    stepId: step_id
                    subproduct: owasp
                    targetVariantId: variant111111111111111
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_scan_view
    post:
      tags:
        - Scans
      description: Create a new Security Test Scan
      operationId: Scans#CreateScan
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Magni deserunt.
          example: Qui distinctio totam officia voluptates.
        - name: X-Harness-User-Id
          in: header
          description: Harness User ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness User ID
            example: abcdef1234567890ghijkl
          example: abcdef1234567890ghijkl
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateScanRequestBody'
            example:
              codeCoverage: 65.5
              executionId: abcdef1234567890ghijkl
              gitMetadata:
                detectedName: Sunt doloremque corporis facere aut quasi fugit.
                detectedVariant: Aut repellat.
                droneCorrelated: true
                provider: Quia sed dolorem suscipit dolor.
                pullRequestNumber: 11
                repositoryHttp: https://github.com/harness/drone-cli.git
                repositoryPath:
                  - Sit consequatur facilis.
                  - Ex sapiente.
                repositorySsh: git@github.com:harness/drone-cli.git
                sourceBranch: feat/shiny-object
                targetBranch: develop
                workspace: /harness
              orgId: your_harness_org
              pipelineId: your_harness_pipeline
              productId: product111111111111111
              projectId: your_harness_project
              refinementVersion: 1.0.5
              stageId: stage_id
              status: Succeeded
              stepId: step_id
              subproduct: owasp
              targetVariantId: variant111111111111111
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsCreateExemptionResponseBody'
              example:
                id: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_scan_edit
  /sto/api/v2/scans/{id}:
    delete:
      description: Delete an existing Security Test Scan
      operationId: Scans#DeleteScan
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: The ID of the Security Test Scan to delete
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the Security Test Scan to delete
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '204':
          description: No Content response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_scan_delete
      tags:
        - Scans
      x-internal: true
    get:
      tags:
        - Scans
      description: Find Security Test Scan by ID
      operationId: Scans#FindScanById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Security Test Scan to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Security Test Scan to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Dignissimos explicabo amet in dolore voluptatibus.
          example: Dignissimos reprehenderit sunt sint sunt iusto.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scan'
              example:
                codeCoverage: 65.5
                created: 1651578240
                executionId: abcdef1234567890ghijkl
                gitMetadata:
                  detectedName: Nesciunt et.
                  detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                  droneCorrelated: true
                  provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                  pullRequestNumber: 11
                  repositoryHttp: https://github.com/harness/drone-cli.git
                  repositoryPath:
                    - Nulla ipsa.
                    - Molestiae possimus expedita odio ut.
                    - Et dolor doloribus.
                    - Ut adipisci optio sit itaque assumenda.
                  repositorySsh: git@github.com:harness/drone-cli.git
                  sourceBranch: feat/shiny-object
                  targetBranch: develop
                  workspace: /harness
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                metadata:
                  baseImageDigest: sha256:abcdef1234567890ghijkl
                  baseImageName: my-image
                  baseImageTag: 1.0.0
                orgId: your_harness_org
                pipelineId: your_harness_pipeline
                productId: product111111111111111
                projectId: your_harness_project
                refinementVersion: 1.0.5
                stageId: stage_id
                status: Succeeded
                stepId: step_id
                subproduct: owasp
                targetVariantId: variant111111111111111
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_scan_view
    put:
      tags:
        - Scans
      description: Update an existing Security Test Scan
      operationId: Scans#UpdateScan
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Security Test Scan to update
          required: true
          schema:
            type: string
            description: The ID of the Security Test Scan to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Ut quo.
          example: Nam doloribus suscipit voluptate occaecati nulla pariatur.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateScanRequestBody'
            example:
              artifactFingerprint: abcdef1234567890ghijkl
              codeCoverage: 65.5
              executionId: abcdef1234567890ghijkl
              gitMetadata:
                detectedName: Sunt doloremque corporis facere aut quasi fugit.
                detectedVariant: Aut repellat.
                droneCorrelated: true
                provider: Quia sed dolorem suscipit dolor.
                pullRequestNumber: 11
                repositoryHttp: https://github.com/harness/drone-cli.git
                repositoryPath:
                  - Sit consequatur facilis.
                  - Ex sapiente.
                repositorySsh: git@github.com:harness/drone-cli.git
                sourceBranch: feat/shiny-object
                targetBranch: develop
                workspace: /harness
              metadata:
                baseImageDigest: sha256:abcdef1234567890ghijkl
                baseImageName: my-image
                baseImageTag: 1.0.0
              orgId: your_harness_org
              pipelineId: your_harness_pipeline
              productId: product111111111111111
              projectId: your_harness_project
              refinementVersion: 1.0.5
              stageId: stage_id
              status: Succeeded
              stepId: step_id
              subproduct: owasp
              targetVariantId: variant111111111111111
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scan'
              example:
                codeCoverage: 65.5
                created: 1651578240
                executionId: abcdef1234567890ghijkl
                gitMetadata:
                  detectedName: Nesciunt et.
                  detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                  droneCorrelated: true
                  provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                  pullRequestNumber: 11
                  repositoryHttp: https://github.com/harness/drone-cli.git
                  repositoryPath:
                    - Nulla ipsa.
                    - Molestiae possimus expedita odio ut.
                    - Et dolor doloribus.
                    - Ut adipisci optio sit itaque assumenda.
                  repositorySsh: git@github.com:harness/drone-cli.git
                  sourceBranch: feat/shiny-object
                  targetBranch: develop
                  workspace: /harness
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                metadata:
                  baseImageDigest: sha256:abcdef1234567890ghijkl
                  baseImageName: my-image
                  baseImageTag: 1.0.0
                orgId: your_harness_org
                pipelineId: your_harness_pipeline
                productId: product111111111111111
                projectId: your_harness_project
                refinementVersion: 1.0.5
                stageId: stage_id
                status: Succeeded
                stepId: step_id
                subproduct: owasp
                targetVariantId: variant111111111111111
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_scan_edit
  /sto/api/v2/scans/{id}/issue/{issueId}:
    get:
      tags:
        - Scans
      description: Returns a scan specific issue
      operationId: Scans#ScanIssue
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: sort
          in: query
          description: The field to sort by
          allowEmptyValue: true
          schema:
            type: string
            description: The field to sort by
            example: Dicta vel quia dolor rem quidem.
          example: Dolor ducimus.
        - name: order
          in: query
          description: The order to sort by
          allowEmptyValue: true
          schema:
            type: string
            description: The order to sort by
            example: ASC
            enum:
              - ASC
              - DESC
          example: DESC
        - name: id
          in: path
          description: The ID of the Security Test Scan
          required: true
          schema:
            type: string
            description: The ID of the Security Test Scan
            example: Aut deserunt suscipit dolores et corrupti odit.
          example: Sapiente optio sit accusantium.
        - name: issueId
          in: path
          description: The ID of the Security Test Issue
          required: true
          schema:
            type: string
            description: The ID of the Security Test Issue
            example: Sint voluptatem deleniti porro.
          example: Consequuntur ducimus numquam hic fugit.
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Iure et corrupti nihil magni.
          example: Eum facere molestiae.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScansScanIssueResponseBody'
              example:
                baseImageName: baseImageName
                baseImageOrgId: default
                baseImageProjectId: STO
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                currentStatus: Approved
                details:
                  package: json-schema
                  version: v0.2.3
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Expired
                gitMetadata:
                  detectedName: Nesciunt et.
                  detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                  droneCorrelated: true
                  provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                  pullRequestNumber: 11
                  repositoryHttp: https://github.com/harness/drone-cli.git
                  repositoryPath:
                    - Nulla ipsa.
                    - Molestiae possimus expedita odio ut.
                    - Et dolor doloribus.
                    - Ut adipisci optio sit itaque assumenda.
                  repositorySsh: git@github.com:harness/drone-cli.git
                  sourceBranch: feat/shiny-object
                  targetBranch: develop
                  workspace: /harness
                harnessAugmentation:
                  Magni pariatur quod.: Quisquam occaecati.
                  Quam cupiditate adipisci quas vitae ab tenetur.: Amet enim.
                  Qui voluptas illum aut et veritatis dolores.: Ut accusamus eum numquam.
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                lastBaseImageScanAt: 1651578240
                numNonExemptedOccurrences: 10
                numOccurrences: 10
                occurrenceId: 12345
                occurrences:
                  - line: '42'
                  - line: '666'
                occurrencesPagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                originStatus: approved
                origins:
                  - app
                  - base
                primaryOccurrenceId: 12345
                productId: product1234567890abcde
                severity: 8.5
                severityCode: High
                status: Remediated
                subproduct: product
                targetId: abcdef1234567890ghijkl
                targetName: abcdef1234567890ghijkl
                targetType: repository
                targetVariantId: abcdef1234567890ghijkl
                targetVariantName: nodegoat:master
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/scans/{id}/issue/{issueId}/occurrences:
    get:
      tags:
        - Scans
      description: Returns occurrences for a scan specific issue
      operationId: Scans#ScanIssueOccurrences
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: search
          in: query
          allowEmptyValue: true
          schema:
            type: string
            example: CWE-123,5
            maxLength: 256
          example: CWE-123,5
        - name: exemptionStatus
          in: query
          allowEmptyValue: true
          schema:
            type: string
            example: EXEMPTED,REJECTED
            pattern: >-
              ^(EXEMPTED|NOT_EXEMPTED|REJECTED|PENDING)(,EXEMPTED|,NOT_EXEMPTED|,REJECTED|,PENDING)*$
          example: EXEMPTED,REJECTED
        - name: sort
          in: query
          description: The field to sort by
          allowEmptyValue: true
          schema:
            type: string
            description: The field to sort by
            example: Quo ipsum.
          example: Quae aliquam voluptate velit et.
        - name: order
          in: query
          description: The order to sort by
          allowEmptyValue: true
          schema:
            type: string
            description: The order to sort by
            example: DESC
            enum:
              - ASC
              - DESC
          example: DESC
        - name: exemptionId
          in: query
          description: >-
            ID of Security Test Exemption if the API call is for scan + issue +
            exemption, needed for exemption issue target occurrences detail
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              ID of Security Test Exemption if the API call is for scan + issue
              + exemption, needed for exemption issue target occurrences detail
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Security Test Scan
          required: true
          schema:
            type: string
            description: The ID of the Security Test Scan
            example: Consectetur odio in facere.
          example: In quaerat quas occaecati.
        - name: issueId
          in: path
          description: The ID of the Security Test Issue
          required: true
          schema:
            type: string
            description: The ID of the Security Test Issue
            example: Hic deserunt eligendi non ipsa qui.
          example: Quo non reprehenderit et.
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Porro enim voluptatum.
          example: Qui fuga aliquam sed ut neque cum.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScansScanIssueResponseBody'
              example:
                baseImageName: baseImageName
                baseImageOrgId: default
                baseImageProjectId: STO
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                currentStatus: Approved
                details:
                  package: json-schema
                  version: v0.2.3
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Expired
                gitMetadata:
                  detectedName: Nesciunt et.
                  detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                  droneCorrelated: true
                  provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                  pullRequestNumber: 11
                  repositoryHttp: https://github.com/harness/drone-cli.git
                  repositoryPath:
                    - Nulla ipsa.
                    - Molestiae possimus expedita odio ut.
                    - Et dolor doloribus.
                    - Ut adipisci optio sit itaque assumenda.
                  repositorySsh: git@github.com:harness/drone-cli.git
                  sourceBranch: feat/shiny-object
                  targetBranch: develop
                  workspace: /harness
                harnessAugmentation:
                  Magni pariatur quod.: Quisquam occaecati.
                  Quam cupiditate adipisci quas vitae ab tenetur.: Amet enim.
                  Qui voluptas illum aut et veritatis dolores.: Ut accusamus eum numquam.
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                lastBaseImageScanAt: 1651578240
                numNonExemptedOccurrences: 10
                numOccurrences: 10
                occurrenceId: 12345
                occurrences:
                  - line: '42'
                  - line: '666'
                occurrencesPagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                originStatus: approved
                origins:
                  - app
                  - base
                primaryOccurrenceId: 12345
                productId: product1234567890abcde
                severity: 8.5
                severityCode: High
                status: Remediated
                subproduct: product
                targetId: abcdef1234567890ghijkl
                targetName: abcdef1234567890ghijkl
                targetType: repository
                targetVariantId: abcdef1234567890ghijkl
                targetVariantName: nodegoat:master
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/scans/{id}/issues:
    get:
      tags:
        - Scans
      description: List Issues by Scan ID
      operationId: Scans#ScanIssues
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: exempted
          in: query
          description: >-
            Chooses whether to show exempted issues ("only"), or non-exempted
            issues ("0" or "false")
          allowEmptyValue: true
          schema:
            type: string
            description: >-
              Chooses whether to show exempted issues ("only"), or non-exempted
              issues ("0" or "false")
            default: 'false'
            example: 'false'
            enum:
              - 'false'
              - only
              - '0'
          example: '0'
        - name: id
          in: path
          description: The Scan ID
          required: true
          schema:
            type: string
            description: The Scan ID
            example: abcdefghijkl1234567890
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdefghijkl1234567890
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Quis aliquid ea.
          example: Molestiae necessitatibus sed maxime quae.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScansScanIssuesResponseBody'
              example:
                issues:
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
                  - baseImageName: baseImageName
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    currentStatus: Approved
                    details:
                      package: json-schema
                      version: v0.2.3
                    exemptionCoverage: Partially Exempted
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatusAtScan: Pending
                    harnessAugmentation:
                      Tenetur quia.: Facilis minima ea ut sed ab aut.
                      Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
                    id: abcdef1234567890ghijkl
                    key: json-schema@0.2.3
                    numOccurrences: 10
                    occurrenceId: 12345
                    occurrences:
                      - line: '42'
                      - line: '666'
                    originStatus: approved
                    origins:
                      - app
                      - base
                    productId: product1234567890abcde
                    severity: 8.5
                    severityCode: High
                    status: Remediated
                    subproduct: product
                    targetId: abcdef1234567890ghijkl
                    targetName: abcdef1234567890ghijkl
                    targetType: repository
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: nodegoat:master
                    title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                    type: SAST
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/scans/{id}/issues/counts:
    get:
      tags:
        - Scans
      description: Returns counts of active Security Issues for a Security Test Scan
      operationId: Scans#ScanIssueCounts
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: id
          in: path
          description: The ID of the Security Test Scan for which to count issues
          required: true
          schema:
            type: string
            description: The ID of the Security Test Scan for which to count issues
            example: Voluptatibus a omnis.
          example: Nobis quis sit pariatur inventore.
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Quia eaque.
          example: Molestias incidunt commodi asperiores unde qui maiores.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScansScanIssueCountsResponseBody'
              example:
                appCritical: 1
                appHigh: 3
                appInfo: 11
                appLow: 39
                appMedium: 17
                baseCritical: 1
                baseHigh: 3
                baseImageApproved: true
                baseImageDetected: true
                baseInfo: 11
                baseLow: 39
                baseMedium: 17
                codeCoverage: 65.5
                critical: 1
                externalPolicyFailures: 0
                high: 3
                ignored: 1
                ignoredCritical: 1
                ignoredHigh: 3
                ignoredInfo: 11
                ignoredLow: 39
                ignoredMedium: 17
                ignoredUnassigned: 0
                info: 11
                low: 39
                medium: 17
                newAppCritical: 1
                newAppHigh: 3
                newAppInfo: 11
                newAppLow: 39
                newAppMedium: 17
                newBaseCritical: 1
                newBaseHigh: 3
                newBaseInfo: 11
                newBaseLow: 39
                newBaseMedium: 17
                newCritical: 1
                newHigh: 3
                newIgnoredCritical: 1
                newIgnoredHigh: 3
                newIgnoredInfo: 11
                newIgnoredLow: 39
                newIgnoredMedium: 17
                newIgnoredOccurrencesCritical: 1
                newIgnoredOccurrencesHigh: 3
                newIgnoredOccurrencesInfo: 11
                newIgnoredOccurrencesLow: 39
                newIgnoredOccurrencesMedium: 17
                newIgnoredOccurrencesUnassigned: 0
                newIgnoredUnassigned: 0
                newInfo: 11
                newLow: 39
                newMedium: 17
                newOccurrencesCritical: 1
                newOccurrencesHigh: 3
                newOccurrencesInfo: 11
                newOccurrencesLow: 39
                newOccurrencesMedium: 17
                newOccurrencesUnassigned: 0
                newTotal: 3
                newTotalBase: 3
                newUnassigned: 0
                total: 10
                totalBase: 10
                unassigned: 0
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_issue_view
  /sto/api/v2/sto-data-frontend/all-issues/issues:
    post:
      description: >-
        Provides a paginated list of issues for the provided target name and
        variant combinations
      operationId: STO Data Frontend#AllIssuesList
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      requestBody:
        content:
          application/json:
            example:
              artifactFingerprints:
                - p32
                - oiq
                - wbr
              issueTypes: SAST
              page: 4
              pageSize: 50
              scanTools: owasp,zap
              search: CWE-123
              severityCodes: Critical,High,Medium
              targetNames: repo/abc,another-repo/xyz
              targetTypes: repository,container
              targetVariants:
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
            schema:
              $ref: '#/components/schemas/AllIssuesListRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                issues:
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                  - exemptionExpiration: 1651578240
                    exemptionId: abcdef1234567890ghijkl
                    exemptionStatus: Pending
                    id: abcdef1234567890ghijkl
                    issueType: Voluptates at ad maxime sed ea.
                    lastDetected: 1634836529
                    numOccurrences: 12
                    numTargetsImpacted: 2
                    override:
                      originalSeverity: medium
                      reason: snyk
                    severityCode: High
                    title: >-
                      Semgrep Finding:
                      generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
              schema:
                $ref: '#/components/schemas/STODataFrontendAllIssuesListResponseBody'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      summary: List of issues for selected targets and variants
      tags:
        - STO Data Frontend
    x-internal: true
  /sto/api/v2/sto-data-frontend/artifact-scan-summary:
    post:
      description: >-
        Returns counts of active Security Issues for one or more Pipeline
        Executions per scanner
      operationId: STO Data Frontend#ExecutionArtifactScanSummary
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      requestBody:
        content:
          application/json:
            example:
              artifactFingerprints:
                - '530'
                - tdj
                - 4pk
              targetVariants:
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
            schema:
              $ref: '#/components/schemas/ExecutionArtifactSummaryRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                - artifactFingerprint: uzg
                  executionId: abcdef1234567890ghijkl
                  lastScanned: 1634836529
                  pipelineId: example_pipeline
                  scanners:
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: uzg
                  executionId: abcdef1234567890ghijkl
                  lastScanned: 1634836529
                  pipelineId: example_pipeline
                  scanners:
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: uzg
                  executionId: abcdef1234567890ghijkl
                  lastScanned: 1634836529
                  pipelineId: example_pipeline
                  scanners:
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: uzg
                  executionId: abcdef1234567890ghijkl
                  lastScanned: 1634836529
                  pipelineId: example_pipeline
                  scanners:
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                    - critical: 1
                      high: 3
                      ignored: 1
                      info: 11
                      low: 39
                      medium: 17
                      scanner: Semgrep
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
              schema:
                example:
                  - artifactFingerprint: uzg
                    executionId: abcdef1234567890ghijkl
                    lastScanned: 1634836529
                    pipelineId: example_pipeline
                    scanners:
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: uzg
                    executionId: abcdef1234567890ghijkl
                    lastScanned: 1634836529
                    pipelineId: example_pipeline
                    scanners:
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: uzg
                    executionId: abcdef1234567890ghijkl
                    lastScanned: 1634836529
                    pipelineId: example_pipeline
                    scanners:
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                      - critical: 1
                        high: 3
                        ignored: 1
                        info: 11
                        low: 39
                        medium: 17
                        scanner: Semgrep
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                items:
                  $ref: '#/components/schemas/ScanIssueCountsWithExecutionInfo'
                type: array
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - STO Data Frontend
    x-internal: true
  /sto/api/v2/sto-data-frontend/artifact-summary:
    post:
      description: >-
        Returns counts of active Security Issues for one or more Pipeline
        Executions
      operationId: STO Data Frontend#ExecutionArtifactSummary
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      requestBody:
        content:
          application/json:
            example:
              artifactFingerprints:
                - ga8
                - 04t
                - p8h
              targetVariants:
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
                - targetName: Dolorem sed qui harum et.
                  targetType: repository
                  targetVariantName: Doloremque corporis enim.
            schema:
              $ref: '#/components/schemas/ExecutionArtifactSummaryRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                - artifactFingerprint: o8x
                  critical: 1
                  executionId: abcdef1234567890ghijkl
                  high: 3
                  ignored: 1
                  info: 11
                  lastScanned: 1634836529
                  low: 39
                  medium: 17
                  pipelineId: example_pipeline
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: o8x
                  critical: 1
                  executionId: abcdef1234567890ghijkl
                  high: 3
                  ignored: 1
                  info: 11
                  lastScanned: 1634836529
                  low: 39
                  medium: 17
                  pipelineId: example_pipeline
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: o8x
                  critical: 1
                  executionId: abcdef1234567890ghijkl
                  high: 3
                  ignored: 1
                  info: 11
                  lastScanned: 1634836529
                  low: 39
                  medium: 17
                  pipelineId: example_pipeline
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
              schema:
                example:
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                items:
                  $ref: '#/components/schemas/IssueCountsWithExecutionInfo'
                type: array
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - STO Data Frontend
    x-internal: true
  /sto/api/v2/sto-data-frontend/execution-summary/{executionId}:
    get:
      description: >-
        Returns counts of active Security Issues for a specific Pipeline
        Executions
      operationId: STO Data Frontend#ExecutionSummary
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - description: Harness pipeline execution ID
          example: abcdef1234567890ghijkl
          in: path
          name: executionId
          required: true
          schema:
            description: Harness pipeline execution ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                - artifactFingerprint: o8x
                  critical: 1
                  executionId: abcdef1234567890ghijkl
                  high: 3
                  ignored: 1
                  info: 11
                  lastScanned: 1634836529
                  low: 39
                  medium: 17
                  pipelineId: example_pipeline
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
                - artifactFingerprint: o8x
                  critical: 1
                  executionId: abcdef1234567890ghijkl
                  high: 3
                  ignored: 1
                  info: 11
                  lastScanned: 1634836529
                  low: 39
                  medium: 17
                  pipelineId: example_pipeline
                  targetId: abcdef1234567890ghijkl
                  targetName: NodeGoat
                  targetVariantId: abcdef1234567890ghijkl
                  targetVariantName: NodeGoat
                  type: repository
              schema:
                example:
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                  - artifactFingerprint: o8x
                    critical: 1
                    executionId: abcdef1234567890ghijkl
                    high: 3
                    ignored: 1
                    info: 11
                    lastScanned: 1634836529
                    low: 39
                    medium: 17
                    pipelineId: example_pipeline
                    targetId: abcdef1234567890ghijkl
                    targetName: NodeGoat
                    targetVariantId: abcdef1234567890ghijkl
                    targetVariantName: NodeGoat
                    type: repository
                items:
                  $ref: '#/components/schemas/IssueCountsWithExecutionInfo'
                type: array
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - STO Data Frontend
    x-internal: true
  /sto/api/v2/sto-data-frontend/issue-counts:
    post:
      description: >-
        Returns counts of active Security Issues for one or more Pipeline
        Executions
      operationId: STO Data Frontend#ExecutionIssueCounts
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          example: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          example: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
      requestBody:
        content:
          application/json:
            example:
              targetVariants:
                - targetName: Voluptas facilis tempore facere.
                  targetType: repository
                  targetVariantName: Qui ut quia error ipsa.
                - targetName: Voluptas facilis tempore facere.
                  targetType: repository
                  targetVariantName: Qui ut quia error ipsa.
                - targetName: Voluptas facilis tempore facere.
                  targetType: repository
                  targetVariantName: Qui ut quia error ipsa.
            schema:
              $ref: '#/components/schemas/ExecutionIssueCountsRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              example:
                Rerum ut perspiciatis voluptatibus.:
                  Natus consequuntur reprehenderit est delectus ducimus.:
                    Dicta iusto deleniti vitae.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
                    Eveniet atque.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
                    Quas veniam eligendi.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
                  Ut quam assumenda nulla et enim labore.:
                    Est placeat.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
                    Et aut consectetur voluptate iure velit.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
                    Eum incidunt qui.:
                      artifactFingerprint: o8x
                      critical: 1
                      executionId: abcdef1234567890ghijkl
                      high: 3
                      ignored: 1
                      info: 11
                      lastScanned: 1634836529
                      low: 39
                      medium: 17
                      pipelineId: example_pipeline
                      targetId: abcdef1234567890ghijkl
                      targetName: NodeGoat
                      targetVariantId: abcdef1234567890ghijkl
                      targetVariantName: NodeGoat
                      type: repository
              schema:
                additionalProperties:
                  additionalProperties:
                    additionalProperties:
                      $ref: '#/components/schemas/IssueCountsWithExecutionInfo'
                    example:
                      Omnis velit qui consequuntur omnis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Quis praesentium.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    type: object
                  example:
                    Aspernatur sint sunt.:
                      Aut qui dolorem expedita qui repudiandae perferendis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Et quos ipsa eius optio et possimus.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Voluptates quas minus eum impedit.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Ipsum dolor ipsum expedita.:
                      Cum hic.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Officiis unde.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Similique consequatur sed consequuntur.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Nihil natus molestiae et velit illo.:
                      Rerum vel tenetur exercitationem molestias consequuntur.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                  type: object
                example:
                  Omnis amet repellendus autem sit pariatur.:
                    A voluptatem.:
                      Aut nostrum fugiat.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Et alias dolorem minus porro aspernatur.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Qui adipisci aut dolores eos.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Optio ut suscipit et voluptatem.:
                      Assumenda nulla earum sit odit odit.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Maxime quo sapiente ut voluptatem quibusdam odit.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Rerum unde labore.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Sit rerum.:
                      Omnis quis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                  Voluptatem maiores fuga neque exercitationem nemo.:
                    Aut omnis aut accusantium.:
                      Asperiores eum ratione ullam iusto nobis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Corrupti explicabo omnis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Doloremque voluptatem quis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Expedita at dignissimos.:
                      Eos ut officiis.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                    Minus voluptatem omnis mollitia quis.:
                      Et eos quo.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                      Excepturi maxime nihil et.:
                        artifactFingerprint: o8x
                        critical: 1
                        executionId: abcdef1234567890ghijkl
                        high: 3
                        ignored: 1
                        info: 11
                        lastScanned: 1634836529
                        low: 39
                        medium: 17
                        pipelineId: example_pipeline
                        targetId: abcdef1234567890ghijkl
                        targetName: NodeGoat
                        targetVariantId: abcdef1234567890ghijkl
                        targetVariantName: NodeGoat
                        type: repository
                type: object
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_issue_view
      tags:
        - STO Data Frontend
    x-internal: true
  /sto/api/v2/system/health:
    get:
      tags:
        - System
      description: Check service health
      operationId: System#health
      responses:
        '204':
          description: Service is healthy.
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
  /sto/api/v2/system/version:
    get:
      tags:
        - System
      description: Get service version
      operationId: System#version
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceVersion'
              example:
                commit: 96381692bf3a2bd7904769c6886e832435768b57
                version: v0.123.0
  /sto/api/v2/targets:
    get:
      tags:
        - Test Targets
      description: List a collection of Test Targets
      operationId: Targets#ListTargets
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: name
          in: query
          description: Resource name
          allowEmptyValue: true
          schema:
            type: string
            description: Resource name
            example: NodeGoat
          example: NodeGoat
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          example: example_project
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Aut quibusdam.
          example: Totam quod.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TargetsListTargetsResponseBody'
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - baselineRegEx: release_.*
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    directory: app/src
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    name: NodeGoat
                    orgId: example_org
                    projectId: example_project
                    type: repository
                    url: https://github.com/example/repo
                  - baselineRegEx: release_.*
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    directory: app/src
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    name: NodeGoat
                    orgId: example_org
                    projectId: example_project
                    type: repository
                    url: https://github.com/example/repo
                  - baselineRegEx: release_.*
                    baselineVariantId: abcdef1234567890ghijkl
                    created: 1651578240
                    directory: app/src
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    name: NodeGoat
                    orgId: example_org
                    projectId: example_project
                    type: repository
                    url: https://github.com/example/repo
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_view
    post:
      tags:
        - Test Targets
      description: Create a new Test Target
      operationId: Targets#CreateTarget
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Rerum aut eveniet neque aut.
          example: Ratione architecto.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTargetRequestBody'
            example:
              baselineRegEx: release_.*
              baselineVariantId: abcdef1234567890ghijkl
              directory: app/src
              name: NodeGoat
              type: repository
              url: https://github.com/example/repo
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsCreateExemptionResponseBody'
              example:
                id: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_edit
  /sto/api/v2/targets/{id}:
    delete:
      description: Delete an existing Test Target
      operationId: Targets#DeleteTarget
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          description: Harness Organization ID
          examples:
            default:
              summary: default
              value: example_org
          in: query
          name: orgId
          required: true
          schema:
            description: Harness Organization ID
            example: example_org
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - allowEmptyValue: true
          description: Harness Project ID
          examples:
            default:
              summary: default
              value: example_project
          in: query
          name: projectId
          required: true
          schema:
            description: Harness Project ID
            example: example_project
            maxLength: 128
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            type: string
        - description: The ID of the Test Target to delete
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the Test Target to delete
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '204':
          description: No Content response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_testtarget_delete
      tags:
        - Test Targets
      x-internal: true
    get:
      tags:
        - Test Targets
      description: Find Test Target by ID
      operationId: Targets#FindTargetById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: id
          in: path
          description: The ID of the Test Target to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Test Target to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Aut dolor.
          example: Cum dolore quibusdam officiis.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoTarget'
              example:
                baselineRegEx: release_.*
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                directory: app/src
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                name: NodeGoat
                orgId: example_org
                projectId: example_project
                type: repository
                url: https://github.com/example/repo
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_view
    patch:
      tags:
        - Test Targets
      description: Update only certain fields on an existing Test Target
      operationId: Targets#PatchTarget
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: id
          in: path
          description: The ID of the Test Target to update
          required: true
          schema:
            type: string
            description: The ID of the Test Target to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Dolor ipsam quod deleniti velit quo assumenda.
          example: Expedita ratione aliquam tempora totam.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchTargetRequestBody'
            example:
              baselineRegEx: release_.*
              baselineVariantId: abcdef1234567890ghijkl
              directory: app/src
              name: NodeGoat
              type: repository
              url: https://github.com/example/repo
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoTarget'
              example:
                baselineRegEx: release_.*
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                directory: app/src
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                name: NodeGoat
                orgId: example_org
                projectId: example_project
                type: repository
                url: https://github.com/example/repo
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_edit
    put:
      tags:
        - Test Targets
      description: Update an existing Test Target
      operationId: Targets#UpdateTarget
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: orgId
          in: query
          description: Harness Organization ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Organization ID
            example: example_org
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_org
        - name: projectId
          in: query
          description: Harness Project ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Project ID
            example: example_project
            pattern: ^[A-Za-z_][A-Za-z0-9_]*$
            maxLength: 128
          examples:
            default:
              summary: default
              value: example_project
        - name: id
          in: path
          description: The ID of the Test Target to update
          required: true
          schema:
            type: string
            description: The ID of the Test Target to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Et iusto in qui et id.
          example: Quod deleniti quam ipsam quasi eaque.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTargetRequestBody'
            example:
              baselineRegEx: release_.*
              baselineVariantId: abcdef1234567890ghijkl
              directory: app/src
              name: NodeGoat
              type: repository
              url: https://github.com/example/repo
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoTarget'
              example:
                baselineRegEx: release_.*
                baselineVariantId: abcdef1234567890ghijkl
                created: 1651578240
                directory: app/src
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                name: NodeGoat
                orgId: example_org
                projectId: example_project
                type: repository
                url: https://github.com/example/repo
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_edit
  /sto/api/v2/targets/{targetId}/variants:
    get:
      tags:
        - Target Variants
      description: List a collection of Scan Target Variants
      operationId: Target Variants#ListTargetVariants
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: page
          in: query
          description: Page number to fetch (starting from 0)
          allowEmptyValue: true
          schema:
            type: integer
            description: Page number to fetch (starting from 0)
            default: 0
            example: 4
            format: int64
            minimum: 0
          example: 4
        - name: pageSize
          in: query
          description: Number of results per page
          allowEmptyValue: true
          schema:
            type: integer
            description: Number of results per page
            default: 30
            example: 50
            format: int64
            minimum: 1
            maximum: 100
          example: 50
        - name: name
          in: query
          description: Resource name
          allowEmptyValue: true
          schema:
            type: string
            description: Resource name
            example: NodeGoat
          example: NodeGoat
        - name: targetId
          in: path
          description: Associated Target ID
          required: true
          schema:
            type: string
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Nisi sit reprehenderit.
          example: Voluptates adipisci quod sit et voluptatibus nihil.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TargetVariantsListTargetVariantsResponseBody
              example:
                pagination:
                  link: ''
                  page: 4
                  pageSize: 20
                  totalItems: 230
                  totalPages: 12
                results:
                  - created: 1651578240
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    parameters:
                      branch: main
                    targetId: abcdef1234567890ghijkl
                  - created: 1651578240
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    parameters:
                      branch: main
                    targetId: abcdef1234567890ghijkl
                  - created: 1651578240
                    hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                    id: abcdef1234567890ghijkl
                    lastModified: 1651578240
                    parameters:
                      branch: main
                    targetId: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_view
    post:
      tags:
        - Target Variants
      description: Create a new Scan Target Variant
      operationId: Target Variants#CreateTargetVariant
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: targetId
          in: path
          description: Associated Target ID
          required: true
          schema:
            type: string
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          examples:
            default:
              summary: default
              value: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Sint quam fugit tempore.
          example: Quia ipsam.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTargetVariantRequestBody'
            example:
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              parameters:
                branch: main
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionsCreateExemptionResponseBody'
              example:
                id: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_edit
  /sto/api/v2/targets/{targetId}/variants/{id}:
    delete:
      description: Delete an existing Scan Target Variant
      operationId: Target Variants#DeleteTargetVariant
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          required: true
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: Associated Target ID
          examples:
            default:
              summary: default
              value: abcdef1234567890ghijkl
          in: path
          name: targetId
          required: true
          schema:
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - description: The ID of the Scan Target Variant to delete
          example: abcdef1234567890ghijkl
          in: path
          name: id
          required: true
          schema:
            description: The ID of the Scan Target Variant to delete
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
      responses:
        '204':
          description: No Content response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '404':
          content:
            application/json:
              example:
                message: Not Found
                status: 404
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'NotFound: Not Found response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - jwt_header_Authorization:
            - sto_testtarget_delete
      tags:
        - Target Variants
      x-internal: true
    get:
      tags:
        - Target Variants
      description: Find Scan Target Variant by ID
      operationId: Target Variants#FindTargetVariantById
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: targetId
          in: path
          description: Associated Target ID
          required: true
          schema:
            type: string
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          examples:
            default:
              summary: default
              value: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Scan Target Variant to retrieve
          required: true
          schema:
            type: string
            description: The ID of the Scan Target Variant to retrieve
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Reprehenderit qui quam enim similique quo.
          example: Ut neque omnis id excepturi consequatur.
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TargetVariant'
              example:
                created: 1651578240
                hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                parameters:
                  branch: main
                targetId: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_view
    put:
      tags:
        - Target Variants
      description: Update an existing Scan Target Variant
      operationId: Target Variants#UpdateTargetVariant
      parameters:
        - name: accountId
          in: query
          description: Harness Account ID
          allowEmptyValue: true
          required: true
          schema:
            type: string
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: targetId
          in: path
          description: Associated Target ID
          required: true
          schema:
            type: string
            description: Associated Target ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          examples:
            default:
              summary: default
              value: abcdef1234567890ghijkl
        - name: id
          in: path
          description: The ID of the Scan Target Variant to update
          required: true
          schema:
            type: string
            description: The ID of the Scan Target Variant to update
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
          example: abcdef1234567890ghijkl
        - name: X-Api-Key
          in: header
          description: Harness personal or service access token
          allowEmptyValue: true
          schema:
            type: string
            description: Harness personal or service access token
            example: Pariatur in similique rerum.
          example: Illo ut consequatur repudiandae excepturi explicabo.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTargetVariantRequestBody'
            example:
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              parameters:
                branch: main
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TargetVariant'
              example:
                created: 1651578240
                hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
                id: abcdef1234567890ghijkl
                lastModified: 1651578240
                parameters:
                  branch: main
                targetId: abcdef1234567890ghijkl
        '400':
          description: 'BadRequest: Bad Request response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
        '401':
          description: 'Unauthorized: Unauthorized response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Unauthorized
                status: 401
        '403':
          description: 'Forbidden: Forbidden response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Forbidden
                status: 403
        '404':
          description: 'NotFound: Not Found response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Not Found
                status: 404
        '429':
          description: 'TooManyRequests: Too Many Requests response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Too Many Requests
                status: 429
        '500':
          description: 'InternalServerError: Internal Server Error response.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
              example:
                message: Internal Server Error
                status: 500
      security:
        - X-Api-Key_header_X-Api-Key: []
          jwt_header_Authorization:
            - sto_testtarget_edit
  /sto/api/v2/token:
    get:
      description: Issue a cross-service token
      operationId: Token#IssueToken
      parameters:
        - allowEmptyValue: true
          description: Harness Account ID
          example: abcdef1234567890ghijkl
          in: query
          name: accountId
          schema:
            description: Harness Account ID
            example: abcdef1234567890ghijkl
            pattern: ^[a-zA-Z0-9_-]{22}$
            type: string
        - allowEmptyValue: true
          example:
            - sto-plugin
            - sto-plugin
          in: query
          name: audience
          schema:
            example:
              - manager
              - sto-plugin
            items:
              enum:
                - sto-plugin
                - manager
              example: manager
              type: string
            type: array
        - allowEmptyValue: true
          description: Harness internal shared secret
          example: 3q7uiERGH78heq3weg
          in: header
          name: X-Harness-Token
          required: true
          schema:
            description: Harness internal shared secret
            example: 3q7uiERGH78heq3weg
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                token: >-
                  eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
              schema:
                $ref: '#/components/schemas/TokenResponse'
          description: OK response.
        '400':
          content:
            application/json:
              example:
                message: 'Bad Request: accountId parameter is required'
                status: 400
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'BadRequest: Bad Request response.'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized
                status: 401
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Unauthorized: Unauthorized response.'
        '403':
          content:
            application/json:
              example:
                message: Forbidden
                status: 403
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'Forbidden: Forbidden response.'
        '429':
          content:
            application/json:
              example:
                message: Too Many Requests
                status: 429
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'TooManyRequests: Too Many Requests response.'
        '500':
          content:
            application/json:
              example:
                message: Internal Server Error
                status: 500
              schema:
                $ref: '#/components/schemas/NotFound'
          description: 'InternalServerError: Internal Server Error response.'
      security:
        - X-Harness-Token_header_X-Harness-Token: []
      tags:
        - Token
    x-internal: true
  /v1/dbops/custom-operations:
    post:
      description: Get custom operations result for db step execution
      operationId: GetV1CustomOperations
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/CustomOperationRequest'
      responses:
        '200':
          $ref: '#/components/responses/CustomOperationResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: CustomOperations
      tags:
        - Pipeline Step
      x-internal: true
      x-stoplight:
        id: g6ot57l3510l2
  /v1/dbops/dbschema:
    delete:
      description: Delete schemas for a parentId with support for org/project as well
      operationId: V1DeleteDbSchema
      parameters:
        - $ref: '#/components/parameters/OrgIdentifier'
        - $ref: '#/components/parameters/ProjectIdentifier'
        - $ref: '#/components/parameters/ParentId'
      responses:
        '204':
          description: The database schemas were deleted successfully
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Delete schemas for a scope
      x-internal: true
      x-stoplight:
        id: rb3r54cs0ewdx
    get:
      description: List database schemas for an account
      operationId: V1ListDatabaseSchema
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
        - $ref: '#/components/parameters/DbOpsSort'
        - $ref: '#/components/parameters/DbOpsOrder'
        - $ref: '#/components/parameters/OrgIdentifier'
        - $ref: '#/components/parameters/ProjectIdentifier'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DBSchemaOut'
                type: array
          description: Response
          headers:
            X-Page-Number:
              description: Page number in Paginated response.
              schema:
                type: integer
            X-Page-Size:
              description: Maximum page size in Paginated response.
              schema:
                type: integer
            X-Total-Elements:
              description: Total number of elements returned in Paginated response.
              schema:
                type: integer
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: >-
        List Database Schemas for an Account across Projects with optional
        Project filtering
      tags:
        - Database Schema
      x-internal: true
      x-stoplight:
        id: 77w2pvpfs9rvl
    parameters:
      - description: Identifier field of the account the resource is scoped to
        in: header
        name: Harness-Account
        required: true
        schema:
          type: string
  /v1/dbops/execution-config:
    delete:
      description: Delete the Execution config overrides for the customer
      operationId: V1DeleteExecutionConfig
      responses:
        '200':
          $ref: '#/components/responses/ExecutionConfigSuccessResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Delete Execution config for DBOps
      tags:
        - Execution Config
      x-stoplight:
        id: b4ixsyl78f1dh
    parameters:
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/dbops/execution-config/get-customer-config:
    get:
      operationId: V1GetCustomerConfig
      parameters:
        - description: Returns the non-default images if true
          in: query
          name: overridesOnly
          schema:
            default: true
            type: boolean
      responses:
        '200':
          $ref: '#/components/responses/ExecutionConfigTagsResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get Customer Execution Config overrides
      tags:
        - Execution Config
      x-stoplight:
        id: xyt06xiwwna97
    parameters:
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/dbops/execution-config/get-default-config:
    get:
      description: Get list of the latest Harness Dbops images and tags
      operationId: V1GetDefaultConfig
      responses:
        '200':
          $ref: '#/components/responses/ExecutionConfigTagsResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get Default Execution Config
      tags:
        - Execution Config
      x-stoplight:
        id: wiaw98nfdi0rv
    parameters:
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/dbops/execution-config/reset-config:
    parameters:
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: >-
        To reset one or more images to their defaults with a list of the images
        to reset.
      operationId: V1ResetExecutionConfig
      requestBody:
        content:
          application/json:
            examples:
              Example 1:
                value:
                  - gitCloneTag
            schema:
              items:
                example: gitCloneTag
                type: string
                x-stoplight:
                  id: 3kixxbyjo4ybt
              type: array
        description: List of Image tags which need to be reset to default
      responses:
        '201':
          $ref: '#/components/responses/ExecutionConfigSuccessResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Reset execution Config for DBOPs image tags
      tags:
        - Execution Config
      x-internal: false
      x-stoplight:
        id: fvtunok2awllt
  /v1/dbops/execution-config/update-config:
    parameters:
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: Override execution Config for DBOPs image tags
      operationId: V1UpdateExecutionConfig
      requestBody:
        $ref: '#/components/requestBodies/ExecutionConfigUpdateRequest'
      responses:
        '201':
          $ref: '#/components/responses/ExecutionConfigSuccessResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Override execution Config for DBOPs image tags
      tags:
        - Execution Config
      x-internal: false
      x-stoplight:
        id: n6q91b59w1kld
  /v1/dbops/failure-interrupt:
    post:
      description: Consume Failure interrupt
      operationId: ConsumeFailureInterrupt
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/FailureInterruptRequest'
      responses:
        '204':
          description: The interrupt was acknowledged
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Consume Failure Interrupt
      tags:
        - Pipeline Step
      x-internal: true
      x-stoplight:
        id: g9ot3sb27d74y
  /v1/dbops/plugin-output-response:
    post:
      description: Consume Plugin Output Response
      operationId: ConsumeV1StepPluginOutputResponse
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ConsumePluginOutputRespRequest'
      responses:
        '204':
          description: The plugin execution response was acknowledged
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Consume Plugin Output Response
      tags:
        - Pipeline Step
      x-internal: true
      x-stoplight:
        id: lxwgz5cmo4muu
  /v1/dbops/schema-instance-metadata:
    post:
      description: Get schema-instance metadata and images for db step execution
      operationId: GetV1SchemaInstanceMetadata
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/SchemaInstanceMetadataRequest'
      responses:
        '200':
          $ref: '#/components/responses/SchemaInstanceMetadataResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: GetSchemaInstanceMetadata
      tags:
        - Pipeline Step
      x-internal: true
      x-stoplight:
        id: 2z96q9wolvfw1
  /v1/orgs/{org}/projects/{project}/dbinstancelist:
    parameters:
      - description: Organization identifier
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project identifier
        in: path
        name: project
        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.
        in: header
        name: Harness-Account
        schema:
          type: string
    post:
      description: List database instances
      operationId: V2ListProjDbInstances
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
        - $ref: '#/components/parameters/DbOpsOrder'
        - $ref: '#/components/parameters/DbOpsSort'
      requestBody:
        $ref: '#/components/requestBodies/DBInstanceListRequest'
      responses:
        '201':
          $ref: '#/components/responses/DBInstanceListResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: List database instances
      x-stoplight:
        id: fg6az7gntxywm
  /v1/orgs/{org}/projects/{project}/dbschema:
    get:
      description: List database Schemas
      operationId: V1ListProjDbSchema
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
        - $ref: '#/components/parameters/DbOpsSort'
        - $ref: '#/components/parameters/DbOpsOrder'
      responses:
        '200':
          $ref: '#/components/responses/DBSchemaListResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: List database schemas
      tags:
        - Database Schema
      x-internal: false
      x-stoplight:
        id: nhhnhieu7jo8u
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: Create a database schema
      operationId: V1CreateProjDbSchema
      requestBody:
        $ref: '#/components/requestBodies/DBSchemaCreateRequest'
      responses:
        '201':
          $ref: '#/components/responses/DBSchemaResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Create a database schema
      tags:
        - Database Schema
      x-stoplight:
        id: 1ip5gikvmqezd
  /v1/orgs/{org}/projects/{project}/dbschema/overview:
    get:
      description: >-
        retrieves total dbSchemas, dbInstances and the latest 5 instances
        deployed
      operationId: V1GetDbOverview
      responses:
        '200':
          $ref: '#/components/responses/OverviewResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get overview
      tags:
        - Overview
      x-stoplight:
        id: 9r5etj2feldxk
    parameters:
      - description: Organization identifier
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project identifier
        in: path
        name: project
        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.
        in: header
        name: Harness-Account
        schema:
          type: string
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}:
    delete:
      description: Delete a database schema
      operationId: V1DeleteProjDbSchema
      responses:
        '204':
          description: The database schema was deleted successfully
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Delete a database schema
      tags:
        - Database Schema
      x-stoplight:
        id: ek4jolzg7diy6
    get:
      description: Retrieves the specified database schema
      operationId: V1GetProjDbSchema
      responses:
        '200':
          $ref: '#/components/responses/DBSchemaResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get a database schema
      tags:
        - Database Schema
      x-stoplight:
        id: 78fzlqtzyti7q
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    put:
      description: Update a database schema
      operationId: V1UpdateProjDbSchema
      requestBody:
        $ref: '#/components/requestBodies/DBSchemaUpdateRequest'
      responses:
        '200':
          $ref: '#/components/responses/DBSchemaResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Update a database schema
      tags:
        - Database Schema
      x-stoplight:
        id: ngsm9f0c6fvq5
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/changeset/sql:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: Fetch SQL changesets
      operationId: V1FetchDeployedChangesetSql
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
      requestBody:
        $ref: '#/components/requestBodies/FetchSQLStatementRequest'
      responses:
        '200':
          $ref: '#/components/responses/FetchSQLStatementResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Fetch SQL changesets of a instance
      tags:
        - Migration State
      x-internal: false
      x-stoplight:
        id: odqwzclbjkd20
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/changeset/yaml:
    get:
      operationId: V1ChangesetYamlProjDbInstance
      parameters:
        - $ref: '#/components/parameters/ChangeSetParam'
      responses:
        '200':
          $ref: '#/components/responses/ChangeSetDeploymentYamlResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: ChangeSet deployment yaml for an instance
      tags:
        - Migration State
      x-internal: false
      x-stoplight:
        id: inxq15g516opv
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/changesetmetadata:
    get:
      operationId: V1ChangesetmetadataProjDbInstance
      parameters:
        - $ref: '#/components/parameters/HarnessCommand'
        - $ref: '#/components/parameters/PipelineExecutionId'
        - $ref: '#/components/parameters/StageExecutionId'
        - $ref: '#/components/parameters/ChangesetMetadataContentType'
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
      responses:
        '200':
          $ref: '#/components/responses/ChangeSetMetadataResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: get changeset metadata
      tags:
        - Changeset metadata
      x-internal: false
      x-stoplight:
        id: 9xtk8g9u4oucl
    parameters:
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/dbinstance/{dbinstance}/migrationstate:
    get:
      description: Migration state of a instance
      operationId: V1MigrationStateProjDbInstance
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
      responses:
        '200':
          $ref: '#/components/responses/InstanceMigrationStateResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Migration state of a instance
      tags:
        - Migration State
      x-internal: false
      x-stoplight:
        id: 3lep3gv4fv11g
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: Create a database instance
      operationId: V1CreateProjDbSchemaInstance
      requestBody:
        $ref: '#/components/requestBodies/DBInstanceCreateRequest'
      responses:
        '201':
          $ref: '#/components/responses/DBInstanceResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Create a database instance
      tags:
        - Database Instance
      x-stoplight:
        id: ooxjel6o3ya8y
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}:
    delete:
      description: Delete a database instance
      operationId: V1DeleteProjDbSchemaInstance
      responses:
        '204':
          description: The database instance was deleted successfully
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Delete a database instance
      tags:
        - Database Instance
      x-stoplight:
        id: hx4uvpfwg2w2c
    get:
      description: Retrieves the specified database instance
      operationId: V1GetProjDbSchemaInstance
      responses:
        '200':
          $ref: '#/components/responses/DBInstanceResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get a database instance
      tags:
        - Database Instance
      x-stoplight:
        id: tcua2vmx132hm
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    put:
      description: Update a database instance
      operationId: V1UpdateProjDbSchemaInstance
      requestBody:
        $ref: '#/components/requestBodies/DBInstanceUpdateRequest'
      responses:
        '200':
          $ref: '#/components/responses/DBInstanceResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Update a database instance
      tags:
        - Database Schema
      x-stoplight:
        id: e17endbbc7uha
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/deployedState:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - 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.
        in: header
        name: Harness-Account
        schema:
          type: string
    post:
      description: >-
        Status of changeset deployment as part of execution with comparison to
        earlier state.
      operationId: V1GetDeployedState
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeployedStateInput'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DeployedStateOutput'
                type: array
          description: Response
          headers:
            X-Page-Number:
              description: Page number in Paginated response.
              schema:
                type: integer
            X-Page-Size:
              description: Maximum page size in Paginated response.
              schema:
                type: integer
            X-Total-Elements:
              description: Total number of elements returned in Paginated response.
              schema:
                type: integer
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get Deployed State
      tags:
        - Deployed State
      x-stoplight:
        id: 5rj6sci8d41op
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/logs:
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
    post:
      description: Ingest database migration logs to update the state of the database
      operationId: V1IngestLogs
      requestBody:
        $ref: '#/components/requestBodies/LogIngestRequest'
      responses:
        '201':
          $ref: '#/components/responses/ParsedLogResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Ingest database migration logs
      tags:
        - Log Ingest
      x-internal: true
      x-stoplight:
        id: 9yvaeanjtbxhy
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instance/{dbinstance}/logs/{log}:
    get:
      description: Retrieves the specified log event
      operationId: V1GetDbinstanceLog
      responses:
        '200':
          $ref: '#/components/responses/ParsedLogResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      tags:
        - Log Ingest
      x-stoplight:
        id: 9o2dqka7km06p
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/DBSchemaParam'
      - $ref: '#/components/parameters/DBInstanceParam'
      - $ref: '#/components/parameters/LogParam'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/instancelist:
    parameters:
      - description: Organization identifier
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project identifier
        in: path
        name: project
        required: true
        schema:
          type: string
      - description: Identifier of the database schema
        in: path
        name: dbschema
        required: true
        schema:
          maxLength: 128
          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.
        in: header
        name: Harness-Account
        schema:
          type: string
    post:
      description: Retrieves the specified database instances of the database schema
      operationId: V1ListProjDbSchemaInstance
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
        - $ref: '#/components/parameters/DbOpsSort'
        - $ref: '#/components/parameters/DbOpsOrder'
      requestBody:
        $ref: '#/components/requestBodies/DBInstanceFilterRequest'
      responses:
        '200':
          $ref: '#/components/responses/DBInstanceListResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: List database instances
      tags:
        - Database Instance
      x-stoplight:
        id: uwxyv5tgwu2w9
  /v1/orgs/{org}/projects/{project}/dbschema/{dbschema}/migrationstate:
    parameters:
      - description: Organization identifier
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project identifier
        in: path
        name: project
        required: true
        schema:
          type: string
      - description: Identifier of the database schema
        in: path
        name: dbschema
        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.
        in: header
        name: Harness-Account
        schema:
          type: string
    post:
      description: Migration state of a schema
      operationId: V1MigrationStateProjDbSchema
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
      requestBody:
        $ref: '#/components/requestBodies/MigrationStateGetRequest'
      responses:
        '200':
          $ref: '#/components/responses/MigrationStateResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Migration state of a schema
      tags:
        - Migration State
      x-internal: false
      x-stoplight:
        id: esgkki234aa1u
  /v1/orgs/{org}/projects/{project}/dbschemalist:
    parameters:
      - description: Organization identifier
        in: path
        name: org
        required: true
        schema:
          type: string
      - description: Project identifier
        in: path
        name: project
        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.
        in: header
        name: Harness-Account
        schema:
          type: string
    post:
      description: List database schemas
      operationId: V2ListProjDbSchema
      parameters:
        - $ref: '#/components/parameters/DbOpsPageIndex'
        - $ref: '#/components/parameters/DbOpsLimit'
        - $ref: '#/components/parameters/DbOpsSearchTerm'
        - $ref: '#/components/parameters/DbOpsOrder'
        - $ref: '#/components/parameters/DbOpsSort'
      requestBody:
        $ref: '#/components/requestBodies/DBSchemaFilterRequest'
      responses:
        '201':
          $ref: '#/components/responses/DBSchemaListResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: List database schemas
      x-stoplight:
        id: 6zjabgo8o3ml1
  /v1/orgs/{org}/projects/{project}/pipeline/{pipelineIdentifier}/status:
    get:
      description: Api to get the pipeline execution status
      operationId: V1GetPipelineExecutionStatus
      parameters:
        - $ref: '#/components/parameters/PipelineExecutionId'
        - $ref: '#/components/parameters/StageNodeId'
      responses:
        '200':
          $ref: '#/components/responses/PipelineStatusResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: Get pipeline status
      tags:
        - Pipeline Step
      x-internal: false
      x-stoplight:
        id: u5neb2hw2so4o
    parameters:
      - $ref: '#/components/parameters/OrgParam'
      - $ref: '#/components/parameters/ProjectParam'
      - $ref: '#/components/parameters/PipelineIdentifier'
      - $ref: '#/components/parameters/DbOpsAccountHeader'
  /v1/step/plugin-inputs:
    post:
      description: Create Plugin Inputs using Step Inputs
      operationId: CreateV1StepPluginInputs
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/PluginStepInputsRequest'
      responses:
        '200':
          $ref: '#/components/responses/PluginInputsResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: CreatePluginInputs
      tags:
        - Pipeline Step
      x-internal: true
  /v1/step/plugin-response:
    post:
      description: Consume Plugin Execution Response
      operationId: ConsumeV1StepPluginResponse
      parameters:
        - $ref: '#/components/parameters/DbOpsAccountHeader'
      requestBody:
        $ref: '#/components/requestBodies/ConsumePluginRespRequest'
      responses:
        '204':
          description: The plugin execution response was acknowledged
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
      summary: ConsumePluginResponse
      tags:
        - Pipeline Step
      x-internal: true
  /v1/org/workspaces/units/list:
    post:
      tags:
        - Collection categories
      summary: List all Collection categories
      description: Retrieve a list of collection categories
      operationId: categories#listCategories
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                page:
                  type: integer
                  description: The page number for pagination
                  default: 0
                pageSize:
                  type: integer
                  description: The number of items per page
                  default: 20
                filter:
                  type: object
                  properties:
                    name:
                      type: array
                      items:
                        type: string
                      description: Filter by category names
                    is_predefined:
                      type: boolean
                      description: Filter by predefined status
                    enabled:
                      type: boolean
                      description: Filter by enabled status of the collection category
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X POST
            'https://app.harness.io/gratis/sei/api/v1/org/workspaces/units/list'
            \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '{
              "page": 0,
              "pageSize": 20,
              "filter": {
                "name": [
                  "string"
                ],
                "is_predefined": true,
                "enabled": true
              }
            }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsageResponse1'
              example:
                records:
                  - id: 6cad073a-b7bf-4606-b706-302f19d8e133
                    name: Organizing
                    description: This is the first team c
                    is_predefined: true
                    enabled: true
                    count_of_ous: 1
                    created_at: 1654841196842
                    updated_at: 1654841196842
                  - id: 9fe62fc3-31aa-4cf0-a62f-677eaeff33b2
                    name: Finance
                    description: This is the second team c
                    enabled: true
                    count_of_ous: 0
                    is_predefined: false
                    created_at: 1654841375866
                    updated_at: 1654841375866
                  - id: 75504d25-4980-4952-a282-ab6933fdff8b
                    name: Dev Team
                    description: This is the thrid team c
                    enabled: true
                    count_of_ous: 1
                    is_predefined: true
                    created_at: 1654841422226
                    updated_at: 1654841422226
                  - id: 9a2c246b-4468-4888-8371-43fae8473296
                    name: Testing Team
                    description: This is the fourth team c
                    enabled: true
                    count_of_ous: 4
                    is_predefined: true
                    created_at: 1654841434865
                    updated_at: 1654841434865
                count: 4
                _metadata:
                  page_size: 1000
                  page: 0
                  has_next: false
                  total_count: 4
  /v1/org/categories:
    post:
      tags:
        - Collection categories
      summary: Create a new Collection category
      description: Create a new collection category
      operationId: categories#createCategory
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                rootOuName:
                  type: string
                  description: The name of the root organizational unit
                workspaceId:
                  type: integer
                  description: The ID of the workspace
                name:
                  type: string
                  description: The name of the new category
                description:
                  type: string
                  description: A description of the category
                is_predefined:
                  type: boolean
                  description: Whether the category is predefined
                enabled:
                  type: boolean
                  description: Whether the category is enabled
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X POST
            'https://app.harness.io/gratis/sei/api/v1/org/categories' \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '{
              "rootOuName": "Example Root OU",
              "workspaceId": 15367,
              "name": "Finance",
              "description": "This is the second team c",
              "is_predefined": false,
              "enabled": true
            }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CategoryResponse'
              example:
                id: 9fe62fc3-31aa-4cf0-a62f-677eaeff33b2
                name: Finance
                description: This is the second team C
                is_predefined: false
                enabled: true
    delete:
      tags:
        - Collection categories
      summary: Delete multiple Collection categories
      description: Delete multiple collection categories in a single request
      operationId: categories#deleteCategories
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X PUT
            'https://app.harness.io/gratis/sei/api/v1/org/categories' \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '{
              [
                "9a1dc856-6e2d-4dbe-98cf-5416c5981bbc", "eafb1e30-4af8-480e-b7b5-487293659df3"
                ]
                }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: The unique identifier of the category
                        success:
                          type: boolean
                          description: Indicates whether the deletion was successful
                  count:
                    type: integer
                    description: The total number of successfully deleted categories
              example:
                records:
                  - id: 9a1dc856-6e2d-4dbe-98cf-5416c5981bbc
                    success: true
                  - id: eafb1e30-4af8-480e-b7b5-487293659df3
                    success: true
                count: 2
  /v1/org/categories/{id}:
    put:
      tags:
        - Collection categories
      summary: Update an existing Collection category
      description: Use this API endpoint to update an existing collection category
      operationId: categories#updateCategory
      parameters:
        - name: id
          in: path
          required: true
          description: The unique identifier of the collection category to be updated
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: The updated name of the category
                description:
                  type: string
                  description: The updated description of the category
                is_predefined:
                  type: boolean
                  description: Whether the category is predefined
                enabled:
                  type: boolean
                  description: Whether the category is enabled
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X PUT
            'https://app.harness.io/gratis/sei/api/v1/org/categories/{id}' \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '{
              "name": "TEST CATEGORY",
              "description": "this is an updated description for the collection category",
              "is_predefined": true,
              "enabled": true
            }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CategoryResponse'
              example:
                id: cb147922-a0c2-4563-b3fe-f1e67aa7eb4c
                name: Testing Team
                description: This is an updated description for the collection category
                is_predefined: true
                enabled: true
    delete:
      tags:
        - Collection categories
      summary: Delete a specific Collection category
      description: Delete an existing collection category
      operationId: categories#deleteCategory
      parameters:
        - name: id
          in: path
          required: true
          description: The unique identifier of the collection category to be deleted
          schema:
            type: string
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X DELETE
            'https://app.harness.io/gratis/sei/api/v1/org/categories/{id}' \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        success:
                          type: boolean
                  count:
                    type: integer
              example:
                records:
                  - id: 9a2c246b-4468-4888-8371-43fae8473296
                    success: true
                count: 1
  /v1/org/units/list:
    post:
      tags:
        - Collections
      summary: Retrieve a list of collections
      description: >-
        This API endpoint allows you to retrieve a list of collections. The
        endpoint is paginated.
      operationId: collections#listCollections
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                page:
                  type: integer
                  description: The page number for pagination
                  default: 0
                page_size:
                  type: integer
                  description: The number of items per page (default may vary)
                filter:
                  type: object
                  properties:
                    ou_category_id:
                      type: array
                      items:
                        type: string
                      description: Filter collections by category IDs
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X POST
            'https://app.harness.io/gratis/sei/api/v1/org/units/list' \

            -H 'Content-Type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '{
              "page": 0,
              "page_size": 100,
              "filter": {
                "ou_category_id": ["b5ba90ab-caf4-4fef-90bd-3816d2294547"]
              }
            }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        ou_id:
                          type: string
                        name:
                          type: string
                        tags:
                          type: array
                          items:
                            type: string
                        managers:
                          type: array
                          items:
                            type: string
                        admins:
                          type: array
                          items:
                            type: string
                        sections:
                          type: array
                          items:
                            type: string
                        version:
                          type: string
                        no_of_dashboards:
                          type: integer
                        path:
                          type: string
                        ou_category_id:
                          type: string
                        default_dashboard_id:
                          type: integer
                        workspace_id:
                          type: integer
                        created_at:
                          type: integer
                        parent_ref_id:
                          type: integer
                          nullable: true
                        workflow_profile_id:
                          type: string
                          nullable: true
                        workflow_profile_name:
                          type: string
                          nullable: true
                  count:
                    type: integer
                  _metadata:
                    type: object
                    properties:
                      page_size:
                        type: integer
                      page:
                        type: integer
                      has_next:
                        type: boolean
                      total_count:
                        type: integer
              example:
                records:
                  - id: '76'
                    ou_id: 8ffa98a4-c607-4d90-a333-b79bf095a7fb
                    name: All Teams
                    tags: []
                    managers: []
                    admins: []
                    sections: []
                    version: '1'
                    no_of_dashboards: 3
                    path: /All Teams
                    ou_category_id: ffaea171-ba57-4222-81b0-d26d3284c065
                    default_dashboard_id: 0
                    workspace_id: 34
                    created_at: 1710173818740
                    workflow_profile_id: f1d1d2f2-bba6-4f19-92c2-fcd4e4fa8116
                    workflow_profile_name: DORA profile
                  - id: '79'
                    ou_id: e1dc905b-0eca-4c4d-ad49-a3ce396fe0ff
                    name: Frontend
                    tags: []
                    managers: []
                    admins: []
                    sections: []
                    parent_ref_id: 76
                    version: '2'
                    no_of_dashboards: 0
                    path: /All Teams/Frontend
                    ou_category_id: ffaea171-ba57-4222-81b0-d26d3284c065
                    default_dashboard_id: 0
                    workspace_id: 34
                    created_at: 1710947467896
                count: 2
                _metadata:
                  page_size: 100
                  page: 0
                  has_next: false
                  total_count: 2
  /v1/org/units:
    post:
      tags:
        - Collections
      summary: Create a new collection
      description: This API endpoint allows you to create a new collection.
      operationId: collections#createCollection
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                    description: The name of the new collection
                  ou_category_id:
                    type: string
                    description: The ID of the category to which the collection belongs
                  parent_ref_id:
                    type: string
                    description: The reference ID of the parent collection
                  sections:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: A randomly generated UUID for the section
                        integrations:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              type:
                                type: string
                                description: >-
                                  The type of integration (e.g., "jira",
                                  "github", "jenkins")
                              filters:
                                type: object
                                description: Filters specific to the integration type
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl -X POST 'https://app.harness.io/gratis/sei/api/v1/org/units' \
            -H 'Content-Type: application/json' \
            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
            -d '[
                {
                    "name": "My Collection",
                    "ou_category_id": "b5ba90ab-caf4-4fef-90bd-3816d2294547",
                    "parent_ref_id": "33",
                    "sections": [
                        {
                            "id": "96096840-e721-11ee-b664-7bab67f40a81",
                            "integrations": {
                                "1": {
                                    "type": "jira",
                                    "filters": {
                                        "projects": ["PROJECT1", "PROJECT2", "PROJECT3"]
                                    }
                                }
                            }
                        },
                        {
                            "id": "9cb8ae30-e721-11ee-b664-7bab67f40a81",
                            "integrations": {
                                "2": {
                                    "type": "github",
                                    "filters": {
                                        "repo_ids": ["my-org/my-repo-1", "my-org/my-repo-2", "my-org/my-repo-3"]
                                    }
                                }
                            }
                        },
                        {
                            "id": "9f1589f0-e721-11ee-b664-7bab67f40a81",
                            "integrations": {
                                "3": {
                                    "type": "jenkins",
                                    "filters": {
                                        "job_names": ["Pipeline1", "Pipeline2", "Pipeline3"]
                                    }
                                }
                            }
                        }
                    ]
                }
            ]'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: string
                  success:
                    type: array
                    items:
                      type: integer
              example:
                errors: []
                success:
                  - 82
    put:
      tags:
        - Collections
      summary: Edit an existing collection
      description: This API endpoint allows you to edit an existing collection.
      operationId: collections#editCollection
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: The reference ID of the collection to be edited
                  name:
                    type: string
                    description: The new name for the collection
                    nullable: true
                  ou_category_id:
                    type: string
                    description: The ID of the category to which the collection belongs
                    nullable: true
                  parent_ref_id:
                    type: string
                    description: The reference ID of the parent collection
                    nullable: true
                  sections:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: A randomly generated UUID for the section
                        integrations:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              type:
                                type: string
                                description: >-
                                  The type of integration (e.g., "jira",
                                  "github", "jenkins")
                              filters:
                                type: object
                                description: Filters specific to the integration type
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl -X PUT 'https://app.harness.io/gratis/sei/api/v1/org/units' \
            -H 'Content-Type: application/json' \
            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
            -d '[
                {
                    "id": "74",
                    "name": "New Name",
                    "ou_category_id": "b5ba90ab-caf4-4fef-90bd-3816d2294547",
                    "parent_ref_id": "33",
                    "sections": [
                        {
                            "id": "33024940-e728-11ee-b664-7bab67f40a81",
                            "integrations": {
                                "1": {
                                    "type": "jira",
                                    "filters": {
                                        "projects": ["PROJECT4"]
                                    }
                                }
                            }
                        }
                    ]
                }
            ]'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: string
                  success:
                    type: array
                    items:
                      type: integer
              example:
                errors: []
                success:
                  - 74
    delete:
      tags:
        - Collections
      summary: Delete an existing collection
      description: This API endpoint allows you to delete an existing collection.
      operationId: collections#deleteCollection
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
                description: >-
                  The reference ID of the collection to be deleted. Multiple IDs
                  can be included in the array to delete multiple collections in
                  a single request.
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl -X DELETE 'https://app.harness.io/gratis/sei/api/v1/org/units'
            \

            -H 'Content-type: application/json' \

            -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \

            -d '["<ou_ref_id>"]'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: The collection(s) were successfully deleted.
              example:
                message: The collection(s) were successfully deleted.
  /v1/org/users/versions:
    get:
      tags:
        - Contributors
      summary: Retrieve the list of active versions
      description: This API endpoint retrieves the list of active versions.
      operationId: contributors#getActiveVersions
      parameters:
        - name: page_size
          in: query
          description: The number of records to return per page. Default is not specified.
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: The page number to retrieve. Default is 0 (the first page).
          required: false
          schema:
            type: integer
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl
            'https://app.harness.io/gratis/sei/api/v1/org/users/versions?page_size=999'
            \
              -H 'accept: application/json, text/plain, */*' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        version:
                          type: string
                  count:
                    type: integer
                  _metadata:
                    type: object
                    properties:
                      page_size:
                        type: integer
                      page:
                        type: integer
                      has_next:
                        type: boolean
                      total_count:
                        type: integer
              example:
                records:
                  - /* Array of 521 items */
                count: 521
                _metadata:
                  page_size: 999
                  page: 0
                  has_next: false
                  total_count: 521
  /v1/org/users/schema:
    get:
      tags:
        - Contributors
      summary: Retrieve the Ccontributor data schema
      description: >-
        This API endpoint retrieves the schema used by the contributors,
        including any custom fields.
      operationId: contributors#getSchema
      parameters: []
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl 'https://app.harness.io/gratis/sei/api/v1/org/users/schema' \
              -H 'accept: application/json, text/plain, */*' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  version:
                    type: integer
                  created_at:
                    type: integer
                  fields:
                    type: array
                    items:
                      type: object
                      properties:
                        index:
                          type: integer
                        key:
                          type: string
                        display_name:
                          type: string
                        description:
                          type: string
                        type:
                          type: string
                        system_field:
                          type: boolean
              example:
                version: 190
                created_at: 1710153327501
                fields:
                  - index: 3
                    key: integration
                    display_name: Integration
                    description: Add a column for every integration
                    type: string
                    system_field: false
                  - index: 1
                    key: full_name
                    display_name: Name
                    description: Name
                    type: string
                    system_field: false
                  - index: 2
                    key: region
                    display_name: Region
                    description: Region
                    type: string
                    system_field: false
                  - index: 2
                    key: email
                    display_name: Email
                    description: Unique email address per member
                    type: string
                    system_field: false
  /v1/org/users/list:
    post:
      tags:
        - Contributors
      summary: Retrieve the list of current active licensed contributors
      description: >-
        This API endpoint retrieves the list of current active licensed
        contributors.
      operationId: users#listActiveUsers
      parameters:
        - in: query
          name: version
          schema:
            type: integer
          required: false
          description: The version of the schema to use for the list of contributors.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                page:
                  type: integer
                  description: The page number to retrieve.
                  default: 0
                page_size:
                  type: integer
                  description: The number of records to return per page.
                  default: 50
                filter:
                  type: object
                  description: Filter criteria for the list of contributors.
                  properties: {}
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl
            'https://app.harness.io/gratis/sei/api/v1/org/users/list?page=0&page_size=50'
            \
              -X POST \
              -H 'accept: application/json, text/plain, */*' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              -H 'Content-type: application/json' \
              -d '{
                "page": 0,
                "page_size": 50,
                "filter": {}
              }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        org_uuid:
                          type: string
                        full_name:
                          type: string
                        email:
                          type: string
                        integration_user_ids:
                          type: array
                          items:
                            type: object
                            properties:
                              integration_id:
                                type: string
                              user_id:
                                type: string
                        additional_fields:
                          type: object
                        version:
                          type: string
                        created_at:
                          type: integer
                        updated_at:
                          type: integer
                  _metadata:
                    type: object
                    properties:
                      total_count:
                        type: integer
                      has_next:
                        type: boolean
                      page_size:
                        type: integer
                      next_page:
                        type: integer
                      page:
                        type: integer
                      non_users_count:
                        type: integer
              example:
                records:
                  - id: '3'
                    org_uuid: 6a113eba-3e65-4344-ab24-a935c602eb7f
                    full_name: Ashish Duthade
                    email: ashish@harness.io
                    integration_user_ids: []
                    additional_fields:
                      region: test
                    version: '512'
                    created_at: 1710164128545
                    updated_at: 1714968896813
                  - id: '0'
                    full_name: External User766797748
                    email: ''
                    integration_user_ids:
                      - integration_id: '5322'
                        user_id: 712020:c41c2f65-682b-4c77-91df-6cd9de138c63
                    additional_fields: {}
                    version: '0'
                    created_at: 1715126614000
                    updated_at: 1715661535000
                _metadata:
                  total_count: 80715
                  has_next: true
                  page_size: 50
                  next_page: 1
                  page: 0
                  non_users_count: 80710
  /v1/org/users:
    put:
      tags:
        - Contributors
      summary: Update existing contributors
      description: >-
        This API endpoint is used to update existing contributors (users) in the
        system.
      operationId: contributors#updateContributors
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: The unique identifier of the contributor.
                  org_uuid:
                    type: string
                    description: The UUID of the Collection the contributor belongs to.
                  full_name:
                    type: string
                    description: The updated full name of the contributor.
                  email:
                    type: string
                    description: The updated email address of the contributor.
                  integration_user_ids:
                    type: array
                    items:
                      type: object
                    description: >-
                      An array of objects representing the integration user IDs
                      associated with the contributor.
                  additional_fields:
                    type: object
                    description: >-
                      An object containing additional fields for the contributor
                      (based on the schema).
                  version:
                    type: string
                    description: The version of the contributor record.
                  created_at:
                    type: integer
                    description: >-
                      The timestamp when the contributor record was created (in
                      milliseconds).
                  updated_at:
                    type: integer
                    description: >-
                      The timestamp when the contributor record was last updated
                      (in milliseconds).
                  dynamic_column_aggs_region:
                    type: string
                    description: A dynamic field for region aggregation.
              example:
                - id: '3'
                  org_uuid: 6a113eba-3e65-4344-ab24-a935c602eb7f
                  full_name: Ashish Duthade
                  email: ashish@harness.io
                  integration_user_ids: []
                  additional_fields:
                    region: test 123
                  version: '512'
                  created_at: 1710164128545
                  updated_at: 1714968896813
                  dynamic_column_aggs_region: test 123
      responses:
        '200':
          description: Update successful.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Success message indicating the update was successful.
              example:
                message: Contributor with ID 3 updated successfully.
        '400':
          description: Bad request. Indicates an issue with the request payload.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message indicating the reason for the bad request.
              example:
                error: Invalid JSON format in request body.
        '404':
          description: >-
            Not found. Indicates the contributor with the specified ID was not
            found.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message indicating the contributor was not found.
              example:
                error: Contributor with ID 3 not found.
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl 'https://app.harness.io/gratis/sei/api/v1/org/users' \
              -X 'PUT' \
              -H 'accept: application/json, text/plain, */*' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              -H 'Content-type: application/json' \
              --data-raw '[
                {
                  "id": "3",
                  "org_uuid": "6a113eba-3e65-4344-ab24-a935c602eb7f",
                  "full_name": "Ashish Duthade",
                  "email": "ashish@harness.io",
                  "integration_user_ids": [],
                  "additional_fields": {
                    "region": "test 123"
                  },
                  "version": "512",
                  "created_at": 1710164128545,
                  "updated_at": 1714968896813,
                  "dynamic_column_aggs_region": "test 123"
                }
              ]'
  /v1/sei_contributor/list:
    post:
      tags:
        - Contributors
      summary: Retrieve SEI contributors list
      description: >-
        This API endpoint retrieves the list of licensed users for the given
        organization.
      operationId: seiContributors#listContributors
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl --location
            'https://app.harness.io/gratis/sei/api/v1/sei_contributor/list' \
              -H 'Content-type: application/json' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              --data '{}'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  org_user_count:
                    type: integer
                  integration_user_count:
                    type: integer
                  org_user_details:
                    type: array
                    items:
                      type: object
                      properties:
                        org_user_id:
                          type: string
                        org_user_ref_id:
                          type: string
                        full_name:
                          type: string
                        email:
                          type: string
                        integration_user_details:
                          type: array
                          items:
                            type: object
                            properties:
                              integration_id:
                                type: integer
                              integration_type:
                                type: string
                              integration_user_id:
                                type: string
                              cloud_id:
                                type: string
              example:
                org_user_count: 27
                integration_user_count: 86
                org_user_details:
                  - org_user_id: 8789d43f-a278-4250-8ec3-6e117400f3cc
                    org_user_ref_id: '550'
                    full_name: Meetrajsinh Solanki
                    email: meetrajsinh.solanki@harness.io
                    integration_user_details:
                      - integration_id: 2
                        integration_type: github
                        integration_user_id: 27f430e1-b2d9-4dc8-9b7f-d2b76206dc6e
                        cloud_id: meetrajsinh-crest
                      - integration_id: 12
                        integration_type: github
                        integration_user_id: 119f6299-f4bb-4206-8228-e4178d9addfc
                        cloud_id: meetrajsinh-crest
                      - integration_id: 49
                        integration_type: github
                        integration_user_id: 3b9cebed-f8a4-4d57-8811-ccd7718fa139
                        cloud_id: meetrajsinh-crest
                  - org_user_id: 2e4299b6-3106-454a-9115-5c58c34c24db
                    org_user_ref_id: '551'
                    full_name: Esha Shah Crest
                    email: esha.shah@harness.io
                    integration_user_details:
                      - integration_id: 2
                        integration_type: github
                        integration_user_id: cf44ed58-f742-4164-8905-9de782017002
                        cloud_id: eshah-crest
                      - integration_id: 49
                        integration_type: github
                        integration_user_id: 14fc9b9d-3218-4441-bb8a-12403d8db443
                        cloud_id: eshah-crest
                      - integration_id: 12
                        integration_type: github
                        integration_user_id: 3210b749-35f5-445a-a12d-fced73139ba0
                        cloud_id: eshah-crest
  /v1/dora/lead-time:
    post:
      tags:
        - DORA
      summary: Retrieve lead time data
      description: This endpoint is paginated and retrieves lead time data.
      operationId: dora#getLeadTime
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filter:
                  type: object
                  properties:
                    ratings:
                      type: array
                      items:
                        type: string
                    calculation:
                      type: string
                    work_items_type:
                      type: string
                    jira_issue_types:
                      type: array
                      items:
                        type: string
                    limit_to_only_applicable_data:
                      type: boolean
                    integration_ids:
                      type: array
                      items:
                        type: string
                    jira_issue_resolved_at:
                      type: object
                      properties:
                        $gt:
                          type: string
                        $lt:
                          type: string
                ou_ids:
                  type: array
                  items:
                    type: string
                across:
                  type: string
            example:
              filter:
                ratings:
                  - good
                  - slow
                  - needs_attention
                calculation: ticket_velocity
                work_items_type: jira
                jira_issue_types:
                  - <Jira-issue-types>
                limit_to_only_applicable_data: true
                integration_ids:
                  - <integration-ids>
                jira_issue_resolved_at:
                  $gt: <epoch-time>
                  $lt: <epoch-time>
              ou_ids:
                - '518'
              across: velocity
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl 'https://app.harness.io/gratis/sei/api/v1/dora/lead-time' \
              -H 'Content-type: application/json' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              --data-raw '{
                "filter": {
                  "work_items_type": "jira",
                  "integration_ids": ["<integration-id>"],
                  "jira_issue_resolved_at": {
                    "$gt": "<epoch-time>",
                    "$lt": "<epoch-time>"
                  }
                },
                "ou_ids": ["518"],
                "across": "velocity"
              }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        lead_time:
                          type: number
                        work_item:
                          type: object
                          properties:
                            type:
                              type: string
                            resolved_at:
                              type: string
                  count:
                    type: integer
                  _metadata:
                    type: object
                    properties:
                      page_size:
                        type: integer
                      page:
                        type: integer
                      has_next:
                        type: boolean
                      total_count:
                        type: integer
              example:
                records:
                  - id: '1'
                    lead_time: 120
                    work_item:
                      type: Jira
                      resolved_at: '2024-07-01T12:34:56Z'
                count: 1
                _metadata:
                  page_size: 100
                  page: 0
                  has_next: false
                  total_count: 1
  /v1/dora/deployment_frequency:
    post:
      tags:
        - DORA
      summary: Retrieve deployment frequency data
      description: This endpoint is paginated and retrieves deployment frequency data.
      operationId: dora#getDeploymentFrequency
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filter:
                  type: object
                  properties:
                    time_range:
                      type: object
                      properties:
                        $gt:
                          type: integer
                          description: Start time in epoch format
                        $lt:
                          type: integer
                          description: End time in epoch format
                ou_ids:
                  type: array
                  items:
                    type: string
            example:
              filter:
                time_range:
                  $gt: 1708387200
                  $lt: 1710892800
              ou_ids:
                - '518'
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl
            'https://app.harness.io/gratis/sei/api/v1/dora/deployment_frequency'
            \
              -H 'Content-type: application/json' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              --data-raw '{
                "filter": {
                  "time_range": {
                    "$gt": 1708387200,
                    "$lt": 1710892800
                  }
                },
                "ou_ids": ["518"]
              }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  time_series:
                    type: object
                    properties:
                      day:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                      week:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                      month:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                  stats:
                    type: object
                    properties:
                      count_per_day:
                        type: number
                      count_per_week:
                        type: number
                      count_per_month:
                        type: number
                      band:
                        type: string
                      total_deployment:
                        type: integer
              example:
                time_series:
                  day:
                    - key: 1708387200
                      count: 0
                      additional_key: 20-02-2024
                    - key: 1708473600
                      count: 1
                      additional_key: 21-02-2024
                  week:
                    - key: 1708300800
                      count: 2
                      additional_key: 19-02-2024
                  month:
                    - key: 1706745600
                      count: 10
                      additional_key: 01-02-2024
                    - key: 1709251200
                      count: 18
                      additional_key: 01-03-2024
                stats:
                  count_per_day: 0.9333333333333333
                  count_per_week: 6.533333333333333
                  count_per_month: 28
                  band: HIGH
                  total_deployment: 28
  /v1/dora/change_failure_rate:
    post:
      tags:
        - DORA
      summary: Retrieve change failure rate data
      description: This endpoint is paginated and retrieves change failure rate data.
      operationId: dora#getChangeFailureRate
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filter:
                  type: object
                  properties:
                    time_range:
                      type: object
                      properties:
                        $gt:
                          type: integer
                          description: Start time in epoch format
                        $lt:
                          type: integer
                          description: End time in epoch format
                ou_ids:
                  type: array
                  items:
                    type: string
            example:
              filter:
                time_range:
                  $gt: 1708387200
                  $lt: 1710892800
              ou_ids:
                - '518'
      x-codeSamples:
        - lang: cURL
          label: curl
          source: >
            curl
            'https://app.harness.io/gratis/sei/api/v1/dora/change_failure_rate'
            \
              -H 'Content-type: application/json' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              --data-raw '{
                "filter": {
                  "time_range": {
                    "$gt": 1708387200,
                    "$lt": 1710892800
                  }
                },
                "ou_ids": ["518"]
              }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  time_series:
                    type: object
                    properties:
                      day:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                      week:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                      month:
                        type: array
                        items:
                          type: object
                          properties:
                            key:
                              type: integer
                            count:
                              type: integer
                            additional_key:
                              type: string
                  stats:
                    type: object
                    properties:
                      failure_rate:
                        type: number
                      band:
                        type: string
                      total_deployment:
                        type: integer
                      is_absolute:
                        type: boolean
              example:
                time_series:
                  day:
                    - key: 1708387200
                      count: 2
                      additional_key: 20-02-2024
                    - key: 1708473600
                      count: 2
                      additional_key: 21-02-2024
                  week:
                    - key: 1708300800
                      count: 9
                      additional_key: 19-02-2024
                  month:
                    - key: 1706745600
                      count: 18
                      additional_key: 01-02-2024
                    - key: 1709251200
                      count: 33
                      additional_key: 01-03-2024
                stats:
                  failure_rate: 51
                  band: LOW
                  total_deployment: 100
                  is_absolute: false
  /v1/dora/mean-time:
    post:
      tags:
        - DORA
      summary: Retrieve Mean Time to Restore (MTTR) data
      description: >-
        This endpoint retrieves Mean Time to Restore (MTTR) data for DORA
        metrics.
      operationId: dora#getMeanTimeToRestore
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filter:
                  type: object
                  properties:
                    ratings:
                      type: array
                      items:
                        type: string
                      description: Array of rating categories
                    calculation:
                      type: string
                      description: Type of calculation to perform
                    work_items_type:
                      type: string
                      description: Type of work items to consider
                    limit_to_only_applicable_data:
                      type: boolean
                      description: Whether to limit the data to only applicable items
                    integration_ids:
                      type: array
                      items:
                        type: string
                      description: Array of integration IDs
                ou_ids:
                  type: array
                  items:
                    type: string
                  description: Array of organizational unit IDs
                across:
                  type: string
                  description: Dimension to calculate across
                widget_id:
                  type: string
                  description: Unique identifier for the widget
            example:
              filter:
                ratings:
                  - good
                  - slow
                  - needs_attention
                calculation: ticket_velocity
                work_items_type: jira
                limit_to_only_applicable_data: true
                integration_ids:
                  - <INTEGRATION_ID>
              ou_ids:
                - <OU_ID>
              across: velocity
              widget_id: <WIDGET_ID>
      x-codeSamples:
        - lang: cURL
          label: curl
          source: |
            curl 'https://app.harness.io/gratis/sei/api/v1/dora/mean-time' \
              -H 'Content-type: application/json' \
              -H 'Authorization: APIKEY <HARNESS_SEI_API_KEY>' \
              --data-raw '{
                "filter": {
                  "ratings": ["good", "slow", "needs_attention"],
                  "calculation": "ticket_velocity",
                  "work_items_type": "jira",
                  "limit_to_only_applicable_data": true,
                  "integration_ids": ["<INTEGRATION_ID>"]
                },
                "ou_ids": ["ADD_OU_ID"],
                "across": "velocity",
                "widget_id": "<WIDGET_ID>"
              }'
      responses:
        '200':
          description: OK response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  mean_time:
                    type: number
                    description: The calculated mean time to restore
                  unit:
                    type: string
                    description: The unit of measurement for the mean time
                  band:
                    type: string
                    description: Performance band classification
                  total_incidents:
                    type: integer
                    description: Total number of incidents considered
              example:
                mean_time: 4.5
                unit: hours
                band: MEDIUM
                total_incidents: 20
  /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
  /v2/orgs/{org}/projects/{project}/sbom/enforcement:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: enforce normalized SBOM based on policies applied
      operationId: enforceSbomV2
      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/EnforceSbomRequestBodyV2'
      tags:
        - enforcementV2
      security:
        - x-api-key: []
      x-stoplight:
        id: imkfnf4aogvic
  /v1/token:
    get:
      summary: Issue a cross-service token
      tags:
        - Token
      responses:
        '200':
          $ref: '#/components/responses/TokenIssueResponseBody'
      operationId: Token#IssueToken1
      x-stoplight:
        id: yvvqta0dyz1r0
      description: Issue a cross-service token
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: true
      security:
        - x-api-key: []
  /v1/org/{org}/project/{project}/orchestration/{orchestration-id}/sbom-download:
    get:
      summary: Download SBOM for an artifact
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSbomResponseBody'
      operationId: downloadSbom
      x-stoplight:
        id: q6aepcsx5fl46
      description: Download SBOM for an artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: false
      security:
        - x-api-key: []
      tags:
        - OrchestrationV2
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration-id
        in: path
        required: true
        description: Orchestration Identifier
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/sbom-download:
    post:
      summary: Download SBOM for an artifact
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSbomResponseBody'
      operationId: downloadSbomForArtifact
      x-stoplight:
        id: q6aepcsx5fl46
      description: Download SBOM for an artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: false
      security:
        - x-api-key: []
      tags:
        - SBOM
      requestBody:
        $ref: '#/components/requestBodies/DownloadSbomRequestBody'
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
  /v1/org/{org}/project/{project}/orchestration/{orchestration-id}/summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration-id
        in: path
        required: true
    get:
      summary: Get Orchestration Summary
      responses:
        '200':
          $ref: '#/components/responses/OrchestrationSummaryResponseBody'
      operationId: getOrchestrationSummary
      x-stoplight:
        id: rzez3urt99t56
      description: Get Orchestration Summary
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: true
      tags:
        - orchestration
  /v1/org/{org}/project/{project}/enforcement/{enforcement-id}/summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: enforcement-id
        in: path
        required: true
    get:
      summary: Get Enforcement Summary
      responses:
        '200':
          $ref: '#/components/responses/EnforcementSummaryResponseBody'
      operationId: getEnforcementSummary
      x-stoplight:
        id: cfoup8kobxvaj
      description: Get Enforcement Summary
      security:
        - x-api-key: []
      tags:
        - enforcement
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/org/{org}/project/{project}/enforcement/{enforcement-id}/policy-violations:
    get:
      summary: List Policy Violations
      tags:
        - enforcement
      responses:
        '200':
          $ref: '#/components/responses/PolicyViolationResponse'
      operationId: getPolicyViolations
      x-stoplight:
        id: 4e6p8z1cqvf4q
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          name: sort
          description: Parameter on the basis of which sorting is done.
          schema:
            enum:
              - name
              - identifier
              - created
              - updated
              - license
              - supplier
        - schema:
            type: string
          in: query
          name: search_text
          description: Text on the basis of which results will be filtered
        - $ref: '#/components/parameters/ImageLayer'
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: enforcement-id
        in: path
        required: true
        description: Enforcement Identifier
  /gateway/ssca-manager/v1/ssca-config/integration-step:
    post:
      summary: Integration step config for Account
      tags:
        - Integration Step Config
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: setIntegrationStepConfig
      x-stoplight:
        id: 5ok2bot1k5103
      requestBody:
        $ref: '#/components/requestBodies/IntegrationStepConfigRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/ssca-config/integration-step:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Integration step config for Project
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: setIntegrationStepConfigForOrgProject
      x-stoplight:
        id: sk7twojq46lhv
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/IntegrationStepConfigRequestBody'
      security:
        - x-api-key: []
      tags:
        - Integration Step Config
  /gateway/ssca-manager/v1/orgs/{org}/ssca-config/integration-step:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
    post:
      summary: Integration step config for Org
      tags:
        - Integration Step Config
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: setIntegrationStepConfigForOrg
      x-stoplight:
        id: zwpins41b1yt4
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/IntegrationStepConfigRequestBody'
      security:
        - x-api-key: []
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/ssca-config/pipeline-store:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Save SPM Pipeline Remote Configs
      operationId: savePipelineRemoteConfig
      tags:
        - Pipeline Store Config
      responses:
        '200':
          description: Shared Response
        '400':
          description: Bad Request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error3'
          description: Internal Server Error
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: false
      requestBody:
        $ref: '#/components/requestBodies/PipelineStoreConfigRequestBody'
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/sbom-score:
    post:
      summary: Download SBOM score for an artifact
      responses:
        '200':
          $ref: '#/components/responses/SbomScorecardResponseBody'
      operationId: getSbomScoreForArtifact
      x-stoplight:
        id: q6aepcsx5fl46
      description: Download SBOM score for an artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: false
      security:
        - x-api-key: []
      tags:
        - SBOM
      requestBody:
        $ref: '#/components/requestBodies/SbomScoreRequestBody'
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
  /gateway/ssca-manager/v1/org/{org}/ssca-config/{config-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - schema:
          type: string
        name: config-id
        in: path
        required: true
        description: Config ID
    get:
      summary: fetch scs config at org
      tags:
        - Config
      responses:
        '200':
          $ref: '#/components/responses/ConfigResponseBody'
        '500':
          description: Internal Server Error
      operationId: getConfigForOrg
      x-stoplight:
        id: sf7osk57rtjbv
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
    delete:
      summary: Delete step config at Org
      tags:
        - Delete Step Config
      responses:
        '200':
          description: OK
        '500':
          description: Internal Server Error
      operationId: deleteConfigByOrg
      x-stoplight:
        id: 1fvzzgzubm7jk
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /gatway/ssca-manager/v1/ssca-config/{config-id}:
    parameters:
      - schema:
          type: string
        name: config-id
        in: path
        required: true
        description: Config ID
    get:
      summary: GET scs config for account
      tags:
        - Config
      responses:
        '200':
          $ref: '#/components/responses/ConfigResponseBody'
      operationId: getConfigForAccount
      x-stoplight:
        id: 24rnitr9md089
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
    delete:
      summary: Delete step config at Account
      tags:
        - Delete Step Config
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
      operationId: deleteConfigByAccount
      x-stoplight:
        id: 230c0v7un6ufl
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/org/{org}/project/{project}/normalised-sbom-component:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Get Normalised Sbom Components
      operationId: getNormalisedSbomComponent
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/NormaliseSbomResponseBody'
      description: >-
        Get a paginated list for normalised sbom components for a given
        orchestration.
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
      requestBody:
        $ref: '#/components/requestBodies/NormalisedSbomComponentRequestBody'
      tags:
        - enforcement
      x-stoplight:
        id: cdrphvqdy9dld
  /v1/org/{org}/project/{project}/enforcement-result:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Save Enforcement Result
      operationId: saveEnforcementResult
      security:
        - x-api-key: []
      responses:
        '201':
          description: Created
      description: Creates a new Enforcement Result.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnforcementResultDTO'
        description: Enforcement Result DTO
      tags:
        - enforcement
      x-stoplight:
        id: 8kgg2sedlujpu
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/org/{org}/project/{project}/enforcement-summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Save Enforcement Summary
      operationId: saveEnforcementSummary
      security:
        - x-api-key: []
      responses:
        '201':
          description: Created
      description: Creates a new Enforcement Summary.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnforcementSummaryDTO'
        description: Enforcement Result DTO
      tags:
        - enforcement
      x-stoplight:
        id: bwu6h3f34xyvh
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/org/{org}/project/{project}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All Artifacts
      operationId: listArtifacts
      responses:
        '200':
          $ref: '#/components/responses/ArtifactListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - artifact
      description: List all artifacts
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - name
              - updated
            default: name
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ArtifactListingRequestBody'
      x-stoplight:
        id: sfjqaglg433tw
  /v1/orgs/{org}/projects/{project}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All Artifacts
      operationId: artifactList
      responses:
        '200':
          $ref: '#/components/responses/ArtifactListingResponseBodyV2'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - artifactV2
      description: List artifacts
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - name
              - updated
            default: name
        - schema:
            type: string
            enum:
              - image
              - repository
          in: query
          name: type
          description: Type of artifacts to be listed
          required: true
        - schema:
            type: string
            enum:
              - all
              - latest
            default: all
          in: query
          name: view_mode
          description: Mode in which artifacts should be listed
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ArtifactListingRequestBody'
      x-stoplight:
        id: vei5bhkpoktdd
  /v1/org/{org}/project/{project}/grouped-artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All Artifacts
      operationId: listLatestArtifacts
      responses:
        '200':
          $ref: '#/components/responses/ArtifactListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - artifact
      description: List latest version of all artifacts
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - name
              - updated
            default: name
      security:
        - x-api-key: []
      x-stoplight:
        id: uhn8ew9xe1j4g
  /v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/components:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
      - $ref: '#/components/parameters/Tag'
    post:
      summary: Artifact Detail Component View
      operationId: getArtifactDetailComponentView
      responses:
        '200':
          $ref: '#/components/responses/ArtifactComponentViewResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - artifact
      description: Get artifact detail component view
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - package_name
              - package_supplier
            default: package_name
      security:
        - x-api-key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactComponentViewRequestBody'
      x-stoplight:
        id: iee2ipp3sstch
  /v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/deployments:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
      - $ref: '#/components/parameters/Tag'
    post:
      summary: Artifact Detail Deployment View
      operationId: getArtifactDetailDeploymentView
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDeploymentViewResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
        default:
          $ref: '#/components/responses/ArtifactDeploymentViewResponseBody'
      tags:
        - artifact
      description: Get artifact detail deployment view
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - env_name
              - env_type
            default: env_name
      security:
        - x-api-key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactDeploymentViewRequestBody'
        description: ''
      x-stoplight:
        id: 8ivdhaqr6wnc0
  /v1/org/{org}/project/{project}/artifact/{artifact}/tag/{tag}/details:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
      - $ref: '#/components/parameters/Tag'
    get:
      summary: Artifact Details
      operationId: getArtifactDetails
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDetailResponseBody'
        '201':
          description: Created
        '400':
          description: Bad Request
      description: Get artifact details
      security:
        - x-api-key: []
      tags:
        - artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-stoplight:
        id: sq6emrti1dnvu
  /v1/org/{org}/project/{project}/orchestration/{orchestration-id}/sbom-scorecard:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration-id
        in: path
        required: true
        description: Orchestration ID
    post:
      summary: Save Scorecard
      operationId: saveSbomScorecard
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: x9zs9hnpf2qui
      description: Save SBOM Scorecard
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SbomScorecardRequest'
        description: ''
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - Scorecard
    get:
      summary: Get Scorecard
      operationId: getSbomScorecard
      responses:
        '200':
          $ref: '#/components/responses/SbomScorecardResponseBody'
        '400':
          description: Bad Request
      x-stoplight:
        id: cogck106pn3l9
      description: Get SBOM Scorecard
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - Scorecard
  /gateway/ssca-manager/v1/org/{org}/project/{project}/ssca-config/{config-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: config-id
        in: path
        required: true
        description: Config ID
    get:
      summary: Get Config By ID
      responses:
        '200':
          $ref: '#/components/responses/ConfigResponseBody'
        '400':
          description: Bad Request
        '404':
          description: Not Found
      operationId: getConfigById
      x-stoplight:
        id: 91ruzzd1vqr6e
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      description: Get Config By ID
      tags:
        - ConfigForProject
    put:
      summary: Update Config By ID
      operationId: updateConfigById
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 12tag1uia7n1b
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ConfigRequestBody'
      description: Update Config By ID
      tags:
        - ConfigForProject
    delete:
      summary: Delete step config by Project
      operationId: deleteConfigById
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
      x-stoplight:
        id: m3pcr58988151
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      description: Delete Config By ID
      tags:
        - Delete Step Config
  /v1/org/{org}/project/{project}/ssca-config:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: List Configs
      tags:
        - Config
      responses:
        '200':
          $ref: '#/components/responses/ListConfigsResponseBody'
        '400':
          description: Bad Request
      operationId: listConfigs
      x-stoplight:
        id: ljdrkcdfh8qub
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Order2'
        - schema:
            enum:
              - creation_on
              - config_id
              - name
              - type
            default: name
          in: query
          name: sort
          description: Parameter on the basis of which sorting is done.
      description: List Configs
    post:
      summary: Save Config By ID
      operationId: saveConfig
      responses:
        '201':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 3s3zrcucnfbjp
      description: Save Config By ID
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ConfigRequestBody'
      tags:
        - Config
  /v1/org/{org}/project/{project}/ssca-config/{name}/type/{type}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: name
        in: path
        required: true
        description: Config Name
      - schema:
          type: string
        name: type
        in: path
        required: true
        description: Config Id
    get:
      summary: Get Config By Name And Type
      tags:
        - Config
      responses:
        '200':
          $ref: '#/components/responses/ConfigResponseBody'
        '400':
          description: Bad Request
        '404':
          description: Not Found
      operationId: getConfigByNameAndType
      x-stoplight:
        id: dns7c0itdxs24
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      description: Get Config By Name And Type
  /v1/ssca-config/execution-limit/update-config:
    post:
      summary: Save Execution Limits
      operationId: saveExecutionLimitsConfig
      responses:
        '200':
          $ref: '#/components/responses/ExecutionLimitResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ExecutionLimitRequestBody'
      tags:
        - ExecutionLimits
      x-internal: true
  /v1/orgs/{org}/projects/{project}/artifact/{artifact}/baseline:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    get:
      summary: Get Baseline For Artifact
      tags:
        - Baseline
      responses:
        '200':
          $ref: '#/components/responses/BaselineResponseBody'
      operationId: getBaselineForArtifact
      x-stoplight:
        id: 4ghyhtaj1qcz8
      description: Get the baseline for an artifact
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
    post:
      summary: Set Baseline For Artifact
      operationId: setBaselineForArtifact
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: ro0mhka3ykakb
      description: Save the baseline for an artifact
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/BaselineRequestBody'
      tags:
        - Baseline
  /v1/orgs/{org}/projects/{project}/artifact/{artifact}/sbom-drift:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: artifact
        in: path
        required: true
        description: Artifact ID
    post:
      summary: Calculate Drift For Artifact
      operationId: calculateDriftForArtifact
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSbomDriftResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 3dsr9opyxu1dg
      description: >-
        This API calculates and stores drift between 2 versions of an artifact
        with TTL of 1 hour.
      tags:
        - sbomDrift
      security:
        - x-api-key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactSbomDriftRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/sbom-drift/{drift}/components:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: drift
        in: path
        required: true
        description: SBOM Drift ID
    get:
      summary: Get Component Drift
      tags:
        - sbomDrift
      responses:
        '200':
          $ref: '#/components/responses/ComponentDriftResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getComponentDrift
      x-stoplight:
        id: yrpb128gv7y08
      description: Get component drift for provided drift ID.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
            enum:
              - all
              - added
              - modified
              - deleted
          in: query
          name: status
          description: Provide status of components drift to be returned
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - schema:
            type: string
          in: query
          name: search_term
          description: Search for components by name.
  /v1/orgs/{org}/projects/{project}/sbom-drift/{drift}/licenses:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: drift
        in: path
        required: true
        description: SBOM Drift ID
    get:
      summary: Get License Drift
      tags:
        - sbomDrift
      responses:
        '200':
          $ref: '#/components/responses/LicenseDriftResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getLicenseDrift
      x-stoplight:
        id: 46l29mrkygarx
      description: Get license drift for provided drift ID.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
            enum:
              - all
              - added
              - deleted
          in: query
          name: status
          description: Provide status of components drift to be returned
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - schema:
            type: string
          in: query
          name: search_term
          description: Search for licenses by name.
  /v1/orgs/{org}/projects/{project}/remediations:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Create Remediation Tracker
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationTrackerCreateResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: createRemediationTracker
      x-stoplight:
        id: 8cdxntj5aqlu3
      description: Create Remediation Tracker.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/RemediationTrackerCreateRequestBody'
  /v1/orgs/{org}/projects/{project}/remediations/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All Remediation Trackers
      operationId: listRemediations
      responses:
        '200':
          $ref: '#/components/responses/RemediationListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - Remediation
      description: List all Remediation Trackers.
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - component
              - status
              - targetDate
              - contactName
              - cve
              - startTimeMilli
            default: startTimeMilli
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: order
          schema:
            enum:
              - DESC
              - ASC
            default: DESC
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/RemediationListingRequestBody'
      x-stoplight:
        id: eb3hi5al80vx3
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker ID
    put:
      summary: Update Remediation Tracker
      operationId: updateRemediationTracker
      responses:
        '200':
          $ref: '#/components/responses/RemediationTrackerUpdateResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: w3z2s74z0zoeo
      tags:
        - Remediation
      description: Update Remediation Tracker.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/RemediationTrackerUpdateRequestBody'
  /v1/orgs/{org}/projects/{project}/remediations/overall-summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: Get Remediation Tracker Overall summary
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationTrackersOverallSummaryResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getOverallSummary
      x-stoplight:
        id: 8ie7d2h2woo22
      description: Get Overall summary of Remediation Trackers.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/orchestration/{orchestration}/sbom-drift:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration
        in: path
        required: true
        description: Orchestration Step Execution ID
    post:
      summary: Calculate Drift For Orchestration Step
      tags:
        - orchestrationV2
      responses:
        '200':
          $ref: '#/components/responses/OrchestrationStepDriftResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: calculateDriftForOrchestrationStep
      x-stoplight:
        id: rc1gp55e42zv2
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/OrchestrationStepDriftRequestBody'
      x-internal: true
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/close:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
    put:
      summary: Close Remediation Tracker
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: closeRemediationTracker
      x-stoplight:
        id: oqbepatk6oy12
      description: Close Remediation Tracker.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/exclude-artifact:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
    put:
      summary: Exclude Artifact from Remediation Tracker
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: excludeArtifact
      x-stoplight:
        id: lk8f6jp6okqvf
      description: Exclude Artifact From Remediation Tracker.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ExcludeArtifactRequestBody'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/details:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
    get:
      summary: Get Remediation Details.
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationDetailsResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getRemediationDetails
      x-stoplight:
        id: qhd60cfh35chp
      description: Get Remediation Details.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
    post:
      summary: Get Artifact List for Remediations.
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationArtifactListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactListForRemediation
      x-stoplight:
        id: rii0dp21qz04b
      description: Get Remediation Details.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
      requestBody:
        $ref: '#/components/requestBodies/RemediationArtifactListingRequestBody'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/environments:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
      - schema:
          type: string
        name: artifact
        in: path
        required: true
        description: Artifact Id
    get:
      summary: Get Environment List for Artifact In Remediation.
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationEnvironmentResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getEnvironmentListForRemediation
      x-stoplight:
        id: 477pmu269635q
      description: Get All Environments impacted with Remediation.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/EnvType'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/details:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
      - schema:
          type: string
        name: artifact
        in: path
        required: true
        description: Artifact Id
    get:
      summary: Get Details of a Artifact in a Remediation Tracker.
      tags:
        - Remediation
      responses:
        '200':
          $ref: '#/components/responses/RemediationArtifactDetailResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactInRemediationDetails
      x-stoplight:
        id: acya1h6k59vo7
      description: Get Details of a Artifact in a Remediation Tracker.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/artifacts/{artifact}/deployments:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker Id
      - schema:
          type: string
        name: artifact
        in: path
        required: true
        description: Artifact Id
    post:
      summary: Get Deployments List for Artifact In Remediation.
      tags:
        - Remediation
      responses:
        '200':
          $ref: >-
            #/components/responses/RemediationArtifactDeploymentsListingResponseBody
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getDeploymentsListForArtifactInRemediation
      x-stoplight:
        id: hstty9r60f0di
      description: Get Deployments List for Artifact In Remediation.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
      requestBody:
        $ref: >-
          #/components/requestBodies/RemediationArtifactDeploymentsListingRequestBody
  /v1/orgs/{org}/projects/{project}/remediations/{remediation}/create-ticket:
    post:
      summary: Create Ticket
      operationId: createTicket
      responses:
        '201':
          $ref: '#/components/responses/CreateTicketResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 330euzylehvhl
      description: Create Ticket
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/CreateTicketRequestBody'
      tags:
        - Remediation
      security:
        - x-api-key: []
    parameters:
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: remediation
        in: path
        required: true
        description: Remediation Tracker ID
      - $ref: '#/components/parameters/OrgParam1'
  /v1/orgs/{org}/projects/{project}/remediations/check-artifacts:
    post:
      summary: Check Artifacts And Deployments
      operationId: checkArtifactAndDeployments
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactAndDeploymentsResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: t98vm7wz7n0eq
      description: Check Artifacts And Deployments.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/RemediationTrackerCreateRequestBody'
      tags:
        - Remediation
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
  /v1/orgs/{org}/projects/{project}/exemptions:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: List exemptions for project
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ExemptionListResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: listExemptionsForProject
      x-stoplight:
        id: 9rlhvfejqah63
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - schema:
            type: array
            items:
              $ref: '#/components/schemas/ExemptionStatusDTO'
          in: query
          name: status
          description: >-
            status of the exemption, all statuses will be returned if this is
            null
        - schema:
            type: string
          in: query
          name: artifact_id
          description: >-
            artifactId of the exemption, only applicable for exemptions with
            ARTIFACT scope
        - schema:
            type: string
          in: query
          name: search_term
          description: Search for exemptions by name
      description: List exemptions for project
    post:
      summary: Create exemption for project
      tags:
        - exemptions
      operationId: createExemptionForProject
      security:
        - x-api-key: []
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: bgtzrf9osfkqt
      description: Create exemption for project
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionRequestDTO'
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions:
    parameters:
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/Artifact'
    post:
      summary: Create exemption for artifact
      operationId: createExemptionForArtifact
      security:
        - x-api-key: []
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: Create exemption for artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionRequestDTO'
      x-stoplight:
        id: gnrf5uwmpc5nq
      tags:
        - exemptions
  /v1/orgs/{org}/projects/{project}/exemptions/{exemption}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Exemption'
    get:
      summary: Get exemption for project
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getExemptionForProject
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      description: Get exemption for project
      x-stoplight:
        id: doij0dtepyqtg
    put:
      summary: Update exemption for project
      operationId: updateExemptionForProject
      security:
        - x-api-key: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 10lshl289t84n
      description: Update exemption for project
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionRequestDTO'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - exemptions
    delete:
      summary: Delete exemption for project
      operationId: deleteExemptionForProject
      security:
        - x-api-key: []
      responses:
        '204':
          description: ''
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 5rkc3a8lvyqa5
      description: Delete exemption for project
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - exemptions
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions/{exemption}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Exemption'
      - $ref: '#/components/parameters/Artifact'
    get:
      summary: Get exemption for artifact
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getExemptionForArtifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      description: Get exemption for artifact
      x-stoplight:
        id: 47eka1spqllsf
    put:
      summary: Update exemption for artifact
      operationId: updateExemptionForArtifact
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: Update exemption for artifact
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionRequestDTO'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-stoplight:
        id: wo6x8cpwhbq3m
    delete:
      summary: Delete exemption for artifact
      operationId: deleteExemptionForArtifact
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '204':
          description: ''
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: Delete exemption for artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-stoplight:
        id: m4w47h5007z2e
  /v1/orgs/{org}/projects/{project}/exemptions/{exemption}/review:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Exemption'
    put:
      summary: Review exemption for project
      tags:
        - exemptions
      security:
        - x-api-key: []
      operationId: reviewExemptionForProject
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: l079e2dbui1m8
      description: Review exemption for project
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionReviewRequestDTO'
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/exemptions/{exemption}/review:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Exemption'
      - $ref: '#/components/parameters/Artifact'
    put:
      summary: Review exemption for artifact
      operationId: reviewExemptionForArtifact
      tags:
        - exemptions
      security:
        - x-api-key: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExemptionResponseDTO'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: Review exemption for artifact
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-stoplight:
        id: 2guw8lpxf9fwg
      requestBody:
        description: Shared Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExemptionReviewRequestDTO'
  /v1/orgs/{org}/projects/{project}/components:
    get:
      summary: Get components for project
      tags:
        - component
      responses:
        '200':
          $ref: '#/components/responses/ComponentListResponseBody'
      operationId: getComponents
      x-stoplight:
        id: up0ge2m05ccdv
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: search_term
          description: Search for components by name.
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/executions/{execution}/ssca-summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: pipeline
        in: path
        required: true
        description: Harness pipeline ID
      - schema:
          type: string
        name: execution
        in: path
        required: true
        description: Harness execution ID
    get:
      summary: Get Summary for SSCA Tab
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SSCASummary'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getSSCASummary
      x-stoplight:
        id: o6bx01jzbku58
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - sscaPipelineView
  /v1/orgs/{org}/projects/{project}/pipelines/{pipeline}/executions/{execution}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: pipeline
        in: path
        required: true
        description: Harness pipeline ID
      - schema:
          type: string
        name: execution
        in: path
        required: true
        description: Harness execution ID
    post:
      summary: Get Artifact List for Pipeline View
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ArtifactListingResponsePipelineBody'
      operationId: getPipelineArtifactList
      x-stoplight:
        id: egrnx9jyyfjxz
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ArtifactListingPipelineRequestBody'
      tags:
        - sscaPipelineView
  /v1/license/ssca/usage:
    post:
      summary: SSCA module license usage
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LicenseUsageResponse'
      operationId: sscaLicenseUsage
      x-stoplight:
        id: 5wyzib9dvtg21
      description: SSCA module license usage
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: integer
            format: int64
          in: query
          name: timestamp
          description: current time
      tags:
        - LicenseUsageResource
  /v1/orgs/{org}/projects/{project}/provenance/{provenance}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: provenance
        in: path
        required: true
        description: Provenance Id
    servers: []
    post:
      summary: Save Provenance
      tags:
        - Slsa
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveProvenance
      x-stoplight:
        id: qxnsz67gv81xu
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ProvenanceRequestBody'
    get:
      summary: Get Provenance
      tags:
        - Slsa
      responses:
        '200':
          $ref: '#/components/responses/ProvenanceResponseBody'
      operationId: getProvenance
      x-stoplight:
        id: x30g28thstz3g
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v2/orgs/{org}/projects/{project}/provenance/{provenance}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/ProvenanceId'
    servers: []
    post:
      summary: Save Provenance
      tags:
        - slsaV2
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveProvenanceV2
      x-stoplight:
        id: qxnsz67gv81xu
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ProvenanceRequestBodyV2'
  /v1/orgs/{org}/projects/{project}/slsa-verification/{provenance}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: provenance
        in: path
        required: true
        description: Provenance Id
    post:
      summary: Save SLSA Verification Status
      tags:
        - Slsa
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveSlsaVerification
      x-stoplight:
        id: 3fps8yinohu8r
      requestBody:
        $ref: '#/components/requestBodies/SLSAVerificationRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v2/orgs/{org}/projects/{project}/slsa-verification/{provenance}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/ProvenanceId'
    post:
      summary: Save SLSA Verification Status
      tags:
        - slsaV2
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveSlsaVerificationV2
      security:
        - x-api-key: []
      x-stoplight:
        id: 3fps8yinohu8r
      requestBody:
        $ref: '#/components/requestBodies/SLSAVerificationRequestBodyV2'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/slsa-verification/{provenance}/policy-violations:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: provenance
        in: path
        required: true
        description: Provenance Id
    post:
      summary: Save SLSA Policy Violation
      tags:
        - Slsa
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveSlsaPolicyViolations
      security:
        - x-api-key: []
      x-stoplight:
        id: y5ntvtrr1fr5v
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/PolicyViolationRequestBody'
  /v1/orgs/{org}/projects/{project}/orchestration/{orchestration-id}/sbom-upload:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration-id
        in: path
        required: true
        description: Orchestration Identifier
    servers: []
    post:
      summary: Upload SBOM
      tags:
        - orchestrationV2
      responses:
        '201':
          description: Created
      operationId: uploadSbom
      x-stoplight:
        id: nu31o2ljat7wm
      description: Upload SBOM for an orchestration run
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - sbom
                - execution_context
              properties:
                sbom:
                  type: string
                  x-stoplight:
                    id: q6xx2x2hw7izu
                  format: binary
                  writeOnly: true
                execution_context:
                  $ref: '#/components/schemas/ExecutionContext'
                sbom_name:
                  type: string
                  x-stoplight:
                    id: x2y8o4pdp79wh
      security:
        - x-api-key: []
      x-internal: true
  /v2/orgs/{org}/projects/{project}/orchestration/{orchestration}/sbom-upload:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/OrchestrationId'
    servers: []
    post:
      summary: Upload SBOM
      tags:
        - orchestrationV3
      responses:
        '201':
          description: Shared Response
      operationId: uploadSbomV2
      x-stoplight:
        id: nu31o2ljat7wm
      description: Upload SBOM for an orchestration run
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - sbom
                - execution_context
              properties:
                sbom:
                  type: string
                  x-stoplight:
                    id: q6xx2x2hw7izu
                  format: binary
                  writeOnly: true
                execution_context:
                  $ref: '#/components/schemas/ExecutionDetail'
                sbom_name:
                  type: string
                  x-stoplight:
                    id: x2y8o4pdp79wh
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/orchestration/{orchestration-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: orchestration-id
        in: path
        required: true
        description: Orchestration ID for SBOM orchestration
    post:
      summary: Save Orchestration
      tags:
        - orchestrationV2
      responses:
        '201':
          $ref: '#/components/responses/SaveOrchestrationResponseBody'
        '400':
          description: Bad Request
      operationId: saveOrchestration
      x-stoplight:
        id: z435nplrowm4h
      requestBody:
        $ref: '#/components/requestBodies/SaveOrchestrationRequestBody'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
      x-internal: true
  /v2/orgs/{org}/projects/{project}/orchestration/{orchestration}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/OrchestrationId'
    post:
      summary: Save Orchestration
      tags:
        - orchestrationV3
      responses:
        '201':
          $ref: '#/components/responses/PluginResponseBody'
        '400':
          description: Bad Request
      operationId: saveOrchestrationV2
      x-stoplight:
        id: z435nplrowm4h
      requestBody:
        $ref: '#/components/requestBodies/SaveOrchestrationRequestBodyV2'
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
  /v1/base-image/details:
    post:
      summary: Get Base Image Details
      tags:
        - baseImage
      responses:
        '200':
          $ref: '#/components/responses/ArtifactComponentsResponseBody'
      operationId: getBaseImageDetails
      x-stoplight:
        id: shm18amspn3g5
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/ArtifactComponentsRequestBody'
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: List Integrations
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/IntegrationListingResponseBody'
      operationId: listIntegrations
      x-stoplight:
        id: n7g2q1eq0msdv
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - schema:
            type: string
            enum:
              - ACTIVE
              - INACTIVE
          in: query
          name: status
          description: Status of the integration
        - schema:
            type: string
          in: query
          name: search_term
          description: integration org search
        - schema:
            type: string
            enum:
              - last_scan
            default: last_scan
          in: query
          name: sort
          description: sort order
      x-internal: true
    post:
      summary: Create Integration
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/CreateIntegrationResponseBody'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error3'
          description: Not Acceptable
        '500':
          description: Internal Server Error
      operationId: createIntegration
      x-stoplight:
        id: srinp2ibtwp8o
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/CreateIntegrationRequestBody'
      x-internal: false
  /v1/orgs/{org}/projects/{project}/compliance-standards:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Create Compliance Standards
      responses:
        '200':
          description: Shared Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ComplianceCheck'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: createComplianceStandards
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/CreateComplianceStandardRequestBody'
      description: Create Compliance Standards
      x-stoplight:
        id: w7t7slwx4bpyp
      tags:
        - ComplianceStandards
  /v1/orgs/{org}/projects/{project}/compliance-results/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Fetch Compliance Results
      responses:
        '200':
          $ref: '#/components/responses/FetchComplianceResultResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: fetchComplianceResults
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
      requestBody:
        $ref: '#/components/requestBodies/FetchComplianceResultRequestBody'
      description: Fetch Compliance Results
      x-stoplight:
        id: i0heiwkbw253d
      tags:
        - ComplianceResults
  /v1/orgs/{org}/projects/{project}/compliance-results/compliances:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Fetch Compliance Results Checks
      responses:
        '200':
          $ref: >-
            #/components/responses/ComplianceResultsGroupByComplianceIdResponseBody
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: fetchComplianceResultsGroupById
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - schema:
            type: string
            enum:
              - severity
          in: query
          name: sort
          description: sort entity
        - schema:
            type: string
          in: query
          name: start_time
          description: Start time for the query, accepts timestamp epoch UTC
        - schema:
            type: string
          in: query
          name: end_time
          description: End time for the query, accepts timestamp epoch UTC
      requestBody:
        $ref: '#/components/requestBodies/FetchComplianceResultRequestBody'
      description: fetch Compliance Results GroupById
      tags:
        - ComplianceResults
      x-stoplight:
        id: jswpohsezov5y
  /v1/orgs/{org}/projects/{project}/compliance-results/compliances/{compliance}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: compliance
        in: path
        required: true
        description: compliance ID
    get:
      summary: Fetch Compliance Result By Compliance Id
      tags:
        - ComplianceResults
      responses:
        '200':
          $ref: '#/components/responses/FetchArtifactsByComplianceIdResponseBody'
        '500':
          description: Internal Server Error
      operationId: fetchComplianceResultsByComplianceId
      security:
        - x-api-key: []
      x-stoplight:
        id: i0e7u125rfvdr
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - schema:
            type: string
            enum:
              - repo_name
              - updated
              - status
          in: query
          name: sort
          description: sort order
        - schema:
            type: string
          in: query
          name: search_term
          description: artifact name search
  /v1/orgs/{org}/projects/{project}/compliance-results:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Save Compliance Results
      responses:
        '200':
          description: Shared Response
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveComplianceResult
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/CreateComplianceResultRequestBody'
      description: Save Compliance Results
      tags:
        - ComplianceResults
      x-stoplight:
        id: 49usqlvlug1m6
  /v2/orgs/{org}/projects/{project}/compliance-results:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Save Compliance Results
      responses:
        '200':
          description: Empty Response
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveComplianceResultV2
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: Create Compliance Results Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateComplianceResultV2'
      description: Save Compliance Results
      tags:
        - ComplianceResultsV2
      x-stoplight:
        id: sjyebgk7vdobd
  /v1/orgs/{org}/projects/{project}/compliance-standards/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Fetch Compliance Standards
      responses:
        '200':
          $ref: '#/components/responses/ComplianceStandardsResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getComplianceStandards
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Order2'
        - schema:
            type: string
          in: query
          name: sort
          description: Parameter on the basis of which sorting is done.
      requestBody:
        $ref: '#/components/requestBodies/ComplianceStandardsRequestBody'
      x-stoplight:
        id: ba1j9fp38rjbh
      description: Fetch Compliance Standards
      tags:
        - ComplianceStandards
  /v1/orgs/{org}/projects/{project}/compliance-standards/compliances/{compliance}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: compliance
        in: path
        required: true
        description: compliance Id
    get:
      summary: Get Compliance Standard By Id
      tags:
        - complianceStandards
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ComplianceStandardByIdResponseBody'
      operationId: getCompliaceStandardById
      x-stoplight:
        id: pm3x5ic04amhd
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/integration/{integration}/fetch-repos:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: integration
        in: path
        required: true
        description: Integration ID
    get:
      summary: Get all repos from github app
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/FetchIntegrationReposResponseBody'
      operationId: fetchReposInIntegration
      x-stoplight:
        id: ux0nso6255a3y
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/SearchTerm6'
      x-internal: true
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration/{integration}/repos:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: integration
        in: path
        required: true
        description: >-
          A unique identifier for the integration created using the Create
          Integration API. This ID is returned in the response of the Create
          Integration API and must be provided as a path parameter when fetching
          integration details or repositories.
    get:
      summary: Get configured repos in the integration
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/ListIntegrationReposResponseBody'
      operationId: getIntegrationRepos
      x-stoplight:
        id: ausvqq25jx0w8
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-internal: true
    post:
      summary: Configure repos in your integration
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/UpdateIntegrationResponseBody'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
      operationId: configureRepos
      x-stoplight:
        id: amik8vh9jyz77
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConfigureReposRequest'
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
    patch:
      summary: Add repos in your integration
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/UpdateIntegrationResponseBody'
      operationId: addRepos
      x-stoplight:
        id: amik8vh9jyz77
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConfigureReposRequest'
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
    delete:
      summary: Delete Repositories from Integration
      tags:
        - Delete Repositories
      responses:
        '200':
          $ref: '#/components/responses/UpdateIntegrationResponseBody'
      operationId: deleteRepos
      x-stoplight:
        id: amik8vh9jyz77
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ConfigureReposRequest'
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/artifact-sources:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List Artifact Sources
      operationId: listArtifactSources
      responses:
        '200':
          $ref: '#/components/responses/ArtifactSourcesListingResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - artifactListing
      description: List Artifact Sources and associated artifacts count
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - name
      security:
        - x-api-key: []
      x-stoplight:
        id: y2ehf0ax5nsh8
      requestBody:
        $ref: '#/components/requestBodies/ArtifactListingRequestBody'
  /v1/orgs/{org}/projects/{project}/artifact-sources/{source}/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: source
        in: path
        required: true
        description: Artifact Source Id
    post:
      summary: List All Artifacts
      operationId: artifactListV2
      responses:
        '200':
          $ref: '#/components/responses/ArtifactV2ListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: List artifacts
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - updated
        - $ref: '#/components/parameters/OrderDefaultDesc'
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/ArtifactListingRequestBody'
      x-stoplight:
        id: 25gnwq5h8o5ho
      tags:
        - artifactListing
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/components:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    post:
      summary: ArtifactV2 Detail Component View
      tags:
        - artifactListing
      responses:
        '200':
          $ref: '#/components/responses/ArtifactComponentViewResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactV2DetailComponentView
      x-stoplight:
        id: kr7bsdqea6udo
      description: Get artifactV2 detail component view
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            type: string
            enum:
              - package_name
              - package_supplier
            default: package_name
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactComponentViewRequestBody'
        description: ArtifactV2 Component View Request Body.
  /v1/orgs/{org}/projects/{project}/artifact-sources/{source}/baseline:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: source
        in: path
        required: true
        description: Artifact Source ID
    post:
      summary: Set Baseline For Artifact
      operationId: setBaselineForArtifactV2
      responses:
        '200':
          $ref: '#/components/responses/SaveResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      x-stoplight:
        id: 8zhwp073nwqqn
      description: Save the baseline for an artifact
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/BaselineV2RequestBody'
      tags:
        - BaselineV2
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/deployments:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    post:
      summary: Artifact Detail Deployment View
      operationId: getArtifactV2DetailDeploymentView
      responses:
        '200':
          $ref: '#/components/responses/ArtifactDeploymentViewResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
        default:
          $ref: '#/components/responses/ArtifactDeploymentViewResponseBody'
      description: Get artifactV2 detail deployment view
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            enum:
              - env_name
              - env_type
            default: env_name
      security:
        - x-api-key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactDeploymentViewRequestBody'
        description: Get artifactV2 detail deployment view.
      x-stoplight:
        id: af9upcbwjbi8t
      tags:
        - artifactListing
  /v1/orgs/{org}/projects/{project}/artifact/{artifact}/compliance-results/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    post:
      summary: Fetch compliance result by artifact
      tags:
        - ComplianceResults
      responses:
        '200':
          $ref: '#/components/responses/FetchComplianceResultByArtifactResponse'
      operationId: fetchComplianceResultsByArtifact
      x-stoplight:
        id: obqv1cnxcb7ur
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - in: query
          name: sort
          description: Parameter on the basis of which sorting is done.
          schema:
            enum:
              - title
              - severity
            type: string
      requestBody:
        $ref: '#/components/requestBodies/FetchComplianceResultByArtifactRequestBody'
      security:
        - x-api-key: []
  /gateway/ssca-manager/v1/orgs/{org}/projects/{project}/integration/{integration}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: integration
        in: path
        required: true
        description: Integration ID
    delete:
      summary: Delete Integration
      tags:
        - integration
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
      operationId: deleteIntegration
      x-stoplight:
        id: spufhrt5hdms2
      security:
        - x-api-key: []
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/artifact-sources/{source}/artifacts/{artifact}/overview:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
      - schema:
          type: string
        name: source
        in: path
        required: true
        description: Artifact Source Id
    get:
      summary: ArtifactV2 Overview
      tags:
        - artifactListing
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactV2Overview'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactV2Overview
      x-stoplight:
        id: nj4qgvn5l5j53
      description: Get ArtifactV2 Overview
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/artifact-overview:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/AccountHeader6'
    get:
      summary: ArtifactV2 Overview
      tags:
        - artifactListing
      responses:
        '200':
          description: Example response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactV2Overview'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactV2OverviewByName
      x-stoplight:
        id: o6y0qpoj9lk5u
      description: Get ArtifactV2 by image name, tag and digest
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: digest
          required: true
          description: Digest of the artifact
        - schema:
            type: string
          in: query
          name: registry_url
          description: Registry url
          required: true
        - schema:
            type: string
          in: query
          name: image_name
          description: Image name of the artifact
          required: true
  /v1/configs/pipeline:
    post:
      summary: Update Pipeline Config
      tags:
        - accountConfigs
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: updatePipelineConfig
      x-stoplight:
        id: ql612lzxrh55y
      description: This API will update the pipeline config for an account.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/PipelineConfigUpdateRequestBody'
    parameters:
      - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/code-repos/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All Code Repositories
      operationId: codeRepositoriesList
      responses:
        '200':
          $ref: '#/components/responses/CodeRepositoryListingResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      tags:
        - codeRepo
      description: List Code Repositories
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            type: string
            enum:
              - name
              - last_scan
              - compliance_results
            default: last-scan
      security:
        - x-api-key: []
      requestBody:
        $ref: '#/components/requestBodies/CodeRepositoryListingRequestBody'
      x-stoplight:
        id: r38yb2r4uttwp
  /v1/orgs/{org}/projects/{project}/ci-cd/list:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: List All CI/CD Workflows
      operationId: getCICDWorkflowsList
      responses:
        '200':
          description: CI/CD Workflow List Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CICDWorkflowListingResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      description: List CI/CD Workflows
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - $ref: '#/components/parameters/Page2'
        - in: query
          description: Parameter on the basis of which sorting is done.
          name: sort
          schema:
            type: string
            enum:
              - last_scan
              - evaluation_count
            default: last_scan
      security:
        - x-api-key: []
      requestBody:
        description: Shared Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CICDWorkflowListingRequest'
      x-stoplight:
        id: w1x8cutq6bkqi
      tags:
        - CICDWorkflows
  /v1/orgs/{org}/projects/{project}/code-repos/{code-repo}/overview:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: code-repo
        in: path
        required: true
        description: Code repository ID
    get:
      summary: Get Code Repository Overview
      tags:
        - codeRepo
      responses:
        '200':
          $ref: '#/components/responses/CodeRepositoryOverviewResponseBody'
      operationId: getCodeRepositoryOverview
      x-stoplight:
        id: q2jzrwo3zf8o7
      description: This API provides overview details of code repository.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/code-repos/{code-repo}/rules/evalution-trend:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: code-repo
        in: path
        required: true
        description: Code Repository ID
      - $ref: '#/components/parameters/AccountHeader6'
    get:
      summary: GET Repo Rules Evaluation Trend
      tags:
        - codeRepo
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CodeRepoRulesEvaluation'
      operationId: getRepoRulesEvaluationTrend
      x-stoplight:
        id: 8105jf556pwz3
      security:
        - x-api-key: []
      parameters:
        - schema:
            type: integer
            format: int64
          in: query
          name: start_time
          description: Start Time
          required: true
        - schema:
            type: integer
            format: int64
          in: query
          name: end_time
          description: End Time
  /v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-breakdown:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Compliance Results Stats Overview Severity
      responses:
        '200':
          $ref: '#/components/responses/ComplianceResultsEvaluationBreakdownResponse'
        '500':
          description: Internal Server Error
      operationId: postComplianceResultStatsOverview
      x-stoplight:
        id: v8wrumipa2mwv
      security:
        - x-api-key: []
      description: Post call to show Compliance Results for Compliance Dashboard Overview
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: start_time
          description: Start time for the query, accepts timestamp epoch UTC
        - schema:
            type: string
          in: query
          name: end_time
          description: End time for the query, accepts timestamp epoch UTC
      requestBody:
        $ref: '#/components/requestBodies/ComplianceResultsOverviewRequestBody'
      tags:
        - ComplianceStats
  /v1/orgs/{org}/projects/{project}/compliance-stats/checks:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Fetch Compliance Result Stats By Compliance Checks
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/ComplianceChecksStatsResponse'
        '500':
          description: Internal Server Error
      operationId: getComplianceResultStatsByComplianceChecks
      x-stoplight:
        id: 5jio4bts674f8
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: start_time
          description: Start time for the query, accepts timestamp
        - schema:
            type: string
          in: query
          name: end_time
          description: End time for the query, accepts timestamp
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Order2'
        - schema:
            type: string
          in: query
          name: sort
          description: 'Parameter on the basis of which sorting is done, known sorts: failed'
      requestBody:
        $ref: '#/components/requestBodies/FetchComplianeResultChecksStatsRequestBody'
      tags:
        - ComplianceStats
  /v1/orgs/{org}/projects/{project}/code-repos/summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: GET All Repositories Summary
      tags:
        - codeRepo
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RepositoriesSummary'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getAllRepositoriesSummary
      x-stoplight:
        id: 6i10swrdmen5o
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/ci-cd/summary:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: GET All CI/CD Workflows Summary
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CICDWorkflowSummary'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getCICDWorkflowsSummary
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      x-stoplight:
        id: mwxtnz07xmd0n
      tags:
        - CICDWorkflows
      description: >-
        Get all CI/CD Workflow Summary including Number of workflows and
        Compliance evaluations for all workflows.
  /v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/overview:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: workflow
        in: path
        required: true
        description: CI/Cd Workflow ID
    get:
      summary: Get CI/CD Workflow Overview
      responses:
        '200':
          $ref: '#/components/responses/CICDOverviewResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getCICDOverview
      x-stoplight:
        id: s6xgds8h03apk
      description: This API provides overview details of a Ci/Cd Workflow.
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      tags:
        - CICDWorkflows
  /v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/rules/evalution-trend:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: workflow
        in: path
        required: true
        description: CICD Workflow ID
      - $ref: '#/components/parameters/AccountHeader6'
    get:
      summary: GET CI/CD Rules Evaluation Trend
      tags:
        - CICDWorkflows
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request - Invalid input parameters
        '401':
          description: Unauthorized - Authentication credentials are missing or invalid
        '403':
          description: Forbidden - User doesn't have permission to access this resource
      operationId: getCICDRulesEvaluationTrend
      x-stoplight:
        id: 8bt8ww6kmivsz
      security:
        - x-api-key: []
      parameters:
        - schema:
            type: integer
            format: int64
          in: query
          name: start_time
          description: Start Time
          required: true
        - schema:
            type: integer
            format: int64
          in: query
          name: end_time
          description: End Time
  /v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-breakdown/artifacts:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Compliance Results Stats Overview Evaluation Breakdown Artifacts
      tags:
        - ComplianceStats
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: >-
            #/components/responses/ComplianceResultsEvaluationBreakdownByArtifactsResponse
        '500':
          description: Internal Server Error
      operationId: postComplianceResultStatsEvaluationBreakdownArtifactType
      x-stoplight:
        id: 2m8yg1vqxn5ya
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: start_time
        - schema:
            type: string
          in: query
          name: end_time
      requestBody:
        $ref: >-
          #/components/requestBodies/ComplianceResultsEvaluationBreakdownByArtifactsRequest
  /v1/integrations/config:
    get:
      summary: GET Integrations Config
      tags:
        - integrationConfig
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationConfig'
      operationId: getIntegrationsConfig
      x-stoplight:
        id: vww4hg8qec9oa
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
            default: GITHUB
            enum:
              - GITHUB
          in: query
          name: type
          description: Integration Type
          required: true
  /gateway/ssca-manager/v1/repository:
    parameters: []
    delete:
      summary: Delete Repositories from Repo Listing Page
      tags:
        - Delete Repositories
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: deleteRepositories
      x-stoplight:
        id: o8kj31dcokuhk
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: DeleteRepositoriesRequestBody
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteRepositoriesRequestBody'
  /v1/orgs/{org}/projects/{project}/artifacts/{artifact}/chain-of-custody:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    get:
      summary: ArtifactV2 Chain Of Custody
      tags:
        - artifactListing
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ArtifactChainOfCustody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactV2ChainOfCustody
      x-stoplight:
        id: nd9bu65d75xsl
      description: get artifactV2 chain of custody
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v2/orgs/{org}/projects/{project}/artifacts/{artifact}/chain-of-custody:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/Artifact'
    get:
      summary: Artifact Chain Of Custody V2
      tags:
        - artifactListingV2
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ArtifactChainOfCustodyV2'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getArtifactChainOfCustodyV2
      x-stoplight:
        id: nd9bu65d75xsl
      description: get artifactV2 chain of custody
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/compliance-stats/evaluation-trend:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Compliance Evaluation Trend API
      responses:
        '200':
          $ref: '#/components/responses/ComplianceEvaluationTrendResponse'
      operationId: get-compliance-evaluation-trends
      security:
        - x-api-key: []
      x-stoplight:
        id: 4yhrxle7b01jd
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - schema:
            type: string
          in: query
          name: start_time
          description: start time in epoch timestamp ms
        - schema:
            type: string
          in: query
          name: end_time
          description: end time in epoch timestamp ms
        - schema:
            type: string
          in: query
          name: aggregation_period
          description: time in epoch timestamp depicting the window length in ms
      requestBody:
        $ref: '#/components/requestBodies/ComplianceEvaluationTrendRequest'
      tags:
        - ComplianceStats
  /v1/version:
    get:
      summary: Get SSCA Manager Version
      tags:
        - version
      responses:
        '200':
          $ref: '#/components/responses/VersionResponseBody'
      operationId: getVersion
      x-stoplight:
        id: wbg2mgvs327ho
      security: []
      parameters: []
  /v1/orgs/{org}/projects/{project}/ci-cd/harness/pipeline/{pipeline-id}:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: pipeline-id
        in: path
        required: true
        description: pipeline identifier
    get:
      summary: GET harness pipeline information
      tags:
        - CICDWorkflows
      responses:
        '200':
          $ref: '#/components/responses/CICDHarnessPipelineResponseBody'
      operationId: getHarnessPipelineYaml
      security:
        - x-api-key: []
      x-stoplight:
        id: xrl53lnewor3z
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/integration/harness-pipeline:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    get:
      summary: Get Harness Pipeline Integration
      tags:
        - integration
      responses:
        '200':
          $ref: '#/components/responses/HarnessPipelineIntegrationResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getHarnessPipelineIntegration
      x-stoplight:
        id: d42j4z2o5lf4f
      description: Get Harness Pipeline Integration
      security:
        - x-api-key: []
      x-internal: true
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
  /v1/orgs/{org}/projects/{project}/ci-cd/{workflow}/plugins:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - schema:
          type: string
        name: workflow
        in: path
        required: true
        description: workflow ID
    get:
      summary: Fetch List of plugins for a workflow
      tags:
        - CICDWorkflows
      security:
        - x-api-key: []
      responses:
        '200':
          $ref: '#/components/responses/CICDWorklfowPluginsResponseBody'
        '500':
          description: Internal Server Error
      operationId: fetchPluginsForWorkflow
      x-stoplight:
        id: 1v19c850aossa
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
        - $ref: '#/components/parameters/Page2'
        - $ref: '#/components/parameters/Limit6'
        - $ref: '#/components/parameters/Order2'
        - schema:
            type: string
            enum:
              - name
            default: name
          in: query
          name: sort
          description: sort order
        - schema:
            type: string
          in: query
          name: search_term
          description: plugin name search
  /v1/compliance-standards/filters:
    get:
      summary: Compliance Standards Filters
      tags:
        - ComplianceStandardsFilter
      responses:
        '200':
          description: Supported Compliance Standards Filters
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ComplianceStandardsFilterEntity'
                  tags:
                    - ComplianceStandardsFilterEntity
              examples:
                Example 1:
                  value:
                    - scan_type: CICD
                      integrations:
                        - GITHUB
                        - HARNESS
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: getComplianceStandardsFilters
      x-stoplight:
        id: pprn01ssu6zvd
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
  /v1/orgs/{org}/projects/{project}/signing/{signatureId}/save-signature:
    post:
      summary: Save Signature
      tags:
        - ArtifactSigning
      security:
        - x-api-key: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    x-stoplight:
                      id: vtyhvs8qnepzx
                  response:
                    $ref: '#/components/schemas/PluginResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveSignature
      x-stoplight:
        id: is0kq4v50g4i9
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: SaveSignatureRequestBody
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SaveSignatureRequestBody'
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/SignatureId'
  /v1/orgs/{org}/projects/{project}/signing/{signatureId}/save-integrity-verification:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
      - $ref: '#/components/parameters/SignatureId'
    post:
      summary: Save Integrity Verification
      tags:
        - ArtifactSigning
      security:
        - x-api-key: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    x-stoplight:
                      id: kfdang5pcb2x7
                  response:
                    $ref: '#/components/schemas/PluginResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveIntegrityVerification
      x-stoplight:
        id: ltk4b3mciohbc
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: SaveIntegrityVerificationRequestBody
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SaveIntegrityVerificationRequestBody'
  /v1/orgs/{org}/projects/{project}/signing/upload-signature:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Upload Signature
      tags:
        - ArtifactSigning
      security:
        - x-api-key: []
      responses:
        '201':
          description: Created
          content: {}
      operationId: uploadSignature
      x-stoplight:
        id: cgr50robzhdqd
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        description: UploadSignatureRequestBody
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                execution_context:
                  $ref: '#/components/schemas/ExecutionDetail'
                payload:
                  type: string
                  x-stoplight:
                    id: vhvbeq9asg6zf
                  format: binary
                signature:
                  type: string
                  x-stoplight:
                    id: 2vz1j7z1z7j5z
                  format: binary
                signature_id:
                  type: string
                  x-stoplight:
                    id: uqm4wyjmscj99
  /v1/orgs/{org}/projects/{project}/signing/download-signature:
    parameters:
      - $ref: '#/components/parameters/OrgParam1'
      - $ref: '#/components/parameters/ProjectParam1'
    post:
      summary: Download Signature
      tags:
        - ArtifactSigning
      security:
        - x-api-key: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DownloadSignatureResponseBody'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: downloadSignature
      x-stoplight:
        id: yek55xhhnj1y4
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ArtifactModelPipeline'
  /gateway/ssca-manager/v1/ssca-config/pipeline-infra:
    post:
      summary: Save SPM Pipeline Infra Configs
      operationId: savePipelineInfraConfig
      tags:
        - PipelineInfraConfig
      responses:
        '200':
          description: Shared Response
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '500':
          description: Internal Server Error
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      requestBody:
        $ref: '#/components/requestBodies/PipelineInfraConfigRequestBody'
      x-internal: false
  /v1/ssca-config/integrations:
    post:
      summary: Configure your scan frequency
      tags:
        - PipelineInfraConfig
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      operationId: saveIntegrationConfig
      x-internal: false
      x-stoplight:
        id: ayp05ppewni05
      parameters:
        - $ref: '#/components/parameters/AccountHeader6'
      security:
        - x-api-key: []
      requestBody:
        description: Save Integration Config Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IntegrationConfigRequestBody'
  /v1/idp-environments:
    post:
      summary: Create Compile And Execute Environment
      description: Create environment in catalog, compiles it and then finally execute it.
      tags:
        - Environment
      responses:
        '200':
          description: OK
      operationId: create-compile-and-execute-environment
      x-stoplight:
        id: ve9qj9hgiro5a
      x-internal: false
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentProxyCreateRequest'
    parameters: []
  /v1/idp-environments/{environment-id}:
    parameters:
      - schema:
          type: string
        name: environment-id
        in: path
        required: true
    put:
      summary: Update Compile And Execute Environment
      description: Update environment in catalog, compiles it and then finally execute it.
      tags:
        - Environment
      responses:
        '200':
          description: OK
      operationId: update-compile-and-execute-environment
      x-stoplight:
        id: j5gxzay5ncy66
      x-internal: false
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentProxyUpdateRequest'
    delete:
      summary: Delete Environment
      description: Delete any environment that is no longer active
      tags:
        - Environment
      responses:
        '200':
          description: OK
      operationId: delete-environment
      x-stoplight:
        id: g5au3w8dvrhxk
      security:
        - x-api-key: []
      parameters:
        - $ref: '#/components/parameters/AccountHeader'
        - $ref: '#/components/parameters/OrgIdentifierQueryParam'
        - $ref: '#/components/parameters/ProjectIdentifierQueryParam'
components:
  schemas:
    GovernanceStatus:
      type: string
      title: GovernanceStatus
      x-stoplight:
        id: kh0hxoiqon3so
      enum:
        - WARNING
        - ERROR
        - PASS
      description: Governance Status
    Policy:
      title: Policy
      x-stoplight:
        id: 96ka3iug8rbc4
      type: object
      properties:
        identifier:
          type: string
          description: Policy Identifier
        name:
          type: string
          description: Policy Name
        org:
          type: string
          description: Organization identifier where the Policy is defined
        project:
          type: string
          description: Project Identifier where the Policy is defined
        evaluation_error:
          type: string
          description: Error message in Policy Evaluation
        deny_messages:
          type: array
          description: Deny messages
          items:
            type: string
        status:
          $ref: '#/components/schemas/GovernanceStatus'
      description: Contains Details about Policy
    PolicySet:
      title: PolicySet
      x-stoplight:
        id: lxrtpc1yji0pm
      type: object
      properties:
        identifier:
          type: string
          description: Identifer of the Policy Set
        name:
          type: string
          description: Name of the Policy Set
        org:
          type: string
          description: Organization Identifier where the Policy Set is defined
        project:
          type: string
          description: Project Identifier where the Policy Set is defined
        deny_messages:
          type: array
          description: Deny messages
          items:
            type: string
        status:
          $ref: '#/components/schemas/GovernanceStatus'
        policies:
          type: array
          description: List of policies defined inside Policy Set
          items:
            $ref: '#/components/schemas/Policy'
      description: Contains Policy Set Detail
    GovernanceMetadata:
      title: GovernanceMetadata
      x-stoplight:
        id: 05qhnkvljwzzm
      description: Governace Error Details
      x-discriminator-value: GovernanceMetadata
      allOf:
        - $ref: '#/components/schemas/ErrorMetadata'
        - type: object
          properties:
            deny:
              type: boolean
              description: >-
                Indicate whether the action is denied or not based on Governance
                rules
            message:
              type: string
              description: Governance Message
            status:
              $ref: '#/components/schemas/GovernanceStatus'
            policy_sets:
              type: array
              items:
                $ref: '#/components/schemas/PolicySet'
    TestErrorMetadata:
      title: TestErrorMetadata
      x-discriminator-value: TestErrorMetadata
      x-stoplight:
        id: mgogkf26yt2ka
      description: Test Error Metadata
      allOf:
        - $ref: '#/components/schemas/ErrorMetadata'
        - type: object
          properties:
            test:
              type: string
    ErrorMetadata:
      title: ErrorMetadata
      x-stoplight:
        id: 344dmnhe1c5kt
      discriminator:
        propertyName: type
        mapping:
          GovernanceMetadata: '#/components/schemas/GovernanceMetadata'
          TestErrorMetadata: '#/components/schemas/TestErrorMetadata'
      description: Contains more details about the error
      type: object
      properties:
        type:
          type: string
          enum:
            - GovernanceMetadata
            - TestErrorMetadata
      required:
        - type
    FieldError:
      title: FieldError
      x-stoplight:
        id: ahdrlp251yecr
      type: object
      properties:
        field_name:
          type: string
          description: Name of the field
        message:
          type: string
          description: Error message
      description: Contains Field-wise error detail
    ErrorResponse:
      title: ErrorResponse
      x-stoplight:
        id: vn5jzgz2umbw0
      type: object
      description: Contains information about the error
      properties:
        message:
          type: string
          description: Error Message
        code:
          type: string
          enum:
            - RESOURCE_NOT_FOUND
            - INVALID_ARGUMENT
            - ENTITY_NOT_FOUND
          description: Error code
        errors:
          type: array
          description: Contains field-wise error detail
          items:
            $ref: '#/components/schemas/FieldError'
        error_metadata:
          $ref: '#/components/schemas/ErrorMetadata'
    RolesResponse:
      title: RolesResponse
      x-stoplight:
        id: q6oq3jxkd2who
      type: object
      description: Role Response Model
      x-examples:
        example-role:
          identifier: example_role
          name: Example_Role
          permissions:
            - core_resource_view
          allowed_scope_levels:
            - account
          description: This is an Example Role
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          scope:
            account: sample_account
            org: sample_organization
            project: sample_project
          created: 1234567890
          updated: 1234567890
          harness_managed: true
      properties:
        identifier:
          type: string
          description: Role Identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Role Name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        permissions:
          type: array
          description: Permissions for this Role.
          uniqueItems: true
          items:
            type: string
        allowed_scope_levels:
          type: array
          description: The Scope levels at which this Role can be used.
          uniqueItems: true
          items:
            type: string
            enum:
              - account
              - organization
              - project
        description:
          type: string
          description: Role description
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Role tags
          maxProperties: 128
        scope:
          $ref: '#/components/schemas/RoleScope'
        created:
          type: integer
          description: Creation timestamp for Role.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Role.
          format: int64
        harness_managed:
          type: boolean
          description: >-
            This indicates if this Role is managed by Harness or not. If true,
            Harness can manage and modify this Role.
      required:
        - identifier
        - name
    CreateRoleRequest:
      title: CreateRoleRequest
      x-stoplight:
        id: z8g6ol73nsqjs
      type: object
      description: Role request body
      x-examples:
        role-request:
          identifier: example_role
          name: Example_Role
          permissions:
            - core_view
          description: This is an Example Role
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
      properties:
        identifier:
          type: string
          minLength: 1
          maxLength: 128
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Role identifier
        name:
          type: string
          minLength: 1
          maxLength: 128
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          description: Role name
        permissions:
          type: array
          uniqueItems: true
          description: List of the permission identifiers.
          items:
            type: string
        description:
          type: string
          maxLength: 1024
          description: Role description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Role tags
      required:
        - identifier
        - name
    RoleScope:
      title: Scope
      x-stoplight:
        id: w8j3bc9323bxb
      type: object
      description: Scope of the Role
      properties:
        account:
          type: string
          description: Account identifier
        org:
          type: string
          description: Organization identifier
        project:
          type: string
          description: Project identifier
      x-examples:
        example-1:
          account: sample_account
          org: sample_organization
          project: sample_project
    RoleAssignment:
      title: RoleAssignment
      type: object
      description: Role assignment request model
      properties:
        identifier:
          type: string
          description: Role assignment identifier
        resource_group:
          type: string
          description: Resource group name
        role:
          type: string
          description: Role identifier
        roleReference:
          $ref: '#/components/schemas/RoleReference'
        principal:
          $ref: '#/components/schemas/Principal'
        disabled:
          type: boolean
          description: Role assignment is disabled or not
        managed:
          type: boolean
          description: Role assignment is managed or not
      required:
        - identifier
        - resource_group
        - role
        - principal
    Principal:
      title: Principal
      type: object
      description: Role assignment principal
      properties:
        scope_level:
          type: string
          description: Principal scope level
        identifier:
          type: string
          description: Principal identifier
        type:
          type: string
          enum:
            - USER
            - USER_GROUP
            - SERVICE_ACCOUNT
          description: Principal type
      required:
        - identifier
        - type
    RoleReference:
      title: RoleReference
      type: object
      description: Role referenced in role assignment
      properties:
        scope_level:
          type: string
          description: Role scope level
        identifier:
          type: string
          description: Role identifier
      required:
        - scope_level
        - identifier
    RoleAssignmentResponse:
      title: RoleAssignmentResponse
      type: object
      description: Role assignment response model
      properties:
        role-assignment:
          $ref: '#/components/schemas/RoleAssignment'
        created:
          type: integer
          description: Creation timestamp for Role.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Role.
          format: int64
        harness_managed:
          type: boolean
          description: Is harness managed
    PublicAccessRequest:
      title: PublicAccessRequest
      x-stoplight:
        id: iwewenxaom066
      type: object
      description: Request to mark a resource as public
      properties:
        resource_identifier:
          type: string
          description: Identifier of the resource
        resource_type:
          type: string
          description: Type of the resource.
        resource_scope:
          $ref: '#/components/schemas/Scope'
      required:
        - resource_identifier
        - resource_type
        - resource_scope
    PublicAccessCheckRequest:
      title: PublicAccessCheckRequest
      type: object
      description: Request to check if given resources are public or not
      x-stoplight:
        id: 2fa1394cf970a
      properties:
        resource_identifiers:
          type: array
          description: List of resource identifiers
          items:
            type: string
        resource_type:
          type: string
          description: Type of the resource.
        resource_scope:
          $ref: '#/components/schemas/Scope'
      required:
        - resource_identifiers
        - resource_type
        - resource_scope
      x-examples:
        Example 1:
          resource_identifiers:
            - pipelineIdentifier1
            - pipelineIdentifier2
          resource_type: PIPELINE
          resource_scope:
            account: ACCOUNT_ID
            org: ORG_ID
            project: PROJECT_ID
    Scope:
      title: Scope
      x-stoplight:
        id: 5ozno3ho0k6r7
      type: object
      description: Scope of the Resource
      properties:
        account:
          type: string
          description: Account Identifier
        org:
          type: string
          description: Org Identifier
        project:
          type: string
          description: Project Identifier
      required:
        - account
    RoleRequest:
      title: RoleRequest
      x-stoplight:
        id: c3e929c83d0fd
      type: object
      x-internal: false
      description: Request to analyze policies based on Role details
      properties:
        identifier:
          type: string
          description: Role identifier
        scope_level:
          type: string
          description: >-
            Scope level at which role is defined. This can be from query scope
            level or parent scope level. 
    Resource:
      title: Resource
      x-stoplight:
        id: t79jjwaf9icna
      type: object
      description: >-
        Request to analyze access policies based on Resource details. Resource
        scope can be provided from query scope or its child scope
      x-internal: false
      properties:
        identifier:
          type: string
          description: Identifier of resource in given scope
        type:
          type: string
          description: Type of resource in a given scope
        attribute:
          type: object
          additionalProperties:
            type: string
          description: >-
            Resource attribute such as "type" in case of Environment or
            Connector
        scope:
          $ref: '#/components/schemas/Scope'
    ResourceGroupResponse:
      type: object
      x-examples:
        Example 1:
          identifier: string
          name: string
      x-internal: false
      title: ResourceGroupResponse
      description: >-
        Resource Group details which is assigned along with role to provide
        access on resources.
      properties:
        identifier:
          type: string
          description: Resource group identifier
        name:
          type: string
          description: Resource group name
    AccessPolicyAnalysisRequest:
      title: AccessPolicyAnalysisRequest
      x-stoplight:
        id: e3t22fn76ryz7
      type: object
      x-internal: false
      description: >-
        Input that accepts parameters based on which access policies will be
        queried within a given scope.
      x-tags:
        - AccessPolicy
      properties:
        query_scope:
          $ref: '#/components/schemas/QueryScopeRequest'
        principal:
          $ref: '#/components/schemas/Principal'
        permission_identifier:
          type: string
          description: Permission identifier for which access policies need to be analysed.
        resource_group_identifier:
          type: string
          description: >-
            Resource group identifiert for which access policies need to be
            analysed.
        role:
          $ref: '#/components/schemas/RoleRequest'
        resource:
          $ref: '#/components/schemas/Resource'
        advance_options:
          $ref: '#/components/schemas/AccessAnalysisAdvanceOptions'
    AccessPolicyAnalysisResponse:
      title: AccessPolicyAnalysisResponse
      x-stoplight:
        id: z0jvavfz25ak4
      type: object
      x-internal: false
      description: >-
        Response that list parameters related to access policy and what type of
        access it provides and to which Principal.
      properties:
        role_assignment:
          $ref: '#/components/schemas/RoleAssignmentMetaData'
        principal:
          $ref: '#/components/schemas/PrincipalResponse'
        resource_group:
          $ref: '#/components/schemas/ResourceGroupResponse'
        role:
          $ref: '#/components/schemas/RoleResponse'
        permission:
          $ref: '#/components/schemas/Permission'
        resource:
          $ref: '#/components/schemas/Resource'
    PrincipalResponse:
      title: PrincipalResponse
      x-stoplight:
        id: 673d44eaneumv
      type: object
      description: Principal for which role assignment is created
      x-internal: false
      properties:
        identifier:
          type: string
          description: Principal Identifier
        name:
          type: string
          description: Principal Name
        type:
          type: string
          description: Principal type
        scope_level:
          type: string
          description: Scope of Principal
      required:
        - identifier
        - type
    AccessAnalysisAdvanceOptions:
      title: AccessAnalysisAdvanceOptions
      x-stoplight:
        id: xlq5y89mztz6k
      type: object
      description: Advance Options to control the output of a given query
      x-internal: false
      properties:
        expand_role:
          type: boolean
          description: True, if response should list all permissions inside role.
          default: false
        expand_resource_group:
          type: boolean
          description: True, if response should list all resources inside a resource group.
          default: false
        expand_user_group:
          type: boolean
          description: True, if response should list all users inside a user group.
          default: false
    AccessPolicyAnalysisResponseWrapper:
      title: AccessPolicyAnalysisResponseWrapper
      x-stoplight:
        id: avjt5ezdvhxfb
      type: object
      description: This is the view of output for policy analyzer query.
      x-internal: false
      properties:
        access_policy_analysis_response:
          type: array
          items:
            $ref: '#/components/schemas/AccessPolicyAnalysisResponse'
    RoleAssignmentMetaData:
      title: RoleAssignmentMetaData
      x-stoplight:
        id: 9cdu46qqlkjov
      type: object
      x-internal: false
      properties:
        scope:
          $ref: '#/components/schemas/Scope'
        role_assignment_id:
          type: string
          description: Role assignment Identifier
        principal:
          $ref: '#/components/schemas/PrincipalResponse'
      required:
        - scope
        - role_assignment_id
      description: >-
        This contains Role Assignment details and to which Principal this Role
        Assignment is assigned.
    Permission:
      title: Permission
      x-stoplight:
        id: b1o4qt6tco3qj
      type: object
      x-internal: false
      description: Permission details which are assigned via given role assignment
      properties:
        identifier:
          type: string
          description: Permisision identifier
        name:
          type: string
          description: Permission Name
    QueryScopeRequest:
      title: QueryScopeRequest
      x-stoplight:
        id: 66hcxma97s02d
      type: object
      description: >-
        This includes details about the scope for which policies should be
        analysed
      x-internal: false
      properties:
        filter:
          type: string
          enum:
            - INCLUDING_CHILD_SCOPE
            - EXCLUDING_CHILD_SCOPE
          default: EXCLUDING_CHILD_SCOPE
          description: >-
            Filter provide a way of either selecting ONLY specified scope or
            also include its child scopes.
        scope:
          $ref: '#/components/schemas/Scope'
        include_access_policies_from_parent_scope:
          type: boolean
          default: false
    PublicAccessCheckResponse:
      title: PublicAccessCheckResponse
      x-stoplight:
        id: fh5hfwc6y1u7p
      type: object
      description: >-
        This contains list of resources along with information if they are
        public or not
      properties:
        resource_type:
          type: string
          description: Resource Type
        resource_scope:
          $ref: '#/components/schemas/Scope'
        public_access_list:
          type: array
          items:
            $ref: '#/components/schemas/PublicAccessListResponse'
      x-examples:
        Example 1:
          resource_type: PIPELINE
          resource_scope:
            account: ACCOUNT_ID
            org: ORG_ID
            project: PROJECT_ID
          public_access_list:
            - resource_identifier: pipelineIdentifier1
              public: true
            - resource_identifier: pipelineIdentifier2
              public: false
    PublicAccessListResponse:
      title: PublicAccessListResponse
      x-stoplight:
        id: 8mepgxbhco75c
      type: object
      properties:
        resource_identifier:
          type: string
          description: Identifier of a resource
        public:
          type: boolean
          description: If true, then resource is marked for public access
    RoleResponse:
      title: RoleResponse
      x-stoplight:
        id: 1bd6pmusgc535
      type: object
      description: Role details
      properties:
        identifier:
          type: string
          description: Role Identifier
        name:
          type: string
          description: Role Name
        scope_level:
          type: string
          description: Scope at which Role is created
      x-internal: false
    UserWithAccessEntity:
      x-stoplight:
        id: 18na0szgoztrr
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: xauaeb4nf75kj
        email:
          type: string
          x-stoplight:
            id: ux96f5g61dxyw
        isServiceAccount:
          type: boolean
          x-stoplight:
            id: jlf10s4usvuco
        lastLogin:
          type: integer
          x-stoplight:
            id: hrgto6a4d1ywo
          format: int64
        orgs:
          type: array
          x-stoplight:
            id: f3nwrt8ii1jp2
          items:
            x-stoplight:
              id: mareqvqg10k1n
            type: string
        projects:
          type: array
          x-stoplight:
            id: 0364et044xhlz
          items:
            x-stoplight:
              id: ejmjxhbs0o3pw
            type: string
        userGroups:
          type: array
          x-stoplight:
            id: 0mqgc5uipwf3m
          items:
            x-stoplight:
              id: 3w6mw72cv8l2f
            type: string
      title: ''
    UpdateAccessRequest:
      x-stoplight:
        id: 034njhrzl7d3s
      type: object
      properties:
        moduleType:
          $ref: '#/components/schemas/ModuleType'
          x-stoplight:
            id: qf4xwys87p96r
        userGroupsToGrant:
          type: array
          x-stoplight:
            id: hkvp36485q8z9
          items:
            $ref: '#/components/schemas/UpdateRequestEntity'
            x-stoplight:
              id: 644cajjlgngr6
        userGroupsToRevoke:
          type: array
          x-stoplight:
            id: 8yuqucw64ynbu
          items:
            $ref: '#/components/schemas/UpdateRequestEntity'
            x-stoplight:
              id: gnk0hv0vee9ya
        serviceAccountsToGrant:
          type: array
          x-stoplight:
            id: juxwg5jsb617v
          items:
            $ref: '#/components/schemas/UpdateRequestEntity'
            x-stoplight:
              id: 89122qtdieg8d
        serviceAccountsToRevoke:
          type: array
          x-stoplight:
            id: 7f58v0g2pocu4
          items:
            $ref: '#/components/schemas/UpdateRequestEntity'
            x-stoplight:
              id: z6im6hqs9gvhh
    UpdateRequestEntity:
      x-stoplight:
        id: 9atlba00qrn2i
      type: object
      required:
        - identifier
        - accountIdentifier
      properties:
        identifier:
          type: string
          x-stoplight:
            id: san8yczoiztq8
        accountIdentifier:
          type: string
          x-stoplight:
            id: j0209h31uepks
        org:
          type: string
          x-stoplight:
            id: w38v242vrxl0k
        project:
          type: string
          x-stoplight:
            id: a7jm4l0ps81n0
      title: ''
    PrometheusQueryRequest:
      type: object
      properties:
        query:
          type: string
          description: >-
            Prometheus query to fetch metrics, with specific parameters and time
            range modifiers
        startTime:
          type: integer
          format: int64
          description: Start time for the data query in epoch seconds
        endTime:
          type: integer
          format: int64
          description: End time for the data query in epoch seconds
        accountId:
          type: string
          description: Unique identifier for the user's account
        connectorRef:
          type: string
          description: connector reference
        step:
          type: string
          default: 60s
          description: Step parameter for prometheus query
        type:
          type: string
          description: Type of the data query or the data being fetched
      required:
        - query
        - startTime
        - endTime
        - connectorInfoDTO
        - type
    LicenseUsageActivityFilterPropertiesDTO:
      type: object
      properties:
        organizationIdentifiers:
          type: array
          items:
            type: string
          description: >-
            This is the list of organization Identifiers on which the filter
            will be applied.
        projectIdentifiers:
          type: array
          items:
            type: string
          description: >-
            This is the list of project Identifiers on which the filter will be
            applied.
        pipelineIdentifiers:
          type: array
          items:
            type: string
          description: >-
            This is the list of pipeline Identifiers on which the filter will be
            applied.
        resourceClasses:
          type: array
          items:
            type: string
          description: >-
            This is the list of resource classes on which the filter will be
            applied.
        moduleType:
          $ref: '#/components/schemas/ModuleType'
    LicenseUsageActivity:
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
          description: Timestamp for the activity response
        credits:
          type: array
          items:
            $ref: '#/components/schemas/CreditUsage'
      required:
        - timestamp
        - credits
    PrometheusMetricsResponse:
      type: object
      additionalProperties:
        type: object
    CreditUsage:
      type: object
      properties:
        totalCredits:
          type: integer
          description: Total number of credits used
        ciOsType:
          type: string
          description: Type of CI/OS
      required:
        - totalCredits
        - ciOsType
    CreditOverUsage:
      type: object
      properties:
        overUsageCount:
          type: integer
          description: Total number of overuse credits
        moduleType:
          type: string
          description: Module Type for which the credits' overusage is being captured
      required:
        - overUsageCount
        - moduleType
    LicenseTypeResponse:
      description: Type of Licenses that can be provisioned for an account
      type: object
      x-stoplight:
        id: 59b1960a8fa10
      properties:
        licenseType:
          type: string
          enum:
            - Dev360
            - DevopsEssentials
            - Default
    DevopsEssentialsResponse:
      description: Devops Essentials response model
      type: object
      properties:
        devops_license:
          $ref: '#/components/schemas/DevopsEssentialsDTO'
        devops_essentials_metrics:
          type: array
          items:
            $ref: '#/components/schemas/DevopsEssentialsMetricsDTO'
    DevopsEssentialsDTO:
      description: Devops Essentials response model
      type: object
      properties:
        namedUser:
          type: integer
          description: Number of named users provisioned for a given account
          format: int64
        totalAvailable:
          type: integer
          description: Maximum named users that can be provisioned on an account
        licenseExpiry:
          type: integer
          description: Expiry timestamp of the license
          format: int64
    DevopsEssentialsMetricsDTO:
      title: DevopsEssentialsMetricsDTO
      type: object
      properties:
        moduleType:
          type: string
        totalAvailable:
          type: integer
          format: int64
          description: Maximum named users that can be provisioned on an account
        usage:
          $ref: '#/components/schemas/DevopsEssentialsConsumption'
        applied:
          $ref: '#/components/schemas/DevopsEssentialsConsumption'
        remaining:
          $ref: '#/components/schemas/DevopsEssentialsRemaining'
    DevopsEssentialsConsumption:
      title: DevopsEssentialsConsumption
      type: object
      description: Devops Essentials consumption Model
      properties:
        prepayUnitsConsumed:
          type: integer
          description: Number of Prepay units consumed
        prepayUnitsCost:
          type: number
          format: double
          description: Cost of the prepay units
        postpayUnitsConsumed:
          type: integer
          description: Number of Postpay units consumed
        postpayUnitsCost:
          type: number
          format: double
          description: Cost of the postpay units
        totalCharges:
          type: number
          format: double
          description: Total charges of all units
    DevopsEssentialsRemaining:
      title: DevopsEssentialsRemaining
      type: object
      description: Devops Essentials Remaining metrics Model
      properties:
        prepayUnitsRemaining:
          type: integer
          description: Number of Prepay units consumed
        prepayUnitsCost:
          type: number
          format: double
          description: Cost of the prepay units
        postpayUnitsRemaining:
          type: integer
          description: Number of Postpay units consumed
        postpayUnitsCost:
          type: number
          format: double
          description: Cost of the postpay units
    Service:
      type: object
      x-examples:
        example-1:
          account: sample_account
          identifier: example_service
          org: sample_organization
          project: sample_project
          name: Example_service
          description: This is a example service
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            service:
              name: "Example_service"
              identifier: "example_service"
              tags: {}
      description: This is the Service entity defined in Harness
      title: Service
      properties:
        account:
          type: string
          description: Account Identifier
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier of the Service Request.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Organization Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Service Request.
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the entity
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Service tags
          maxProperties: 128
        yaml:
          type: string
          description: Yaml related to service
        harness_version:
          type: string
          description: version of harness yaml
      required:
        - identifier
        - name
    Environment:
      type: object
      x-examples:
        example-1:
          account: sample_account
          identifier: example_environment
          org: sample_organization
          project: sample_project
          name: Example_environment
          description: This is a example environment
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            environment:
              name: "Example_environment"
              identifier: "example_environment"
              tags: {}
      description: This is the Environment entity defined in Harness
      title: Environment
      properties:
        account:
          type: string
          description: Account Identifier
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier of the Environment Request.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Organization Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Environment Request.
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the entity
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Environment tags
          maxProperties: 128
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: Yaml related to environment
      required:
        - identifier
        - name
      x-stoplight:
        id: t0gj2z2q9pwsn
    Infrastructure:
      type: object
      x-examples:
        example-1:
          account: sample_infrastructure
          identifier: example_infrastructure
          org: sample_organization
          project: sample_project
          name: Example_environment
          description: This is a example infrastructure
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            environment:
              name: "Example_infrastructure"
              identifier: "example_infrastructure"
              tags: {}
      description: This is the Infrastructure entity defined in Harness
      title: Infrastructure
      properties:
        account:
          type: string
          description: Account Identifier
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier of the Environment Request.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Organization Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Infrastructure.
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        environment:
          type: string
          description: Name of the parent Environment.
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        type:
          $ref: '#/components/schemas/InfrastructureType'
        description:
          type: string
          description: Description of the entity
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Infrastructure tags
          maxProperties: 128
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: Yaml related to infrastructure
      required:
        - identifier
        - name
        - type
    FavoriteDTO:
      type: object
      x-examples:
        example-1:
          org: sample_organization
          project: sample_project
          user_id: example_userId
          module: example_module
          resource_type: example_resourceType
          resource_id: example_resourceId
      description: This is the favorite entity defined in Harness
      title: FavoriteDTO
      properties:
        org:
          type: string
          description: Organization Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        user_id:
          type: string
          description: Identifier of the user.
          minLength: 1
          maxLength: 128
        module:
          $ref: '#/components/schemas/ModuleType'
        resource_type:
          $ref: '#/components/schemas/FavoritesResourceType'
          description: Type of resource
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        resource_id:
          type: string
          description: Resource Identifier of the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 256
    FavoriteResponse:
      type: object
      x-examples:
        example-1:
          FavoriteDTO:
            user_id: example_userId
            org: sample_organization
            project: sample_project
            resource_type: Example_resourceType
            resource_id: This is a example resource
          created: 1234567890
      title: FavoriteResponse
      properties:
        Favorite:
          $ref: '#/components/schemas/FavoriteDTO'
        created:
          type: integer
          format: int64
          description: Creation timestamp for favorite.
    ServiceResponse:
      type: object
      x-examples:
        example-1:
          service:
            account: sample_account
            identifier: example_service
            org: sample_organization
            project: sample_project
            name: Example_service
            description: This is a example service
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
            yaml: |
              service:
                name: "Example_service"
                identifier: "example_service"
                tags: {}
          created: 1234567890
          updated: 1234567890
      description: Default response when a service is returned
      title: ServiceResponse
      properties:
        service:
          $ref: '#/components/schemas/Service'
        created:
          type: integer
          format: int64
          description: Creation timestamp for Service.
        updated:
          type: integer
          format: int64
          description: Last modification timestamp for Service.
    ServiceCreateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_service
          name: Example_service
          description: This is a example service
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            service:
              name: "Example_service"
              identifier: "example_service"
              tags: {}
      title: ServiceCreateRequest
      description: 'Service Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Service
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Service
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the entity
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Service tags
          maxProperties: 128
        yaml:
          type: string
          description: YAML for the Service Request
        harness_version:
          type: string
          description: version of harness yaml
      required:
        - identifier
        - name
    ServiceUpdateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_service
          name: Example_service
          description: This is a example service
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            service:
              name: "Example_service"
              identifier: "example_service"
              tags: {}
      title: ServiceUpdateRequest
      description: 'Service Update Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Service
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Service
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the entity
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Service tags
          maxProperties: 128
        yaml:
          type: string
          description: YAML for the Service Request
        harness_version:
          type: string
          description: version of harness yaml
      required:
        - identifier
        - name
    EnvironmentResponse:
      type: object
      x-examples:
        example-1:
          service:
            account: sample_account
            identifier: example_environment
            org: sample_organization
            project: sample_project
            name: Example_environment
            description: This is a example environment
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
            yaml: |
              service:
                name: "Example_environment"
                identifier: "example_environment"
                tags: {}
          created: 1234567890
          updated: 1234567890
      description: Default response when a environment is returned
      title: EnvironmentResponse
      properties:
        environment:
          $ref: '#/components/schemas/Environment'
        created:
          type: integer
          format: int64
          description: Creation timestamp for environment.
        updated:
          type: integer
          format: int64
          description: Last modification timestamp for environment.
      x-stoplight:
        id: 8wkghgenuyufw
    EnvironmentCreateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_environment
          name: Example_environment
          description: This is a example environment
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            service:
              name: "Example_environment"
              identifier: "example_environment"
              tags: {}
      title: EnvironmentCreateRequest
      description: 'Environment Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Environment
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Environment
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the Environment
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Environment tags
          maxProperties: 128
        type:
          $ref: '#/components/schemas/EnvironmentType'
        color:
          type: string
          description: Environment color
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: YAML for the Environment Request
      required:
        - identifier
        - name
        - type
      x-stoplight:
        id: v1x9is61l27ki
    EnvironmentUpdateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_environment
          name: Example_environment
          description: This is a example environment
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            service:
              name: "Example_environment"
              identifier: "example_environment"
              tags: {}
      title: EnvironmentUpdateRequest
      description: 'Environment Update Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Environment
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Environment
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the Environment
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Environment tags
          maxProperties: 128
        type:
          $ref: '#/components/schemas/EnvironmentType'
        color:
          type: string
          description: Environment color
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: YAML for the Environment Request
      required:
        - identifier
        - name
        - type
      x-stoplight:
        id: stztl057sv571
    InfrastructureResponse:
      type: object
      x-examples:
        example-1:
          infrastructure:
            account: sample_account
            identifier: example_infrastructure
            org: sample_organization
            project: sample_project
            name: Example_infrastructure
            description: This is a example infrastructure
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
            yaml: |
              service:
                name: "Example_infrastructure"
                identifier: "example_infrastructure"
                tags: {}
          created: 1234567890
          updated: 1234567890
      description: Default response when a infrastructure is returned
      title: InfrastructureResponse
      properties:
        infrastructure:
          $ref: '#/components/schemas/Infrastructure'
        created:
          type: integer
          format: int64
          description: Creation timestamp for infrastructure.
        updated:
          type: integer
          format: int64
          description: Last modification timestamp for infrastructure.
    InfrastructureCreateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_infrastructure
          name: Example_infrastructure
          description: This is a example infrastructure
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            infrastructure:
              name: "Example_infrastructure"
              identifier: "example_infrastructure"
              tags: {}
      title: InfrastructureCreateRequest
      description: 'Infrastructure Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Infrastructure
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Infrastructure
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the Infrastructure
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Infrastructure tags
          maxProperties: 128
        type:
          $ref: '#/components/schemas/InfrastructureType'
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: YAML for the Infrastructure Request
      required:
        - identifier
        - name
        - type
        - yaml
    InfrastructureUpdateRequest:
      type: object
      x-examples:
        example-1:
          identifier: example_infrastructure
          name: Example_infrastructure
          description: This is a example infrastructure
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            infrastructure:
              name: "Example_infrastructure"
              identifier: "example_infrastructure"
              tags: {}
      title: InfrastructureUpdateRequest
      description: 'Infrastructure Update Request Body '
      properties:
        identifier:
          type: string
          description: Identifier of the Infrastructure
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name of the Infrastructure
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the Infrastructure
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Infrastructure tags
          maxProperties: 128
        type:
          $ref: '#/components/schemas/InfrastructureType'
        harness_version:
          type: string
          description: version of harness yaml
        yaml:
          type: string
          description: YAML for the Infrastructure Request
      required:
        - identifier
        - name
        - type
        - yaml
    CreateOrganizationRequest:
      type: object
      properties:
        org:
          $ref: '#/components/schemas/Organization'
      required:
        - org
    Organization:
      description: Organization model
      type: object
      properties:
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Organization identifier
          maxLength: 128
        name:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          description: Organization name
          maxLength: 128
        description:
          type: string
          maxLength: 1024
          description: Organization description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Organization tags
      required:
        - identifier
        - name
    ModuleType:
      type: string
      description: Type of Modules
      enum:
        - CD
        - CI
        - CV
        - CF
        - CE
        - STO
        - CORE
        - PMS
        - TEMPLATESERVICE
        - GOVERNANCE
        - CHAOS
        - CET
        - IDP
        - SSCA
        - SEI
        - CODE
        - HAR
    FavoritesResourceType:
      type: string
      enum:
        - CONNECTOR
        - DELEGATE
        - PIPELINE
        - SECRET
        - PROJECT
        - IDPENTITY
        - IDPFLOWS
    EnvironmentType:
      type: string
      enum:
        - PreProduction
        - Production
    InfrastructureType:
      type: string
      enum:
        - KUBERNETES_DIRECT
        - KUBERNETES_GCP
        - KUBERNETES_AZURE
        - PDC
        - SSH_WINRM_AZURE
        - SERVERLESS_AWS_LAMBDA
        - AZURE_WEB_APP
        - SSH_WINRM_AWS
        - CUSTOM_DEPLOYMENT
        - ECS
        - ELASTIGROUP
        - TAS
        - ASG
        - GOOGLE_CLOUD_FUNCTIONS
        - AWS_SAM
        - AWS_LAMBDA
        - KUBERNETES_AWS
        - KUBERNETES_RANCHER
    CreateProjectRequest:
      description: Create project request
      type: object
      properties:
        project:
          $ref: '#/components/schemas/ProjectRequest'
      required:
        - project
    ProjectRequest:
      description: Project model
      type: object
      x-examples:
        example-1:
          identifier: example_project_identifier
          name: example-project-name
          color: '#0063F7'
          modules:
            - CD
          description: This is a example project
          tags:
            property1: value1
            property2: value2
      properties:
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Project identifier
          maxLength: 128
        name:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          description: Project name
          maxLength: 128
        color:
          type: string
          description: Project color
        modules:
          type: array
          maxItems: 1024
          description: List of modules for project
          items:
            $ref: '#/components/schemas/ModuleType'
        description:
          type: string
          maxLength: 1024
          description: Project description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Project tags
      required:
        - identifier
        - name
    Project:
      description: Project model
      type: object
      x-examples:
        example-1:
          identifier: example_project_identifier
          name: example-project-name
          org: example_org_identifier
          color: '#0063F7'
          modules:
            - CD
          description: This is a example project
          tags:
            property1: value1
            property2: value2
      properties:
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Project identifier
          maxLength: 128
        name:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          description: Project name
          maxLength: 128
        org:
          type: string
          description: Organization identifier for the project
        color:
          type: string
          description: Project color
        modules:
          type: array
          maxItems: 1024
          description: List of modules for project
          items:
            $ref: '#/components/schemas/ModuleType'
        description:
          type: string
          maxLength: 1024
          description: Project description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Project tags
      required:
        - identifier
        - name
    ProjectResponse:
      description: Project response model
      type: object
      properties:
        project:
          $ref: '#/components/schemas/Project'
        created:
          type: integer
          format: int64
          description: Creation timestamp for the project
        updated:
          type: integer
          format: int64
          description: Updated timestamp for the project
        isFavorite:
          type: boolean
          description: True if its your favorite project
    OrganizationResponse:
      title: OrganizationResponse
      type: object
      description: Organization response Model
      x-examples:
        example-1:
          org:
            identifier: example_organization
            name: Example Organization
            description: This is an Example Organization
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
          created: 1234567890
          updated: 1234567890
          harness_managed: true
      properties:
        org:
          $ref: '#/components/schemas/Organization'
        created:
          type: integer
          description: Creation timestamp for organization
          format: int64
        updated:
          type: integer
          format: int64
          description: Updated timestamp for organization
        harness_managed:
          type: boolean
          description: >-
            This indicates if this organization is managed by Harness or not. If
            true, Harness can manage and modify this organization.
    UpdateOrganizationRequest:
      description: Update oganization request
      type: object
      properties:
        org:
          $ref: '#/components/schemas/Organization'
      required:
        - org
    GitEntityFindInfoDTO:
      type: object
      description: Details to find Git Entity including Git Sync Config Id and Branch Name.
      properties:
        branch:
          type: string
          description: The branch name.
        yamlGitConfigId:
          type: string
          description: Git Sync Config ID.
        defaultFromOtherRepo:
          type: boolean
          description: If true, return all default entities.
        parentEntityConnectorRef:
          type: string
          description: Connector ref of parent entity if remote.
        parentEntityRepoName:
          type: string
          description: Repo name of parent entity if remote.
        parentEntityAccountIdentifier:
          type: string
          description: Account identifier of parent entity.
        parentEntityOrgIdentifier:
          type: string
          description: Organization identifier of parent entity.
        parentEntityProjectIdentifier:
          type: string
          description: Project identifier of parent entity.
        repoName:
          type: string
          description: Repository name.
    UpdateProjectRequest:
      description: Update project request
      type: object
      properties:
        project:
          $ref: '#/components/schemas/ProjectRequest'
      required:
        - project
    SecretSpec:
      title: SecretSpec
      type: object
      description: Details of the secret defined in Harness
      required:
        - type
      discriminator:
        propertyName: type
        mapping:
          SSHKeyPath: '#/components/schemas/SSHKeyPathSpec'
          SSHKeyReference: '#/components/schemas/SSHKeyReferenceSpec'
          SSHPassword: '#/components/schemas/SSHPasswordSpec'
          SSHKerberosTGTKeyTabFile: '#/components/schemas/SSHKerberosTGTKeyTabFileSpec'
          SSHKerberosTGTPassword: '#/components/schemas/SSHKerberosTGTPasswordSpec'
          SecretFile: '#/components/schemas/SecretFileSpec'
          SecretText: '#/components/schemas/SecretTextSpec'
          WinRmTGTKeyTabFile: '#/components/schemas/WinRmTGTKeyTabFileSpec'
          WinRmTGTPassword: '#/components/schemas/WinRmTGTPasswordSpec'
          WinRmNTLM: '#/components/schemas/WinRmNTLMSpec'
      properties:
        type:
          type: string
          enum:
            - SSHKeyPath
            - SSHKeyReference
            - SSHPassword
            - SSHKerberosTGTKeyTabFile
            - SSHKerberosTGTPassword
            - SecretFile
            - SecretText
            - WinRmTGTKeyTabFile
            - WinRmTGTPassword
            - WinRmNTLM
          description: This specifies the type of secret
    SSHKeyPathSpec:
      title: SSHKeyPath
      x-discriminator-value: SSHKeyPath
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SSHKeyPath
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              description: SSH port
            username:
              type: string
              description: SSH username
            key_path:
              type: string
              description: Path of the key file
            encrypted_passphrase:
              type: string
              description: >-
                This is the passphrase provided while creating the SSH key for
                local encryption
          required:
            - type
            - username
            - key_path
    SSHKeyReferenceSpec:
      title: SSHKeyReference
      x-discriminator-value: SSHKeyReference
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SSHKeyReference
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              description: SSH port
            username:
              type: string
              description: SSH username
            key:
              type: string
              description: SSH key
            encrypted_passphrase:
              type: string
              description: >-
                This is the passphrase provided while creating the SSH key for
                local encryption
          required:
            - type
            - username
    SSHPasswordSpec:
      title: SSHPassword
      x-discriminator-value: SSHPassword
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SSHPassword
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              description: SSH port
            username:
              type: string
              description: SSH username
            password:
              type: string
              description: SSH password
          required:
            - type
            - username
            - password
    SSHKerberosTGTKeyTabFileSpec:
      title: SSHKerberosTGTKeyTabFile
      x-discriminator-value: SSHKerberosTGTKeyTabFile
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SSHKerberosTGTKeyTabFile
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              description: SSH port
            principal:
              type: string
              description: Kerberos principal
            realm:
              type: string
              description: Kerberos realm
            key_path:
              type: string
              description: Kerberos keytab file path
          required:
            - type
    SSHKerberosTGTPasswordSpec:
      title: SSHKerberosTGTPassword
      x-discriminator-value: SSHKerberosTGTPassword
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SSHKerberosTGTPassword
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              description: SSH port
            principal:
              type: string
              description: Kerberos principal
            realm:
              type: string
              description: Kerberos realm
            password:
              type: string
              description: Kerberos password
          required:
            - type
    SecretFileSpec:
      title: SecretFile
      x-discriminator-value: SecretFile
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SecretFile
              description: This specifies the type of secret
            secret_manager_identifier:
              type: string
              description: Identifier of the secret manager used to manage the secret
          required:
            - type
            - secret_manager_identifier
    SecretTextSpec:
      title: SecretText
      x-discriminator-value: SecretText
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - SecretText
              description: This specifies the type of secret
            secret_manager_identifier:
              type: string
              description: Identifier of the secret manager used to manage the secret
            value_type:
              type: string
              enum:
                - Inline
                - Reference
              description: >-
                This has details to specify if the secret value is inline or
                referenced
            value:
              type: string
              description: Value of the Secret
            additional_metadata:
              type: object
              properties:
                values:
                  type: object
              description: Additional metadata of the secret if any exist
          required:
            - type
            - secret_manager_identifier
            - value_type
    WinRmTGTKeyTabFileSpec:
      title: WinRmTGTKeyTabFile
      x-discriminator-value: WinRmTGTKeyTabFile
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - WinRmTGTKeyTabFile
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              default: 5986
              description: WinRm port
            principal:
              type: string
              description: Kerberos principal
            realm:
              type: string
              description: Kerberos realm
            key_path:
              type: string
              description: Keytab file path
            use_ssl:
              type: boolean
              default: true
              description: This is the Kerberos either to use SSL/https
            skip_cert_checks:
              type: boolean
              default: true
              description: This is the Kerberos either to skip certificate checks
            use_no_profile:
              type: boolean
              description: This is the Kerberos powershell runs without loading profile
          required:
            - type
    WinRmTGTPasswordSpec:
      title: WinRmTGTPassword
      x-discriminator-value: WinRmTGTPassword
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - WinRmTGTPassword
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              default: 5986
              description: WinRm port
            principal:
              type: string
              description: Kerberos principal
            realm:
              type: string
              description: Kerberos realm
            password:
              type: string
              description: Kerberos password
            use_ssl:
              type: boolean
              default: true
              description: This is the Kerberos either to use SSL/https
            skip_cert_checks:
              type: boolean
              default: true
              description: This is the Kerberos either to skip certificate checks
            use_no_profile:
              type: boolean
              description: This is the Kerberos powershell runs without loading profile
          required:
            - type
    WinRmNTLMSpec:
      title: WinRmNTLM
      x-discriminator-value: WinRmNTLM
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - WinRmNTLM
              description: This specifies the type of secret
            port:
              type: integer
              format: int32
              default: 5986
              description: WinRm port
            domain:
              type: string
              description: This is the NTLM domain name
            username:
              type: string
              description: This is the NTLM user name
            password:
              type: string
              description: This is the NTLM password
            use_ssl:
              type: boolean
              default: true
              description: This is the NTLM either to use SSL/https
            skip_cert_checks:
              type: boolean
              default: true
              description: This is the Kerberos either to skip certificate checks
            use_no_profile:
              type: boolean
              description: This is the Kerberos powershell runs without loading profile
          required:
            - type
            - domain
            - username
            - password
    SecretRequest:
      type: object
      properties:
        secret:
          $ref: '#/components/schemas/Secret'
      required:
        - secret
    Secret:
      type: object
      properties:
        name:
          type: string
          description: Secret name
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$-]{0,127}$
          description: Secret identifier
          maxLength: 128
        org:
          type: string
          description: Organization identifier for secret
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        project:
          type: string
          description: Project identifier for secret
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        tags:
          type: object
          additionalProperties:
            type: string
          description: Secret tags
        description:
          type: string
          description: Secret description
        spec:
          $ref: '#/components/schemas/SecretSpec'
      required:
        - name
        - identifier
        - spec
    SecretResponse:
      title: SecretResponse
      type: object
      properties:
        secret:
          $ref: '#/components/schemas/Secret'
        created:
          type: integer
          format: int64
          description: Creation timestamp for the secret
        updated:
          type: integer
          format: int64
          description: Updated timestamp for the secret
        draft:
          type: boolean
        governance_metadata:
          type: object
          description: Governance metadata information
      description: Secret response model
    ModuleVersionsResponse:
      title: Module Versions Response Body
      type: object
      description: Module Versions Response Body
      properties:
        name:
          type: string
          description: Module name
        version:
          type: string
          description: Module version
        display_name:
          type: string
          description: Module display name
        updated:
          type: string
          description: Module updated at
        version_url:
          type: string
          description: Module version URL
        release_notes_link:
          type: string
          description: Module Release Notes link
        microservices_version_info:
          type: array
          items:
            $ref: '#/components/schemas/MicroserviceVersionInfo'
    MicroserviceVersionInfo:
      title: Microservice Version Info
      x-stoplight:
        id: bmqfflnoo0jid
      type: object
      properties:
        name:
          type: string
          description: Microservices name
        version:
          type: string
          description: Microservices version URL
        version_url:
          type: string
          description: Microservices version
      description: Microservice Version Info
    SecretValidationMetadata:
      title: SecretValidationMetadata
      type: object
      description: Details of the secret reference
      properties:
        secret_manager_identifier:
          type: string
          description: Identifier of the secretManager
        secret_ref_path:
          type: string
          description: Path to the secret present which needs to be referenced.
      required:
        - secretManagerIdentifer
        - secretRefPath
    SecretValidationResponse:
      title: SecretValidationResponse
      type: object
      description: Response of the secret reference validation
      properties:
        success:
          type: boolean
        message:
          type: string
          description: Secret reference path validation result
    EulaSignRequest:
      title: EulaSignRequest
      type: object
      description: Details of an Agreement to be Signed
      properties:
        agreement_type:
          $ref: '#/components/schemas/AgreementType'
          description: Type of Agreement
      required:
        - agreement_type
    AgreementType:
      type: string
      description: Type of Agreement
      enum:
        - AIDA
    EulaSignResponse:
      title: EulaSignResponse
      type: object
      description: Response of signing an End User License Agreement
      properties:
        signed:
          type: boolean
        message:
          type: string
          description: Signing an End User License Agreement result
    IPAllowlistConfig:
      title: IPAllowlistConfig
      x-stoplight:
        id: z54w7edwpccca
      type: object
      description: This contains data for a config set in Harness to allow selected IPs
      properties:
        name:
          type: string
          description: Name of the IP Config defined in Harness
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier of the IP Config
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Description of the entity
        enabled:
          type: boolean
          default: false
          description: >-
            If true, it will allow all the IPs that are part of the config and
            block others.
        tags:
          type: object
          additionalProperties:
            type: string
          description: IP Allowlist tags
          maxProperties: 128
        allowed_source_type:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/AllowedSourceType'
        ip_address:
          type: string
      required:
        - name
        - identifier
        - ip_address
    AllowedSourceType:
      title: AllowedSourceType
      x-stoplight:
        id: j4g1a19tpiovc
      type: string
      enum:
        - UI
        - API
      description: This denotes source from which IPs are allowed.
    IPAllowlistConfigRequest:
      title: IPAllowlistConfigRequest
      x-stoplight:
        id: gmdedmqicwsx4
      type: object
      description: This is the request spec to create IP Allowlist config in Harness
      properties:
        ip_allowlist_config:
          $ref: '#/components/schemas/IPAllowlistConfig'
    IPAllowlistConfigResponse:
      title: IPAllowlistConfigResponse
      x-stoplight:
        id: 9rirmo68rh6st
      type: object
      properties:
        ip_allowlist_config:
          $ref: '#/components/schemas/IPAllowlistConfig'
        created:
          type: integer
          format: int64
          description: Creation timestamp for the IP Allowlist config.
        updated:
          type: integer
          format: int64
          description: Last modification timestamp for IP Allowlist config.
      required:
        - ip_allowlist_config
        - created
        - updated
    IPAllowlistConfigValidateResponse:
      title: IPAllowlistConfigValidateResponse
      x-stoplight:
        id: smtu2jgnoz1up
      type: object
      properties:
        allowed_for_custom_block:
          type: boolean
          description: >-
            This indicates if given IP Address lies in range of custom IP block
            or not.
        allowlisted_configs:
          type: array
          description: >
            This is the list of IP configs configured in Harness from which IP
            address is allowed. This is empty in case of custom IP address
            block.
          items:
            $ref: '#/components/schemas/IPAllowlistConfigResponse'
        allowed_for_ui:
          type: boolean
          description: >-
            This indicates if a given IP is allowlisted in Harness for UI
            requests
        allowed_for_api:
          type: boolean
          description: >-
            This indicates if a given IP is allowlisted in Harness for API
            requests
        disabled_allowlisted_configs:
          type: array
          description: >
            This is the list of IP configs configured in Harness from which IP
            address is allowed but the config is disabled. This is empty in case
            of custom IP address block.
          items:
            $ref: '#/components/schemas/IPAllowlistConfigResponse'
    ManifestsResponseDTO:
      title: ManifestsResponseDTO
      type: object
      properties:
        identifiers:
          type: array
          description: List of Manifest Identifiers
          items:
            type: string
      description: >-
        ManifestsResponseDTO returns a list of manifest identifiers from a
        service's eligible primary manifests.
      x-internal: false
      x-examples:
        Example 1:
          identifiers:
            - id1
            - id2
    CreateGitXWebhookRequest:
      title: CreateGitXWebhookRequest
      x-stoplight:
        id: dfl2rgteqjv9l
      type: object
      description: Contains information about the GitX webhook creation request
      properties:
        webhook_identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
        repo_name:
          type: string
        connector_ref:
          type: string
        folder_paths:
          type: array
          items:
            type: string
        webhook_name:
          type: string
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
    CreateGitXWebhookResponse:
      title: CreateGitXWebhookResponse
      x-stoplight:
        id: x9148732e2m4l
      type: object
      description: 'Contains information about the GitX webhook creation '
      properties:
        webhook_identifier:
          type: string
    UpdateGitXWebhookRequest:
      title: UpdateGitXWebhookRequest
      x-stoplight:
        id: 4muh4be0aj4te
      type: object
      description: 'Contains information about the GitX webhook updation '
      properties:
        repo_name:
          type: string
        webhook_name:
          type: string
        folder_paths:
          type: array
          items:
            type: string
        is_enabled:
          type: boolean
        connector_ref:
          type: string
    UpdateGitXWebhookResponse:
      title: UpdateGitXWebhookResponse
      x-stoplight:
        id: ne0fmq08o05bg
      type: object
      description: 'Contains information about the GitX webhook updation '
      properties:
        webhook_identifier:
          type: string
    GitXWebhookResponse:
      title: GitXWebhookResponse
      x-stoplight:
        id: vkv1a5drhxln9
      type: object
      description: 'Contains information about the GitX webhooks '
      properties:
        webhook_identifier:
          type: string
        webhook_name:
          type: string
        connector_ref:
          type: string
        repo_name:
          type: string
        folder_paths:
          type: array
          items:
            type: string
        is_enabled:
          type: boolean
        event_trigger_time:
          type: integer
          format: int64
    GitXWebhookEventResponse:
      title: GitXWebhookEventResponse
      x-stoplight:
        id: kcprstctf6ja6
      type: object
      description: Contains information about the GitX webhook Events
      properties:
        author_name:
          type: string
        event_identifier:
          type: string
        webhook_identifier:
          type: string
        payload:
          type: string
        event_trigger_time:
          type: integer
          format: int64
        repo_name:
          type: string
        event_status:
          type: string
          enum:
            - SKIPPED
            - FAILED
            - QUEUED
            - SUCCESSFUL
            - PROCESSING
            - WARNING
            - UNKNOWN
        event_status_message:
          $ref: '#/components/schemas/EventStatusMessageBody'
        commit_message:
          type: string
          x-stoplight:
            id: 12a2uyvbqq1wj
        commit_id:
          type: string
          x-stoplight:
            id: slrl29uhxanaz
        commit_url:
          type: string
        file_count:
          type: integer
          x-stoplight:
            id: t6r1ww64hy73r
        failure_file_count:
          type: integer
          x-stoplight:
            id: gp3tw3rci44n0
        branch:
          type: string
          x-stoplight:
            id: yaxr6jkdztqyq
    DeleteGitXWebhookResponse:
      title: DeleteGitXWebhookResponse
      x-stoplight:
        id: bnhbfd0j7x6ag
      type: object
      description: Contains information about the GitX webhooks that was deleted.
      properties:
        webhook_identifier:
          type: string
    ReleaseDetailsResponse:
      title: ReleaseDetailsResponse
      x-stoplight:
        id: dwib2397lfhgo
      type: object
      x-examples:
        Example 1:
          _id: {}
          account: account
          org: org
          project: project
          release_key: release_key
          service_details:
            service_id: k8sservice
            service_name: k8s service
            org: orgid
            project: projectid
          environment_details:
            env_id: k8senv
            env_name: k8s env
            org: orgid
            project: projectid
            connector_ref: string
            infra_name: infra_name
            infra_id: infra_id
            infrastructure_kind: K8sDirect
      description: Response model of single release details
      properties:
        _id:
          type: object
        account:
          type: string
        org:
          type: string
        project:
          type: string
        release_key:
          type: string
        service_details:
          $ref: '#/components/schemas/ReleaseServiceDetails'
        environment_details:
          $ref: '#/components/schemas/ReleaseEnvDetails'
    BatchReleaseDetailsResponse:
      title: BatchReleaseDetailsResponse
      x-stoplight:
        id: kg0byl39j3q3k
      type: array
      items:
        $ref: '#/components/schemas/ReleaseDetailsResponse'
      x-examples:
        Example 1:
          - _id: {}
            account: account
            org: org
            project: project
            release_key: release_key
            service_details:
              service_id: k8sservice
              service_name: k8s service
              org: orgid
              project: projectid
            environment_details:
              env_id: k8senv
              env_name: k8s env
              org: orgid
              project: projectid
              connector_ref: string
              infra_name: infra_name
              infra_id: infra_id
              infrastructure_kind: K8sDirect
      description: Response model of Batch release details
    ReleaseServiceDetails:
      title: ReleaseServiceDetails
      x-stoplight:
        id: bm6tau937r4gy
      type: object
      x-examples:
        Example 1:
          service_id: serviceid
          service_name: k8sManifestService
          org: orgid
          project: projectid
      description: Response model of service release details
      properties:
        service_id:
          type: string
        service_name:
          type: string
        org:
          type: string
        project:
          type: string
    ReleaseEnvDetails:
      title: ReleaseEnvDetails
      x-stoplight:
        id: j2ei3sszd3fma
      type: object
      description: Response model of environment release details
      x-examples:
        Example 1:
          env_id: env1
          env_name: envname
          org: org
          project: project
          connector_ref: k8sDirectConnector
          infra_name: infra1
          infra_id: infraid
          infrastructureKind: K8sDirect
      properties:
        env_id:
          type: string
        env_name:
          type: string
        org:
          type: string
        project:
          type: string
        connector_ref:
          type: string
        infra_name:
          type: string
        infra_id:
          type: string
        infrastructure_kind:
          type: string
    ReleaseDetailsRequest:
      title: ReleaseDetailsRequest
      x-stoplight:
        id: dbiy8u97r6ik0
      type: object
      description: Contains information regarding a single release details required
      x-examples:
        Example 1:
          namespace: default
          release_name: release-pre-deployment-todolist
      properties:
        namespace:
          type: string
        release_name:
          type: string
    UpdateGitXWebhookEventRequest:
      title: UpdateGitXWebhookEventRequest
      x-stoplight:
        id: obt3lz7g85gic
      type: object
      description: Update GitX Webhook Event Request
      properties:
        event_status:
          type: string
          x-stoplight:
            id: mdqi6s78z7g1i
    EventStatusMessageBody:
      title: EventStatusMessageBody
      x-stoplight:
        id: 9rwghea2of8m2
      type: object
      description: Contains the gitx webhook event status message
      x-internal: true
      properties:
        message:
          type: string
          x-stoplight:
            id: la8fj2wtlye08
        hint:
          type: string
          x-stoplight:
            id: mhi6zemt7yl03
        explanation:
          type: string
          x-stoplight:
            id: 1ptlj7jmeljqe
    CertificateDTO:
      title: CertificateDTO
      x-stoplight:
        id: l9q8ph7p1mi4o
      description: This is the request dto to create a Certificate in Harness
      allOf:
        - $ref: '#/components/schemas/CertificateInfoDTO'
        - type: object
          properties:
            input_spec:
              $ref: '#/components/schemas/CertificateInputSpecDTO'
          required:
            - input_spec
    CertificateInfoDTO:
      title: CertificateInfoDTO
      x-stoplight:
        id: o43wu1pwo0n40
      type: object
      description: This is the Certificate Entity in Harness
      properties:
        name:
          type: string
          x-stoplight:
            id: 5s4lvxucs4340
          description: Name for the Entity.
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          x-stoplight:
            id: hr2a03wdanpjs
          description: Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          x-stoplight:
            id: mo4zkt909dmyx
          description: Organization Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          x-stoplight:
            id: ykyl1jrjm5yae
          description: Project Identifier for the Entity.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        certificate_value:
          type: string
          x-stoplight:
            id: xmkfxyqoijdcd
          description: >-
            Certificate Content (Read only field whose value is populated only
            in response)
          readOnly: true
        tags:
          type: object
          additionalProperties:
            type: string
          x-stoplight:
            id: bignws4547i7g
          description: Certificate tags
        description:
          type: string
          x-stoplight:
            id: enyo3ngtqsypb
      required:
        - name
        - identifier
    CertificateInputSpecDTO:
      title: CertificateInputSpecDTO
      x-stoplight:
        id: 0d1izu97xpl66
      type: object
      discriminator:
        propertyName: type
        mapping:
          TEXT: '#/components/schemas/TextCertificateInputSpecDTO'
          FILE: '#/components/schemas/FileCertificateInputSpecDTO'
      properties:
        type:
          $ref: '#/components/schemas/CertificateInputSpecType'
      required:
        - type
      description: ''
    TextCertificateInputSpecDTO:
      title: TextCertificateInputSpecDTO
      x-stoplight:
        id: d701noymmmnvu
      allOf:
        - $ref: '#/components/schemas/CertificateInputSpecDTO'
        - type: object
          x-stoplight:
            id: eywbr9ncc8jor
          properties:
            value:
              type: string
              x-stoplight:
                id: 67cnzqv4oarfk
          required:
            - value
      description: >-
        This DTO defines the fields required when creating a certificate by
        passing it as text.
      x-discriminator-value: TEXT
    FileCertificateInputSpecDTO:
      title: FileCertificateInputSpecDTO
      x-stoplight:
        id: lzs8geqg3peyv
      allOf:
        - $ref: '#/components/schemas/CertificateInputSpecDTO'
      description: >-
        This DTO defines the fields required when creating a certificate by
        passing it as text.
      x-discriminator-value: FILE
    CertificateResponseDTO:
      title: CertificateResponseDTO
      x-stoplight:
        id: 08arjpkqc1kl4
      type: object
      properties:
        certificate:
          $ref: '#/components/schemas/CertificateDTO'
        certificate_details:
          $ref: '#/components/schemas/CertificateDetailsDTO'
        created:
          type: integer
          x-stoplight:
            id: 1la1qxtgvwuuj
          format: int64
        updated:
          type: integer
          x-stoplight:
            id: dzphxs7u5apmm
          format: int64
      required:
        - certificate
        - certificate_details
    CertificateDetailsDTO:
      title: CertificateDetailsDTO
      x-stoplight:
        id: mlof3rn4vqe64
      type: object
      properties:
        issued_to:
          $ref: '#/components/schemas/CertificateIssuanceInfo'
        issued_by:
          $ref: '#/components/schemas/CertificateIssuanceInfo'
        valid_from:
          type: integer
          x-stoplight:
            id: j5a9tcl5i3a2o
          format: int64
        valid_to:
          type: integer
          x-stoplight:
            id: 1339ez6fx8l2g
          format: int64
        signature_algo:
          type: string
          x-stoplight:
            id: rx7w596wytqr3
    CertificateInputSpecType:
      title: CertificateInputSpecType
      x-stoplight:
        id: nhxqu9kwgv634
      type: string
      enum:
        - TEXT
        - FILE
      description: This defines different ways a certificate can be created
    CertificateIssuanceInfo:
      title: CertificateIssuanceInfo
      x-stoplight:
        id: ag74zjmlc3qyp
      type: object
      properties:
        common_name:
          type: string
          x-stoplight:
            id: ei027bhkq7cam
        organization:
          type: string
          x-stoplight:
            id: anat62b0vdzp7
        organizational_unit:
          type: string
          x-stoplight:
            id: 1ll9qrdntms7o
    BannerDTO:
      title: BannerDTO
      x-stoplight:
        id: bjkd0178m4ic6
      type: object
      description: This is the request dto to create a Banner in Harness
      properties:
        name:
          type: string
          x-stoplight:
            id: izz4aokqklu02
        identifier:
          type: string
          x-stoplight:
            id: ext4ub1eyfa2d
        enabled:
          type: boolean
          x-stoplight:
            id: o1bqftrzgja8o
          default: false
        intent:
          $ref: '#/components/schemas/BannerIntent'
        title:
          type: string
          x-stoplight:
            id: f13e2ake7hr2e
          maxLength: 80
          description: Banner Title with max length 80
        message:
          type: string
          x-stoplight:
            id: 8kabcedzxhhao
          maxLength: 250
          description: Banner Message with max length 250
        callToActions:
          type: object
          x-stoplight:
            id: gjergkzmibzw3
      required:
        - name
        - identifier
        - intent
        - title
        - message
    BannerIntent:
      title: BannerIntent
      x-stoplight:
        id: 0lz494izh75cr
      type: string
      enum:
        - INFORMATIONAL
        - HIGH
        - MEDIUM
        - LOW
      description: enum for "intent" field in BannerDTO
    BannerResponseDTO:
      title: BannerResponseDTO
      x-stoplight:
        id: 8farxrnz2d6o3
      type: object
      properties:
        banner:
          $ref: '#/components/schemas/BannerDTO'
        created:
          type: integer
          x-stoplight:
            id: w5vpxgir9xee8
          format: int64
        updated:
          type: integer
          x-stoplight:
            id: 6wuncr0735opi
          format: int64
      required:
        - banner
    LdapSettingsDTO:
      title: LdapSettingsDTO
      x-stoplight:
        id: f8znhldy5ze5v
      type: object
      description: Ldap Settings DTO
      required:
        - account_identifier
        - identifier
        - name
      properties:
        account_identifier:
          type: string
          x-stoplight:
            id: 8qppu3sep0fvz
        identifier:
          type: string
          x-stoplight:
            id: 62ki9cggzt1jm
        url:
          type: string
          x-stoplight:
            id: ce8y7fyupcwie
        disabled:
          type: boolean
          x-stoplight:
            id: vlqp8sh98y08b
        name:
          type: string
          x-stoplight:
            id: 3dwefjtun1rn1
        cron_expression:
          type: string
          x-stoplight:
            id: 9v59g4w3hg5wo
        ldap_connection_settings:
          $ref: '#/components/schemas/LdapConnectionSettingsDTO'
        ldap_user_settings:
          type: array
          x-stoplight:
            id: q2qnvvvats82o
          items:
            $ref: '#/components/schemas/LdapUserSettingsDTO'
        ldap_group_settings:
          type: array
          x-stoplight:
            id: e38bwrq8oy07r
          items:
            $ref: '#/components/schemas/LdapGroupSettingsDTO'
        sso_type:
          type: string
          x-stoplight:
            id: xdgeaawghtmno
    LdapUserSettingsDTO:
      title: LdapUserSettingsDTO
      x-stoplight:
        id: z57exi0ztqq9a
      type: object
      description: Ldap User Settings DTO
      properties:
        base_d_n:
          type: string
          x-stoplight:
            id: wfuahenplizat
        search_filter:
          type: string
          x-stoplight:
            id: y3wrrf6vz37z2
        uid_attr:
          type: string
          x-stoplight:
            id: nuqp9fo5w05iy
        sam_account_name_attr:
          type: string
          x-stoplight:
            id: yb9qmhbz1mffp
        email_attr:
          type: string
          x-stoplight:
            id: drfzqz8mpu1ou
        display_name_attr:
          type: string
          x-stoplight:
            id: zs09zxyk5phg6
        group_membership_attr:
          type: string
          x-stoplight:
            id: 5qa5pc978l4o4
    LdapConnectionSettingsDTO:
      title: LdapConnectionSettingsDTO
      x-stoplight:
        id: sk8ot06b5sety
      type: object
      description: Ldap Connection Settings DTO
      properties:
        host:
          type: string
          x-stoplight:
            id: i5rmxd4zc7128
        port:
          type: integer
          x-stoplight:
            id: ealsta50aysfs
        ssl_enabled:
          type: boolean
          x-stoplight:
            id: l9ucsqzqz65de
        referrals_enabled:
          type: boolean
          x-stoplight:
            id: g8e480fibh1p2
        secret_ref_path:
          type: string
          x-stoplight:
            id: 3lrfk14jzy69x
        max_referral_hops:
          type: integer
          x-stoplight:
            id: twu8lt66e08tz
        connection_timeout:
          type: integer
          x-stoplight:
            id: p8kjsb8doifih
        response_timeout:
          type: integer
          x-stoplight:
            id: 2ersoqf1fspni
        use_recursive_group_membership_search:
          type: boolean
          x-stoplight:
            id: wvps1gevlwqa0
        bind_d_n:
          type: string
          x-stoplight:
            id: m41ae2qg2kusj
        delegate_selectors:
          type: array
          x-stoplight:
            id: yagarnzxe76av
          items:
            x-stoplight:
              id: wh3l7x013ckkn
            type: string
    LdapGroupSettingsDTO:
      title: LdapGroupSettingsDTO
      x-stoplight:
        id: s1809t4lth330
      type: object
      description: Ldap Group Settings DTO
      properties:
        base_d_n:
          type: string
          x-stoplight:
            id: 2vl2n5ez5kkcf
        search_filter:
          type: string
          x-stoplight:
            id: 3qft0ce07rero
        name_attr:
          type: string
          x-stoplight:
            id: hae6bbgmjtxst
        description_attr:
          type: string
          x-stoplight:
            id: xpf6h6kvblidv
        user_membership_attr:
          type: string
          x-stoplight:
            id: h7mf9q80034ei
        referenced_user_attr:
          type: string
          x-stoplight:
            id: lszd5uip1q5gs
    LdapSettingsRequest:
      title: LdapSettingsRequest
      x-stoplight:
        id: gjqwk2pmix9vu
      type: object
      properties:
        ldap_settings:
          $ref: '#/components/schemas/LdapSettingsDTO'
    LdapSettingsResponse:
      title: LdapSettingsResponse
      x-stoplight:
        id: ra1gzj4t8u9w3
      type: object
      properties:
        ldap_settings:
          $ref: '#/components/schemas/LdapSettingsDTO'
        created:
          type: integer
          x-stoplight:
            id: tbd3xz9v3adk5
          format: int64
        last_modified:
          type: integer
          x-stoplight:
            id: mxo2ysfo8d5k2
          format: int64
    LdapValidateResponseDTO:
      title: LdapValidateResponseDTO
      x-stoplight:
        id: lkcy3ohrgij3e
      type: object
      description: Ldap Validate Response DTO
      properties:
        message:
          type: string
          x-stoplight:
            id: x7s66994hwdmg
        status:
          type: string
          x-stoplight:
            id: spkzkdo8p00u8
          enum:
            - SUCCESS
            - FAILURE
    LdapGroupResponseDTO:
      title: LdapGroupResponseDTO
      x-stoplight:
        id: ag80fl4djk8u7
      type: object
      properties:
        dn:
          type: string
          x-stoplight:
            id: fb8ur4bakp95d
        name:
          type: string
          x-stoplight:
            id: ezgerm7dbzalu
        description:
          type: string
          x-stoplight:
            id: 3cynjss7jge6c
        total_members:
          type: integer
          x-stoplight:
            id: 607akg5zkmwd5
        message:
          type: string
          x-stoplight:
            id: 4fyyiyx1tigej
      description: LdapGroupResponse
    UserGroupDTO:
      title: UserGroupDTO
      x-stoplight:
        id: 809ed71ctxw4g
      type: object
      description: User Group DTO
      properties:
        account_identifier:
          type: string
          x-stoplight:
            id: izybl5ndyou6l
        org:
          type: string
          x-stoplight:
            id: 8zscs32ljrqlh
        project:
          type: string
          x-stoplight:
            id: zckgqa40bii85
        identifier:
          type: string
          x-stoplight:
            id: 71xnxf5lmbo19
        is_sso_linked:
          type: boolean
          x-stoplight:
            id: jrzpdhkukejp6
        linked_sso_type:
          type: boolean
          x-stoplight:
            id: x2ss9gzmisdxe
        linked_sso_id:
          type: boolean
          x-stoplight:
            id: cyvwp3kmu2qfs
        linked_sso_display_name:
          type: string
          x-stoplight:
            id: dja5o8cdrz0ul
        sso_group_id:
          type: string
          x-stoplight:
            id: ni3iyd67b31i5
        sso_group_name:
          type: string
          x-stoplight:
            id: 3rr7v12c2xapx
        name:
          type: string
          x-stoplight:
            id: d4d4zjg9l2d2p
        users:
          type: array
          x-stoplight:
            id: ol1or1092op6l
          items:
            x-stoplight:
              id: 3s9neyuurscsv
            type: string
        notification_configs:
          type: array
          x-stoplight:
            id: 8a4qp4lj2nmkc
          items:
            $ref: '#/components/schemas/NotificationSettingConfigDTO'
        externally_managed:
          type: boolean
          x-stoplight:
            id: oqy81utjz3qmf
        description:
          type: string
          x-stoplight:
            id: hc4inmpqjcfsi
        tags:
          type: array
          x-stoplight:
            id: 4dtahmt1tenew
          items:
            x-stoplight:
              id: llx1wlnfosa3x
            type: string
        harness_managed:
          type: boolean
          x-stoplight:
            id: sm26t4i5t4kcf
    NotificationSettingConfigDTO:
      title: NotificationSettingConfigDTO
      x-stoplight:
        id: rhy104v0cjttt
      type: object
      properties:
        type:
          type: string
          x-stoplight:
            id: ets95lazoqt1o
    LinkSSOGroupRequestDTO:
      title: LinkSSOGroupRequestDTO
      x-stoplight:
        id: 9nq8edmxoq01f
      type: object
      properties:
        sso_id:
          type: string
          x-stoplight:
            id: ytazjgz12l17u
        sso_group_id:
          type: string
          x-stoplight:
            id: gqw1001ki7ni6
        sso_group_name:
          type: string
          x-stoplight:
            id: fkrxfo9iz681u
      description: ''
    UnlinkSSOGroupRequestDTO:
      title: UnlinkSSOGroupRequestDTO
      x-stoplight:
        id: 99zgtjmcs8t67
      type: object
      properties:
        retain_members:
          type: boolean
          x-stoplight:
            id: yyqh40xyuksld
    LdapSettingsIterations:
      title: LdapSettingsIterations
      x-stoplight:
        id: fm7tb4yt6xber
      type: object
      properties:
        iterations:
          type: array
          x-stoplight:
            id: 1p2rv44mibkb5
          items:
            x-stoplight:
              id: bl9mqhxdepfe5
            type: integer
            format: int64
    CronExpressionRequestDTO:
      title: CronExpressionRequestDTO
      x-stoplight:
        id: w60gppl5cy5uu
      type: object
      properties:
        cron:
          type: string
          x-stoplight:
            id: gje1x6922v6fd
    LdapTestLoginResponseDTO:
      title: LdapTestLoginResponseDTO
      x-stoplight:
        id: qyovi99w6fhk5
      type: object
      properties:
        message:
          type: string
          x-stoplight:
            id: ffhbs5s2f4g5u
        status:
          type: string
          x-stoplight:
            id: j8e7dfj2vqvic
          enum:
            - SUCCESS
            - FAILURE
    LdapTestLoginRequestDTO:
      title: LdapTestLoginRequestDTO
      x-stoplight:
        id: o4dbv260dkvc3
      type: object
      properties:
        email:
          type: string
          x-stoplight:
            id: ov0ic5u510oql
        password:
          type: string
          x-stoplight:
            id: r1c8uwaviczpl
    GetGitXWebhookEventFileValidationResponse:
      title: GetGitXWebhookEventFileValidationResponse
      x-stoplight:
        id: bq4d9by7xkllw
      type: object
      description: Get GitX Webhook Event File Validation Response
      properties:
        file_path:
          type: string
        file_url:
          type: string
        file_action_type:
          type: string
          enum:
            - ADDED
            - MODIFIED
            - DELETED
        entity_details:
          type: array
          items:
            $ref: '#/components/schemas/EntityDetails'
    ErrorMetadata1:
      title: ErrorMetadata
      x-stoplight:
        id: k44xlbscpqhti
      type: object
      description: Error meta data
      properties:
        error_message:
          type: string
          x-stoplight:
            id: kkpconlup6wwr
        hint:
          type: string
          x-stoplight:
            id: k6z0qdp0rmuw4
        explanation:
          type: string
          x-stoplight:
            id: f3q0sm25vvdyp
    EntityMetadata:
      title: EntityMetadata
      type: object
      description: Entity metadata
      properties:
        pipeline_identifier:
          type: string
        template_version_label:
          type: string
        environment_identifier:
          type: string
        override_type:
          type: string
    EntityDetails:
      title: EntityDetails
      x-stoplight:
        id: off09hxwghp46
      type: object
      description: 'Entity Details with its yaml validation result '
      properties:
        is_valid:
          type: boolean
        error_metadata:
          $ref: '#/components/schemas/ErrorMetadata1'
        entity_metadata:
          $ref: '#/components/schemas/EntityMetadata'
        identifier:
          type: string
        org:
          type: string
        project:
          type: string
        entity_type:
          type: string
          enum:
            - Pipelines
            - Template
            - InputSets
            - Service
            - Environment
            - Infrastructure
            - Overrides
            - Unknown
        entity_url:
          type: string
        branch:
          type: string
    PrometheusRequestBody:
      type: object
      properties:
        query:
          type: string
          description: Prometheus query to be executed
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
        accountId:
          type: string
        connectorInfoDTO:
          $ref: '#/components/schemas/ConnectorInfoDTO'
    ConnectorInfoDTO:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        type:
          type: string
        spec:
          type: object
          properties:
            url:
              type: string
            username:
              type: string
            passwordRef:
              type: string
            headers:
              type: array
              items:
                type: object
            delegateSelectors:
              type: array
              items:
                type: string
        uniqueId:
          type: string
        parentUniqueId:
          type: string
    ListGitXWebhookBranchesDTO:
      title: ListGitXWebhookBranchesDTO
      x-stoplight:
        id: uz8rg7ns5igqa
      type: object
      x-examples: {}
      properties:
        branches:
          type: array
          x-stoplight:
            id: zvzsd37einxjd
          items:
            x-stoplight:
              id: tlfvydcm6psya
            type: string
    WebhookResponse:
      title: WebhookResponse
      x-stoplight:
        id: qp85gbelru04a
      type: object
      description: 'Contains information about the webhooks '
      properties:
        webhook_identifier:
          type: string
          x-stoplight:
            id: ca15qky0ubhp0
        webhook_name:
          type: string
          x-stoplight:
            id: akdk55si8n2t5
        is_enabled:
          type: boolean
          x-stoplight:
            id: yxa6x7c817cpi
        event_trigger_time:
          type: integer
          x-stoplight:
            id: s5gogy1jeqrxg
          format: int64
        spec:
          $ref: '#/components/schemas/WebhookResponseSpec'
    ListWebhookRequest:
      title: ListWebhookRequest
      x-stoplight:
        id: jx8oxje21olue
      type: object
      description: Contains information about the webhook list request
      properties:
        webhook_type:
          type: string
          x-stoplight:
            id: upkw62u05iw1k
          enum:
            - GIT
            - GENERIC
            - SLACK
            - EVENT_BRIDGE_TRIGGER
    CreateWebhookRequest:
      title: CreateWebhookRequest
      x-stoplight:
        id: wyugz3znopto1
      type: object
      description: Contains information about the webhook creation request
      required:
        - webhook_identifier
        - webhook_name
        - spec
      properties:
        webhook_identifier:
          type: string
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
        webhook_name:
          type: string
        spec:
          $ref: '#/components/schemas/WebhookSpec'
    CreateWebhookResponse:
      title: CreateWebhookResponse
      x-stoplight:
        id: yak0fnugfnazi
      type: object
      description: 'Contains information about the webhook creation '
      properties:
        webhook_identifier:
          type: string
          x-stoplight:
            id: 48gdql1ypcu24
    UpdateWebhookRequest:
      title: UpdateWebhookRequest
      x-stoplight:
        id: bcygq1n9977fe
      type: object
      description: 'Contains information about the webhook updation '
      required:
        - webhook_name
        - is_enabled
        - spec
      properties:
        webhook_name:
          type: string
          x-stoplight:
            id: neynteoeg0mp2
        is_enabled:
          type: boolean
          x-stoplight:
            id: 0s3sv7cnssgfa
        spec:
          $ref: '#/components/schemas/WebhookSpec'
    UpdateWebhookResponse:
      title: UpdateWebhookResponse
      x-stoplight:
        id: 53ifddpwomu03
      type: object
      properties:
        webhook_identifier:
          type: string
          x-stoplight:
            id: ilve5xc00itqc
      description: 'Contains information about the webhook updation '
    WebhookSpec:
      title: WebhookSpec
      type: object
      description: Details of the Webhook defined in Harness
      x-stoplight:
        id: flbjcalbbs9ui
      discriminator:
        propertyName: webhook_type
        mapping:
          GIT: '#/components/schemas/GitWebhookSpec'
          GENERIC: '#/components/schemas/GenericWebhookSpec'
          SLACK: '#/components/schemas/SlackWebhookSpec'
      properties:
        webhook_type:
          type: string
          x-stoplight:
            id: zbdq4istt2a2f
          enum:
            - GIT
            - GENERIC
            - SLACK
    GitWebhookSpec:
      title: GitWebhookSpec
      x-discriminator-value: GIT
      x-stoplight:
        id: trz0qbwvx7k1i
      allOf:
        - $ref: '#/components/schemas/WebhookSpec'
        - x-stoplight:
            id: 6gu0t0qgjboz5
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: wxi9pj91fywzj
              enum:
                - GIT
            connector_ref:
              type: string
              x-stoplight:
                id: 2vissvp1jw3an
            repo_name:
              type: string
              x-stoplight:
                id: k9u93n1c4y0l6
            folder_paths:
              type: array
              x-stoplight:
                id: 4b4jeap1ifget
              items:
                x-stoplight:
                  id: 1gu5k09urni8k
                type: string
      description: Details of the Git Webhook defined in Harness
    GenericWebhookSpec:
      title: GenericWebhookSpec
      x-discriminator-value: GENERIC
      x-stoplight:
        id: bjiw082j0w14h
      description: Details of the Git Webhook Response defined in Harness
      allOf:
        - $ref: '#/components/schemas/WebhookSpec'
        - x-stoplight:
            id: biqu7kl6qreuy
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: 6hsv7lbktirfd
              enum:
                - GENERIC
            auth_spec:
              type: object
              $ref: '#/components/schemas/GenericWebhookAuthSpec'
    GenericWebhookAuthSpec:
      title: GenericWebhookAuthSpec
      x-stoplight:
        id: pztsx6mhts2mu
      type: object
      description: Details of Authentication for Generic Webhook defined in Harness
      discriminator:
        propertyName: auth_type
        mapping:
          Hmac: '#/components/schemas/HmacAuthSpec'
          NoAuth: '#/components/schemas/NoAuthSpec'
      properties:
        auth_type:
          x-stoplight:
            id: wwgviivc5ne1g
          type: string
          enum:
            - NoAuth
            - Hmac
    HmacAuthSpec:
      title: HmacAuthSpec
      x-discriminator-value: Hmac
      x-stoplight:
        id: 68e0228wlnywm
      description: Details of HMAC Authentication for Generic Webhook defined in Harness
      allOf:
        - $ref: '#/components/schemas/GenericWebhookAuthSpec'
        - x-stoplight:
            id: a33mm0webcei4
        - type: object
          properties:
            auth_type:
              type: string
              x-stoplight:
                id: k4oztsz98ooav
              enum:
                - Hmac
            header:
              type: string
              x-stoplight:
                id: 12s5qh848c633
            secret_key:
              type: string
              x-stoplight:
                id: vwz1xib1kcy2c
            hash_algorithm:
              type: string
              x-stoplight:
                id: 3d1cnhx2uicyx
    NoAuthSpec:
      title: NoAuthSpec
      x-discriminator-value: NoAuth
      x-stoplight:
        id: 68e0228wlnywm
      allOf:
        - $ref: '#/components/schemas/GenericWebhookAuthSpec'
        - x-stoplight:
            id: a33mm0webcei4
        - type: object
          properties:
            auth_type:
              type: string
              x-stoplight:
                id: k4oztsz98ooav
              enum:
                - NoAuth
    GenericWebhookResponse:
      title: GenericWebhookResponse
      x-discriminator-value: GENERIC
      x-stoplight:
        id: 1p9ofc5cq7yb6
      description: Details of the Generic Webhook Response defined in Harness
      allOf:
        - $ref: '#/components/schemas/WebhookResponseSpec'
        - x-stoplight:
            id: i1gksyzeugz8u
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: 22s2vlv3t9fj5
              enum:
                - GENERIC
            webhook_url:
              type: string
              x-stoplight:
                id: ojhz9wdjeqwbz
            auth_spec:
              $ref: '#/components/schemas/GenericWebhookAuthSpec'
    WebhookResponseSpec:
      title: WebhookResponseSpec
      x-stoplight:
        id: hf8a59m9zplq5
      type: object
      description: Details of the Webhook Response defined in Harness
      discriminator:
        propertyName: webhook_type
        mapping:
          GIT: '#/components/schemas/GitWebhookSpec'
          GENERIC: '#/components/schemas/GenericWebhookSpec'
          SLACK: '#/components/schemas/SlackWebhookSpec'
      properties:
        webhook_type:
          type: string
          x-stoplight:
            id: ea5q8oze71hsh
          enum:
            - GIT
            - GENERIC
            - SLACK
    GitWebhookResponse:
      title: GitWebhookResponse
      x-discriminator-value: GIT
      x-stoplight:
        id: 6c6sx5s78gbvd
      description: Details of the Git Webhook Response defined in Harness
      allOf:
        - $ref: '#/components/schemas/WebhookResponseSpec'
        - x-stoplight:
            id: 7u67s12no6eqs
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: i3u6hd4kywhvr
              enum:
                - GIT
            connector_ref:
              type: string
              x-stoplight:
                id: c5h3wyv7hqczh
            repo_name:
              type: string
              x-stoplight:
                id: wbd3foe4j6h5c
            folder_paths:
              type: array
              x-stoplight:
                id: wn4diemka6nzi
              items:
                x-stoplight:
                  id: fh5uhrykr1t11
                type: string
    SlackWebhookSpec:
      title: SlackWebhookSpec
      x-stoplight:
        id: jadhjui3txho7
      description: Details of the Slack Webhook defined in Harness
      x-discriminator-value: SLACK
      allOf:
        - $ref: '#/components/schemas/WebhookSpec'
        - x-stoplight:
            id: biqu7kl6qreuy
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: 6hsv7lbktirfd
              enum:
                - SLACK
            auth_spec:
              type: object
              $ref: '#/components/schemas/SlackWebhookAuthSpec'
    SlackWebhookResponse:
      title: SlackWebhookResponse
      x-discriminator-value: SLACK
      x-stoplight:
        id: 8kwhi2hjdrmbg
      description: Details of the Slack Webhook Response defined in Harness
      allOf:
        - $ref: '#/components/schemas/WebhookResponseSpec'
        - x-stoplight:
            id: i1gksyzeugz8u
        - type: object
          properties:
            webhook_type:
              type: string
              x-stoplight:
                id: 22s2vlv3t9fj5
              enum:
                - SLACK
            webhook_url:
              type: string
              x-stoplight:
                id: ojhz9wdjeqwbz
            auth_spec:
              $ref: '#/components/schemas/SlackWebhookAuthSpec'
    SlackWebhookAuthSpec:
      title: SlackWebhookAuthSpec
      x-stoplight:
        id: 7cdpn5p579ldc
      type: object
      description: Details of Authentication for Slack Webhook defined in Harness
      discriminator:
        propertyName: auth_type
        mapping:
          Hmac: '#/components/schemas/SlackHmacAuthSpec'
          NoAuth: '#/components/schemas/SlackNoAuthSpec'
      properties:
        auth_type:
          x-stoplight:
            id: wwgviivc5ne1g
          type: string
          enum:
            - NoAuth
            - Hmac
    SlackHmacAuthSpec:
      title: SlackHmacAuthSpec
      x-discriminator-value: Hmac
      x-stoplight:
        id: l57gr481c0yev
      description: Details of HMAC Authentication for Slack Webhook defined in Harness
      allOf:
        - $ref: '#/components/schemas/SlackWebhookAuthSpec'
        - x-stoplight:
            id: a33mm0webcei4
        - type: object
          properties:
            auth_type:
              type: string
              x-stoplight:
                id: k4oztsz98ooav
              enum:
                - Hmac
            secret_key:
              type: string
              x-stoplight:
                id: vwz1xib1kcy2c
    SlackNoAuthSpec:
      title: SlackNoAuthSpec
      x-discriminator-value: NoAuth
      x-stoplight:
        id: 68e0228wlnywm
      allOf:
        - $ref: '#/components/schemas/SlackWebhookAuthSpec'
        - x-stoplight:
            id: a33mm0webcei4
        - type: object
          properties:
            auth_type:
              type: string
              x-stoplight:
                id: k4oztsz98ooav
              enum:
                - NoAuth
    LicensedModules:
      title: LicensedModules
      x-stoplight:
        id: 8imv8mxpfibki
      type: object
      description: Licensed Modules
      properties:
        licensedModules:
          type: array
          x-stoplight:
            id: w7l9vzqme8c8b
          items:
            type: object
            $ref: '#/components/schemas/ModuleType'
    SubscriptionUsageDTO:
      title: SubscriptionUsageDTO
      x-stoplight:
        id: asbfb0izkw46s
      type: object
      description: Total Users Count for the account
      properties:
        year:
          type: integer
          x-stoplight:
            id: b17mljsrq4yt3
        month:
          type: integer
          x-stoplight:
            id: 3btxrzr9lmhvf
          minimum: 1
          maximum: 12
        usage:
          type: integer
          x-stoplight:
            id: ge7d7w7kw47i7
    ModuleUtilizationDTO:
      title: ModuleUtilizationDTO
      x-stoplight:
        id: 9biptclblynf6
      type: object
      properties:
        moduleType:
          type: string
        licenses:
          type: integer
          format: int64
          x-stoplight:
            id: ytjlqy2qne6lp
        entitlements:
          type: integer
          format: int64
          x-stoplight:
            id: h3royjzc0y07x
        utilization:
          type: integer
          format: int64
          x-stoplight:
            id: 9jrf8gh467ywv
        licenseUnit:
          type: string
          x-stoplight:
            id: f7kad5hq31ojb
        entitlementUnit:
          type: string
          x-stoplight:
            id: qhuu3tdijaw9u
    PrincipalWithAccessResponse:
      title: PrincipalWithAccessResponse
      x-stoplight:
        id: 0iqrzwy2eac9w
      type: object
      properties:
        totalPrincipals:
          type: integer
          x-stoplight:
            id: 6ab0i1j3hpkme
        userGroups:
          type: array
          x-stoplight:
            id: fgty89brdsnff
          items:
            $ref: '#/components/schemas/UserGroupEntity'
        serviceAccounts:
          type: array
          x-stoplight:
            id: zh42c3dota9wp
          items:
            $ref: '#/components/schemas/PrincipalEntity'
        orgs:
          type: array
          x-stoplight:
            id: inu3d41xzect0
          items:
            x-stoplight:
              id: 6pyj9v5wp146q
            type: string
        projects:
          type: array
          x-stoplight:
            id: c88wnjk59ledb
          items:
            x-stoplight:
              id: mmujpoa5sln83
            type: array
            items:
              x-stoplight:
                id: ggnmtd6ivokrj
              type: string
        usersWithAccess:
          type: array
          x-stoplight:
            id: 9nidfhubhcf7i
          items:
            $ref: '#/components/schemas/UserWithAccessEntity'
        totalPages:
          type: integer
          x-stoplight:
            id: her4f6qotj9h0
    PrincipalEntity:
      title: PrincipalEntity
      x-stoplight:
        id: asm05p372hcq4
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: pzzrkgehhya5r
        accountIdentifier:
          type: string
          x-stoplight:
            id: 0p4tznxz5qjng
        org:
          type: string
          x-stoplight:
            id: 2p7cnue3epiz3
        project:
          type: string
          x-stoplight:
            id: 8vf2lmgn5xo4l
    PrincipalWithAccessFilter:
      title: PrincipalWithAccessFilter
      x-stoplight:
        id: dupdo3pmtijg6
      type: object
      properties:
        principalType:
          type: string
          x-stoplight:
            id: 3unmqy95qmlzt
        userGroups:
          type: array
          x-stoplight:
            id: 9n26db88ry5nc
          items:
            $ref: '#/components/schemas/PrincipalEntity'
        orgs:
          type: array
          x-stoplight:
            id: 7r6jrob5jmbc8
          items:
            x-stoplight:
              id: kp39q44vlmrxm
            type: string
        projects:
          type: array
          x-stoplight:
            id: 1g91pml71htb9
          items:
            x-stoplight:
              id: jhj18lqilh4rs
            type: array
            items:
              x-stoplight:
                id: z9464nu0fsja6
              type: string
    UserGroupEntity:
      title: UserGroupEntity
      x-stoplight:
        id: b8w2br3njf3cn
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: xx6q3dtm4c5hz
        accountIdentifier:
          type: string
          x-stoplight:
            id: 305th55frjrg9
        org:
          type: string
          x-stoplight:
            id: 7y6bvcurxzf81
        project:
          type: string
          x-stoplight:
            id: xi4hb24q1vdmx
        userCount:
          type: integer
          x-stoplight:
            id: jfu0h1fgjls12
    DailyModuleAccountAccessDTO:
      title: DailyModuleAccountAccessDTO
      x-stoplight:
        id: 0fm4v5k2zryjx
      type: object
      description: Information about accounts which have access to a module (Developer 360)
      x-tags:
        - DailyModuleAccountAccessDTO
      properties:
        day:
          type: integer
          x-stoplight:
            id: bjaedycec1m4e
          format: int32
        month:
          type: integer
          x-stoplight:
            id: 97ro4vatizg98
          format: int32
        year:
          type: integer
          x-stoplight:
            id: iac0h8hhs590q
          format: int32
        userAccountCount:
          type: integer
          x-stoplight:
            id: d2ilgqnafs236
          format: int64
        serviceAccountCount:
          type: integer
          x-stoplight:
            id: ufyo6wcsrl7ya
          format: int64
    OidcProviderDTO:
      title: OidcProviderDTO
      x-stoplight:
        id: a5xmcfu1j1fju
      type: object
      description: Details about the OIDC provider
      properties:
        identifier:
          type: string
          x-stoplight:
            id: gsym6jqr1i73y
        name:
          type: string
          x-stoplight:
            id: f7z4d33clyz4k
        scope:
          type: array
          x-stoplight:
            id: mei65fkn9qrhh
          items:
            x-stoplight:
              id: dcxrlqmfym2a2
            type: string
        response_type:
          type: string
          x-stoplight:
            id: kxv7d8amk3txa
          enum:
            - code
        issuer:
          type: string
          x-stoplight:
            id: u95v85rmzlwq1
        discovery:
          type: boolean
          x-stoplight:
            id: 9ktoaz5mxqa2s
        uid_field:
          type: string
          x-stoplight:
            id: 9u85v2mrk9y1h
        send_scope_to_token_endpoint:
          type: boolean
          x-stoplight:
            id: 8v8u9e7dvyngp
        pkce:
          type: boolean
          x-stoplight:
            id: 1widmung9ibyp
        clientConfig:
          $ref: '#/components/schemas/OidcClientConfigDTO'
        jitConfig:
          $ref: '#/components/schemas/OidcJitConfigDTO'
        authorizationConfig:
          $ref: '#/components/schemas/OidcAuthorizationConfigDTO'
    OidcClientConfigDTO:
      title: OidcClientConfigDTO
      x-stoplight:
        id: 2kdbp946t6kg9
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: 0in5oe66k7nvn
        secretRef:
          x-stoplight:
            id: eyxi8k6edrkfm
          type: string
        redirect_uri:
          type: string
          x-stoplight:
            id: 3bq833hvcnz1v
        authorization_endpoint:
          type: string
          x-stoplight:
            id: 5iklodf33c02u
        token_endpoint:
          type: string
          x-stoplight:
            id: 5xgvlfqxyp4le
        jwks_uri:
          type: string
          x-stoplight:
            id: p1xko0sc5hw9s
        userinfo_endpoint:
          type: string
          x-stoplight:
            id: q410k8i8p3vgq
    OidcJitConfigDTO:
      title: OidcJITConfigDTO
      x-stoplight:
        id: hqnlr9yhe6gv0
      type: object
      properties:
        enabled:
          type: boolean
          x-stoplight:
            id: ouiufzrdoe9ep
        claim_key:
          type: string
          x-stoplight:
            id: op7r7p3feip94
        claim_value:
          type: string
          x-stoplight:
            id: ojfdm29mn1p1o
    SLONotificationDTO:
      title: SLONotificationDTO
      x-stoplight:
        id: qyuapp5pfrkjw
      type: object
      properties:
        rule_org_id:
          type: string
          x-stoplight:
            id: rcw4qilpfyuvl
        rule_project_id:
          type: string
          x-stoplight:
            id: urybiyxpmulev
        slo_org_id:
          type: string
          x-stoplight:
            id: nhkb8dwys5frx
        slo_project_id:
          type: string
          x-stoplight:
            id: lmbq839felmiw
        slo_name:
          type: string
          x-stoplight:
            id: rq7nmyt0leopv
        entity_identifier:
          type: string
          x-stoplight:
            id: zyzk78pxq3h0o
        event_template_identifier:
          type: string
          x-stoplight:
            id: 5xtcpb4a02yaz
        correlation_id:
          type: string
          x-stoplight:
            id: nipy6xp3su79o
    OidcAuthorizationConfigDTO:
      title: OidcAuthorizationConfigDTO
      x-stoplight:
        id: s28hwq548wp3e
      type: object
      properties:
        groupClaim:
          type: string
          x-stoplight:
            id: sskwxc1e7xlsd
        authorizationEnabled:
          type: boolean
          x-stoplight:
            id: xcm08wzh01dfz
    Team:
      type: object
      properties:
        id:
          type: string
          description: The team ID.
        name:
          type: string
          description: The team name.
    Enterprise:
      type: object
      nullable: true
      properties:
        id:
          type: string
          description: The enterprise ID.
        name:
          type: string
          description: The enterprise name.
        domain:
          type: string
          description: The enterprise domain.
    AuthedUser:
      type: object
      properties:
        id:
          type: string
          description: The ID of the authenticated user.
        username:
          type: string
          description: The username of the authenticated user.
        email:
          type: string
          description: The email address of the authenticated user.
    RancherClusterItem:
      title: RancherClusterItem
      description: Represents a Rancher-managed cluster with details like ID and name.
      type: object
      properties:
        clusters:
          type: array
          items:
            type: string
        clusterItems:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
    ConnectorTestConnectionErrorDetail:
      title: ConnectorTestConnectionErrorDetail
      type: object
      description: Connector test connection errors and their details.
      properties:
        reason:
          type: string
          description: Reason of test connection error
        message:
          type: string
          description: Test connection error message
        code:
          type: integer
          description: Test connection error code
    ConnectorConnectivityDetail:
      title: ConnectorConnectivityDetail
      type: object
      description: This has details of the connectivity status of the Connector.
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - PARTIAL
            - FAILURE
            - UNKNOWN
          description: Connectivity status of a Connector
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ConnectorTestConnectionErrorDetail'
          description: List of errors and their details
        error_summary:
          type: string
          description: Summary of errors
        tested_at:
          type: integer
          format: int64
          description: Time at which Test Connection was completed
        connected_at:
          type: integer
          format: int64
          description: >-
            This is the last time at which the Connector was successfully
            connected
    ConnectorTestConnectionResponse:
      title: ConnectorTestConnectionResponse
      type: object
      description: This has test connection details for the Connector defined in Harness.
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - PARTIAL
            - FAILURE
            - UNKNOWN
          description: Connectivity status of a Connector
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ConnectorTestConnectionErrorDetail'
        error_summary:
          type: string
          description: Summary of errors
        tested_at:
          type: integer
          format: int64
          description: Time at which Test Connection was completed
        delegate_id:
          type: string
          description: ID of Delegate on which Test Connection is executed
    ConnectorResponse:
      title: ConnectorResponse
      type: object
      description: Connector response model
      properties:
        connector:
          $ref: '#/components/schemas/Connector'
        created:
          type: integer
          format: int64
          description: Creation timestamp for the connector
        updated:
          type: integer
          format: int64
          description: Updated timestamp for the connector
        status:
          $ref: '#/components/schemas/ConnectorConnectivityDetail'
        harness_managed:
          type: boolean
          description: >-
            This indicates if this Connector is managed by Harness or not. If
            True, Harness can manage and modify this Connector.
        governance_metadata:
          type: object
          description: Governance metadata information
    ConnectorRequest:
      type: object
      properties:
        connector:
          $ref: '#/components/schemas/Connector'
      required:
        - connector
    Connector:
      type: object
      properties:
        name:
          type: string
          description: Connector name
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Connector identifier
          maxLength: 128
        description:
          type: string
          description: Connector description
        org:
          type: string
          description: Organization identifier for connector
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        project:
          type: string
          description: Project identifier for connector
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        tags:
          type: object
          additionalProperties:
            type: string
          description: Connector tags
        spec:
          $ref: '#/components/schemas/ConnectorSpec'
      required:
        - name
        - identifier
        - spec
    ConnectorSpec:
      title: ConnectorSpec
      type: object
      description: Details of the connector defined in Harness
      required:
        - type
      discriminator:
        propertyName: type
        mapping:
          GitHttp: '#/components/schemas/GitHttpConnectorSpec'
          GitHttpEncrypted: '#/components/schemas/GitHttpEncryptedConnectorSpec'
          GitSsh: '#/components/schemas/GitSshConnectorSpec'
          Appdynamics: '#/components/schemas/AppdynamicsConnectorSpec'
          AppdynamicsClientId: '#/components/schemas/AppdynamicsClientIdConnectorSpec'
          Artifactory: '#/components/schemas/ArtifactoryConnectorSpec'
          ArtifactoryEncrypted: '#/components/schemas/ArtifactoryEncryptedConnectorSpec'
          ArtifactoryAnonymous: '#/components/schemas/ArtifactoryAnonymousConnectorSpec'
          AzureClientSecretKey: '#/components/schemas/AzureClientSecretKeyConnectorSpec'
          AzureClientCertificate: '#/components/schemas/AzureClientCertificateConnectorSpec'
          AzureInheritFromDelegateUserAssignedManagedIdentity: >-
            #/components/schemas/AzureInheritFromDelegateUserAssignedManagedIdentityConnectorSpec
          AzureInheritFromDelegateSystemAssignedManagedIdentity: >-
            #/components/schemas/AzureInheritFromDelegateSystemAssignedManagedIdentityConnectorSpec
      properties:
        type:
          type: string
          enum:
            - GitHttp
            - GitHttpEncrypted
            - GitSsh
            - Appdynamics
            - AppdynamicsClientId
            - Artifactory
            - ArtifactoryEncrypted
            - ArtifactoryAnonymous
            - AzureClientSecretKey
            - AzureClientCertificate
            - AzureInheritFromDelegateUserAssignedManagedIdentity
            - AzureInheritFromDelegateSystemAssignedManagedIdentity
          description: This specifies the type of connector
    GitHttpConnectorSpec:
      title: GitHttp
      x-discriminator-value: GitHttp
      description: This contains details of the Generic Git http connector
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - GitHttp
              description: This specifies the type of connector
            url:
              type: string
              description: Git repo url
            branch:
              type: string
              description: branch name
            connection_type:
              type: string
              enum:
                - Account
                - Repo
                - Project
            username:
              type: string
              description: git username
            password_ref:
              type: string
              description: Reference to encrypted Harness secret for git password
            validation_repo:
              type: string
              description: validation repo
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
            - connection_type
            - username
            - password_ref
    GitHttpEncryptedConnectorSpec:
      title: GitHttpEncrypted
      x-discriminator-value: GitHttpEncrypted
      description: This contains details of the Generic Git http connector
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - GitHttpEncrypted
              description: This specifies the type of connector
            url:
              type: string
              description: Git repo url
            branch:
              type: string
              description: branch name
            connection_type:
              type: string
              enum:
                - Account
                - Repo
                - Project
            username_ref:
              type: string
              description: Reference to encrypted Harness secret for git username
            password_ref:
              type: string
              description: Reference to encrypted Harness secret for git password
            validation_repo:
              type: string
              description: validation repo
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
            - connection_type
            - username_ref
            - password_ref
    GitSshConnectorSpec:
      title: GitSsh
      x-discriminator-value: GitSsh
      description: This contains details of the Generic Git ssh connector
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - GitSsh
              description: This specifies the type of connector
            url:
              type: string
              description: Git repo url
            branch:
              type: string
              description: branch name
            connection_type:
              type: string
              enum:
                - Account
                - Repo
                - Project
            ssh_key_ref:
              type: string
              description: Reference to encrypted Harness secret for git ssh key
            validation_repo:
              type: string
              description: validation repo
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
            - connection_type
            - ssh_key_ref
    AppdynamicsConnectorSpec:
      title: Appdynamics
      x-discriminator-value: Appdynamics
      description: This contains details of the appdynamics connector
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - Appdynamics
              description: This specifies the type of connector
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            account_name:
              type: string
              description: appdymanics account name
            controller_url:
              type: string
              description: appdynamics controller url
            username:
              type: string
              description: appdynamics username
            password_ref:
              type: string
              description: >-
                Reference to encrypted Harness secret for appdynamics password
                secret
          required:
            - type
            - account_name
            - controller_url
    AppdynamicsClientIdConnectorSpec:
      title: AppdynamicsClientId
      x-discriminator-value: AppdynamicsClientId
      description: This contains details of the appdynamics connector with client secrets
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AppdynamicsClientId
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            account_name:
              type: string
              description: appdymanics account name
            controller_url:
              type: string
              description: appdynamics controller url
            client_id:
              type: string
              description: appdynamics client id
            client_secret_ref:
              type: string
              description: >-
                Reference to encrypted Harness secret for appdynamics client
                secret
          required:
            - type
            - account_name
            - controller_url
    ArtifactoryAnonymousConnectorSpec:
      title: ArtifactoryAnonymous
      x-discriminator-value: ArtifactoryAnonymous
      description: This contains details of the artifactory connector with anonymous user
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - ArtifactoryAnonymous
              description: This specifies the type of connector
            url:
              type: string
              description: artifactory repo url
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
    ArtifactoryConnectorSpec:
      title: Artifactory
      x-discriminator-value: Artifactory
      description: >-
        This contains details of the artifactory connector with
        username/password
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - Artifactory
              description: This specifies the type of connector
            url:
              type: string
              description: artifactory repo url
            username:
              type: string
              description: artifactory username
            password_ref:
              type: string
              description: Reference to encrypted Harness secret for artifactory password
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
            - username
            - password_ref
    ArtifactoryEncryptedConnectorSpec:
      title: ArtifactoryEncrypted
      x-discriminator-value: ArtifactoryEncrypted
      description: >-
        This contains details of the artifactory connector with encrypted
        username/password
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - ArtifactoryEncrypted
              description: This specifies the type of connector
            url:
              type: string
              description: artifactory repo url
            username_ref:
              type: string
              description: Reference to encrypted Harness secret for artifactory username
            password_ref:
              type: string
              description: Reference to encrypted Harness secret for artifactory password
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              description: execute on delegate
          required:
            - type
            - url
            - username_ref
            - password_ref
    AwsCodeCommitConnectorSpec:
      title: AwsCodeCommit
      x-discriminator-value: AwsCodeCommit
      description: This contains details of the AWS code commit connector
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsCodeCommit
              description: This specifies the type of connector
            url:
              type: string
              description: AWS codecommit repository url
            url_type:
              type: string
              description: AWS codecommit repository url type
              enum:
                - Repo
                - Region
            access_key:
              type: string
              description: AWS access key
            access_key_ref:
              type: string
              description: Reference to encrypted Harness secret for AWS access key
            secret_key_ref:
              type: string
              description: Reference to encrypted Harness secret for AWS secret key
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
          required:
            - type
            - url
            - url_type
            - secret_key_ref
    AwsAccessKeyConnectorSpec:
      title: AwsAccessKey
      x-discriminator-value: AwsAccessKey
      description: >-
        This contains details of the AWS connector and needs AWS access and
        secret keys for an AWS IAM user.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsAccessKey
              description: This specifies the type of connector
            access_key:
              type: string
              description: AWS access key
            secret_key_ref:
              type: string
              description: Reference to encrypted Harness secret for AWS secret key
            cross_account_role_arn:
              type: string
              description: >-
                If you want to use one AWS account for the connection, but you
                want to deploy or build in a different AWS account. In this
                scenario, the AWS account used for AWS access in Credentials
                will assume the IAM role you specify in Cross-account role ARN
                setting. This option uses the AWS Security Token Service (STS)
                feature.
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            test_region:
              type: string
              description: >-
                By default, Harness uses the us-east-1 region to test the
                credentials for this Connector. If you want to use an AWS
                GovCloud account for this Connector, select it in Test Region.
                GovCloud is used by organizations such as government agencies at
                the federal, state, and local level, as well as contractors,
                educational institutions. It is also used for regulatory
                compliance with these organizations.
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
          required:
            - type
            - access_key
            - secret_key_ref
    AwsEncryptedAccessKeyConnectorSpec:
      title: AwsEncryptedAccessKey
      x-discriminator-value: AwsEncryptedAccessKey
      description: >-
        This contains details of the AWS connector and needs AWS encrypted
        access and secret keys for an AWS IAM user.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsEncryptedAccessKey
              description: This specifies the type of connector
            access_key_ref:
              type: string
              description: Reference to encrypted Harness secret for AWS access key
            secret_key_ref:
              type: string
              description: Reference to encrypted Harness secret for AWS secret key
            cross_account_role_arn:
              type: string
              description: >-
                If you want to use one AWS account for the connection, but you
                want to deploy or build in a different AWS account. In this
                scenario, the AWS account used for AWS access in Credentials
                will assume the IAM role you specify in Cross-account role ARN
                setting. This option uses the AWS Security Token Service (STS)
                feature.
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            test_region:
              type: string
              description: >-
                By default, Harness uses the us-east-1 region to test the
                credentials for this Connector. If you want to use an AWS
                GovCloud account for this Connector, select it in Test Region.
                GovCloud is used by organizations such as government agencies at
                the federal, state, and local level, as well as contractors,
                educational institutions. It is also used for regulatory
                compliance with these organizations.
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
          required:
            - type
            - access_key_ref
            - secret_key_ref
    AwsIAMRoleConnectorSpec:
      title: AwsIAMRole
      x-discriminator-value: AwsIAMRole
      description: >-
        This contains details of the AWS connector. This assume IAM role on
        Delegate and uses the IAM role of a Harness Delegate running in your AWS
        account.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsIAMRole
              description: This specifies the type of connector
            cross_account_role_arn:
              type: string
              description: >-
                If you want to use one AWS account for the connection, but you
                want to deploy or build in a different AWS account. In this
                scenario, the AWS account used for AWS access in Credentials
                will assume the IAM role you specify in Cross-account role ARN
                setting. This option uses the AWS Security Token Service (STS)
                feature.
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            test_region:
              type: string
              description: >-
                By default, Harness uses the us-east-1 region to test the
                credentials for this Connector. If you want to use an AWS
                GovCloud account for this Connector, select it in Test Region.
                GovCloud is used by organizations such as government agencies at
                the federal, state, and local level, as well as contractors,
                educational institutions. It is also used for regulatory
                compliance with these organizations.
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
          required:
            - type
    AwsIRSAConnectorSpec:
      title: AwsIRSA
      x-discriminator-value: AwsIRSA
      description: >-
        This contains details of the AWS connector. This uses IRSA and forces
        the Harness kubernetes delegate in AWS EKS to use a specific IAM role.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsIRSA
              description: This specifies the type of connector
            cross_account_role_arn:
              type: string
              description: >-
                If you want to use one AWS account for the connection, but you
                want to deploy or build in a different AWS account. In this
                scenario, the AWS account used for AWS access in Credentials
                will assume the IAM role you specify in Cross-account role ARN
                setting. This option uses the AWS Security Token Service (STS)
                feature.
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            test_region:
              type: string
              description: >-
                By default, Harness uses the us-east-1 region to test the
                credentials for this Connector. If you want to use an AWS
                GovCloud account for this Connector, select it in Test Region.
                GovCloud is used by organizations such as government agencies at
                the federal, state, and local level, as well as contractors,
                educational institutions. It is also used for regulatory
                compliance with these organizations.
            delegate_selectors:
              type: array
              items:
                type: string
              description: List of unique delegate selectors
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
          required:
            - type
    AwsKmsAccessKeyConnectorSpec:
      title: AwsKmsAccessKey
      x-discriminator-value: AwsKmsAccessKey
      description: >-
        This contains details of the AWS and needs AWS encrypted access and
        secret keys for the AWS KMS.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsKmsAccessKey
              description: This specifies the type of connector
            kms_arn:
              type: string
              description: Amazon Resource Name (ARN)
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            access_key:
              type: string
              description: Access Key for AWS authentication
            secret_key:
              type: string
              description: Secret Key for AWS authentication
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
          required:
            - type
            - kms_arn
            - region
            - access_key
            - secret_key
    AwsKmsAssumeIAMConnectorSpec:
      title: AwsKmsAssumeIAM
      x-discriminator-value: AwsKmsAssumeIAM
      description: >-
        This contains details of the AWS connector and Harness will authenticate
        using the IAM role assigned to the AWS host running the Delegate, you
        select using a Delegate Selector.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsKmsAssumeIAM
              description: This specifies the type of connector
            kms_arn:
              type: string
              description: Amazon Resource Name (ARN)
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            delegate_selectors:
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
              items:
                type: string
          required:
            - type
            - kms_arn
            - region
            - delegate_selectors
    AwsKmsAssumeSTSConnectorSpec:
      title: AwsKmsAssumeSTS
      x-discriminator-value: AwsKmsAssumeSTS
      description: >-
        This contains details of the AWS connector and Harness will authenticate
        using the IAM role assigned to the AWS host running the Delegate, you
        select using a Delegate Selector.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsKmsAssumeSTS
              description: This specifies the type of connector
            kms_arn:
              type: string
              description: Amazon Resource Name (ARN)
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            delegate_selectors:
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
              items:
                type: string
            role_arn:
              type: string
              description: Role ARN for the Delegate with STS Role
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            assume_sts_role_duration:
              type: string
              description: This is the AssumeRole Session Duration
          required:
            - type
            - kms_arn
            - region
            - delegate_selectors
    AwsSecretManagerAccessKeyConnectorSpec:
      title: AwsSecretManagerAccessKey
      x-discriminator-value: AwsSecretManagerAccessKey
      description: >-
        This contains details of the AWS and needs AWS encrypted access and
        secret keys for the AWS Secret Manager.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsSecretManagerAccessKey
              description: This specifies the type of connector
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            access_key:
              type: string
              description: Access Key for AWS authentication
            secret_key:
              type: string
              description: Secret Key for AWS authentication
            secret_name_prefix:
              type: string
              description: Text that is prepended to the Secret name as a prefix
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
          required:
            - type
            - region
            - access_key
            - secret_key
    AwsSecretManagerAssumeIAMConnectorSpec:
      title: AwsSecretManagerAssumeIAM
      x-discriminator-value: AwsSecretManagerAssumeIAM
      description: >-
        This contains details of the AWS connector and Harness will authenticate
        using the IAM role assigned to the AWS host running the Delegate, you
        select using a Delegate Selector.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsSecretManagerAssumeIAM
              description: This specifies the type of connector
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            secret_name_prefix:
              type: string
              description: Text that is prepended to the Secret name as a prefix
            delegate_selectors:
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
              items:
                type: string
          required:
            - type
            - region
    AwsSecretManagerAssumeSTSConnectorSpec:
      title: AwsSecretManagerAssumeSTS
      x-discriminator-value: AwsSecretManagerAssumeSTS
      description: >-
        This contains details of the AWS connector and Harness will authenticate
        using the STS role assigned to the AWS host running the Delegate, you
        select using a Delegate Selector.
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AwsSecretManagerAssumeSTS
              description: This specifies the type of connector
            region:
              type: string
              description: AWS Region for kms
            default:
              type: boolean
              description: >-
                Boolean value to indicate if the Secret Manager is your default
                Secret Manager
            secret_name_prefix:
              type: string
              description: Text that is prepended to the Secret name as a prefix
            delegate_selectors:
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
              items:
                type: string
            role_arn:
              type: string
              description: Role ARN for the Delegate with STS Role
            external_id:
              type: string
              description: >-
                If the administrator of the account to which the role belongs
                provided you with an external ID, then enter that value.
            assume_sts_role_duration:
              type: string
              description: This is the AssumeRole Session Duration
          required:
            - type
            - region
            - role_arn
    AzureClientSecretKeyConnectorSpec:
      title: AzureClientSecretKey
      x-discriminator-value: AzureClientSecretKey
      description: >-
        This contains details of the Azure connector and uses Azure client
        secret key details
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AzureClientSecretKey
              description: This specifies the type of connector
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
            azure_environment_type:
              type: string
              default: AZURE
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
            application_id:
              type: string
              description: Application ID of the Azure App
            tenant_id:
              type: string
              description: >-
                The Azure Active Directory (AAD) directory ID where you created
                your application
            secret_ref:
              type: string
              description: Reference to encrypted Harness secret for Azure client secret
          required:
            - type
            - azure_environment_type
            - application_id
            - tenant_id
            - secret_ref
    AzureClientCertificateConnectorSpec:
      title: AzureClientCertificate
      x-discriminator-value: AzureClientCertificate
      description: >-
        This contains details of the Azure connector and uses Azure client
        certificate details
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AzureClientCertificate
              description: This specifies the type of connector
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
            azure_environment_type:
              type: string
              default: AZURE
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
            application_id:
              type: string
              description: Application ID of the Azure App
            tenant_id:
              type: string
              description: >-
                The Azure Active Directory (AAD) directory ID where you created
                your application
            certificate_ref:
              type: string
              description: Reference to encrypted Harness secret for Azure client secret
          required:
            - type
            - azure_environment_type
            - application_id
            - tenant_id
            - certificate_ref
    AzureInheritFromDelegateUserAssignedManagedIdentityConnectorSpec:
      title: AzureInheritFromDelegateUserAssignedManagedIdentity
      x-discriminator-value: AzureInheritFromDelegateUserAssignedManagedIdentity
      description: >-
        This contains details of the Azure connector and for azure UserAssigned
        MSI auth details
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AzureInheritFromDelegateUserAssignedManagedIdentity
              description: This specifies the type of connector
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
            azure_environment_type:
              type: string
              default: AZURE
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
            client_id:
              type: string
              description: Client Id of the ManagedIdentity resource
          required:
            - type
            - azure_environment_type
            - client_id
    AzureInheritFromDelegateSystemAssignedManagedIdentityConnectorSpec:
      title: AzureInheritFromDelegateSystemAssignedManagedIdentity
      x-discriminator-value: AzureInheritFromDelegateSystemAssignedManagedIdentity
      description: >-
        This contains details of the Azure connector for contains azure MSI auth
        details
      allOf:
        - $ref: '#/components/schemas/ConnectorSpec'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AzureInheritFromDelegateSystemAssignedManagedIdentity
              description: This specifies the type of connector
            delegate_selectors:
              type: array
              items:
                type: string
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager
              minItems: 1
            azure_environment_type:
              type: string
              default: AZURE
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
            execute_on_delegate:
              type: boolean
              default: true
              description: execute on delegate
          required:
            - type
            - azure_environment_type
    ResourceGroupsResponse:
      title: Resource Groups Response
      x-stoplight:
        id: q6oq3jxkd2who
      type: object
      description: Resource Group response body
      x-examples:
        example-resource-group:
          identifier: example_resource_group
          name: Example_Resource Group
          color: '#0063F7'
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          description: This is an Example Resource Group
          allowed_scope_levels:
            - account
          included_scope:
            - filter: EXCLUDING_CHILD_SCOPES
              account: sample_account
              org: sample_organization
              project: sample_project
          resource_filter:
            - resource_type: resource
              identifiers:
                - example_resource
              attribute_name: resource_attribute
              attribute_values:
                - example_resource_attribute
          include_all_resources: false
          harness_managed: true
          created: 1234567890
          updated: 1234567890
      properties:
        identifier:
          type: string
          description: Resource Group Identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Resource Group Name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        color:
          type: string
          description: Color associated with the Resource Group.
        tags:
          type: object
          additionalProperties:
            type: string
          description: Resource Group tags
          maxProperties: 128
        description:
          type: string
          description: Resource Group description
          maxLength: 1024
        allowed_scope_levels:
          type: array
          description: Allowed scope levels for this Resource Group.
          uniqueItems: true
          items:
            type: string
            enum:
              - account
              - organization
              - project
        included_scope:
          type: array
          description: Included scopes for the resources belonging to the Resource Group.
          items:
            $ref: '#/components/schemas/ResourceGroupScope'
        resource_filter:
          type: array
          description: Specifies the actual resources present in the Resource Group.
          items:
            $ref: '#/components/schemas/ResourceFilter'
        include_all_resources:
          type: boolean
          description: Boolean value for including all resources in Resource Group.
        harness_managed:
          type: boolean
          description: >-
            This indicates if this Resource Group is managed by Harness or not.
            If true, Harness can manage and modify this Resource Group.
        created:
          type: integer
          description: Creation timestamp for Resource Group.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Resource Group.
          format: int64
      required:
        - identifier
        - name
    CreateResourceGroupRequest:
      title: Create Resource Group Request
      x-stoplight:
        id: z8g6ol73nsqjs
      type: object
      description: Resource Group request body
      x-examples:
        resource-group-request:
          identifier: example_resource_group
          name: Example_Resource Group
          color: '#0063F7'
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          description: This is an Example Resource Group
          included_scope:
            - filter: EXCLUDING_CHILD_SCOPES
              account: sample_account
              org: sample_organization
              project: sample_project
          resource_filter:
            - resource_type: resource
              identifiers:
                - example_resource
              attribute_name: resource_attribute
              attribute_values:
                - example_resource_attribute
          include_all_resources: false
      properties:
        identifier:
          type: string
          minLength: 1
          maxLength: 128
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Resource Group identifier
        name:
          type: string
          minLength: 1
          maxLength: 128
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          description: Resource Group name
        color:
          type: string
          description: Color associated with the Resource Group.
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Resource Group tags
        description:
          type: string
          maxLength: 1024
          description: Resource Group description
        included_scope:
          type: array
          description: Included scopes for the resources belonging to the Resource Group.
          items:
            $ref: '#/components/schemas/ResourceGroupScope'
        resource_filter:
          type: array
          description: Specifies the actual resources present in the Resource Group.
          items:
            $ref: '#/components/schemas/ResourceFilter'
        include_all_resources:
          type: boolean
          description: Boolean value for including all resources in Resource Group.
      required:
        - identifier
        - name
    ResourceGroupScope:
      title: Resource Group Scope
      x-stoplight:
        id: w8j3bc9323bxb
      type: object
      description: Included scopes for the Resources belonging to the Resource Group
      x-examples:
        example-1:
          filter: EXCLUDING_CHILD_SCOPES
          account: sample_account
          org: sample_organization
          project: sample_project
      properties:
        filter:
          type: string
          enum:
            - EXCLUDING_CHILD_SCOPES
            - INCLUDING_CHILD_SCOPES
          description: Including or Excluding Child scopes.
        account:
          type: string
          description: Account identifier
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Organization identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
      required:
        - filter
    ResourceFilter:
      title: Resource Filter
      x-stoplight:
        id: m5qhp13hm6o1z
      type: object
      description: Specifies resources in Resource Group.
      x-examples:
        example-resource-filter:
          resource_type: resource
          identifiers:
            - example_resource
          attribute_name: resource_attribute
          attribute_values:
            - example_resource_attribute
      properties:
        resource_type:
          type: string
          description: Specifies the type of Resource.
        identifiers:
          type: array
          description: Identifiers for the Resource Type.
          items:
            type: string
            pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
            minLength: 1
            maxLength: 128
        attribute_name:
          type: string
          description: Attribute name on the basis of which filtering will be done.
        attribute_values:
          type: array
          description: Attribute values selected.
          items:
            type: string
      required:
        - resource_type
    ResourceSelectorFilter:
      title: Resource Selector Filter
      x-stoplight:
        id: 0eh9msctzz3fy
      type: object
      description: Filter by whether the Resource Group has a particular Resource.
      x-examples:
        example-resource-selector-filter:
          resource_type: resource
          resource_identifier: example_resource
      properties:
        resource_type:
          type: string
          description: Filter by Resource type
        resource_identifier:
          type: string
          description: Filter by Resource identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
      required:
        - resource_type
    ResourceGroupFilterRequestBody:
      title: Resource Group Filter Request Body
      x-stoplight:
        id: bzgvkhevpa4rq
      type: object
      description: Filter request body for Resource Groups.
      x-examples:
        example-filter:
          account: example_account
          org: example_organization
          project: example_project
          search_term: search
          identifier_filter:
            - example_resource_group
          resource_selector_filter:
            - resource_type: RESOURCE
              resource_identifier: example_resource
          managed_filter: NO_FILTER
      properties:
        account:
          type: string
          description: Filter by Account identifier.
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Filter by Organization identifier.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Filter by Project identifier.
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        search_term:
          type: string
          description: Filter Resource Group matching by identifier/name.
        identifier_filter:
          type: array
          description: Filter by Resource Group identifiers
          uniqueItems: true
          items:
            type: string
            pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
            minLength: 1
            maxLength: 128
        resource_selector_filter:
          type: array
          description: Filter based on whether it has a particular Resource.
          uniqueItems: true
          items:
            $ref: '#/components/schemas/ResourceSelectorFilter'
        managed_filter:
          type: string
          description: Filter based on whether the Resource Group is Harness Managed.
          enum:
            - NO_FILTER
            - ONLY_MANAGED
            - ONLY_CUSTOM
    StreamingDestinationStatus:
      title: StreamingDestinationStatus
      x-stoplight:
        id: 6k8zse7tcg5y0
      type: string
      x-extension-1: null
      enum:
        - ACTIVE
        - INACTIVE
      description: Streaming Destination Status enum
      x-internal: false
    StreamingDestinationDTO:
      title: StreamingDestinationDTO
      x-stoplight:
        id: ooye81jxpefty
      type: object
      description: Streaming Destination model
      properties:
        identifier:
          type: string
          description: Streaming Destination identifier
        name:
          type: string
          description: Streaming Destination name
        status:
          $ref: '#/components/schemas/StreamingDestinationStatus'
        connector_ref:
          type: string
          description: Streaming Destination scoped connector reference identifier
        spec:
          $ref: '#/components/schemas/StreamingDestinationSpecDTO'
        description:
          type: string
          maxLength: 1024
          description: Description for Streaming Destination
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Tags for Streaming Destination
      required:
        - identifier
        - name
        - status
        - connector_ref
        - spec
    Connector1:
      type: object
      x-internal: true
      properties:
        name:
          type: string
          description: Connector name
          pattern: ^[0-9a-zA-Z-_ ]{0,127}$
        identifier:
          type: string
          minLength: 1
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          description: Connector identifier
          maxLength: 128
        description:
          type: string
          description: Connector description
        org:
          type: string
          description: Organization identifier for connector
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        project:
          type: string
          description: Project identifier for connector
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
        tags:
          type: object
          additionalProperties:
            type: string
          description: Connector tags
      required:
        - name
        - identifier
    StreamingDestinationSpecDTO:
      title: StreamingDestinationSpecDTO
      x-stoplight:
        id: s4mguy0st7rtt
      type: object
      discriminator:
        propertyName: type
        mapping:
          AWS_S3: '#/components/schemas/AwsS3StreamingDestinationSpecDTO'
      properties:
        type:
          type: string
          enum:
            - AWS_S3
          description: This specifies the type of Streaming Destination
      required:
        - type
      description: ''
    AwsS3StreamingDestinationSpecDTO:
      allOf:
        - $ref: '#/components/schemas/StreamingDestinationSpecDTO'
        - type: object
          properties:
            bucket:
              type: string
              description: The bucket in AWS S3 where audit records are to be written
          required:
            - bucket
      title: AwsS3StreamingDestinationSpecDTO
      description: AwsS3 Streaming Destination model
      x-discriminator-value: AWS_S3
    StreamingDestinationResponse:
      title: StreamingDestinationResponse
      x-stoplight:
        id: rulrehs9nk5a3
      type: object
      description: Streaming Destination response model
      properties:
        streaming_destination:
          $ref: '#/components/schemas/StreamingDestinationDTO'
        created:
          type: integer
          format: int64
          description: Created time of the Streaming Destination
        updated:
          type: integer
          format: int64
          description: Last updated time of the Streaming Destination
        status_updated:
          type: integer
          format: int64
          description: Last updated time of the Streaming Destination status
      required:
        - streaming_destination
    StreamingDestinationCards:
      title: StreamingDestinationCards
      x-stoplight:
        id: 1dw4ls5voxwl2
      type: object
      description: Streaming Destination Cards model
      properties:
        countByStatusCard:
          type: array
          items:
            $ref: '#/components/schemas/StatusWiseCount'
        lastStreamedCard:
          $ref: '#/components/schemas/LastStreamedCard'
        failureInfoCard:
          $ref: '#/components/schemas/FailureInfoCard'
    StatusWiseCount:
      title: StatusWiseCount
      x-stoplight:
        id: 2ad155c277a03
      type: object
      description: Streaming Destination count by status card
      properties:
        status:
          $ref: '#/components/schemas/StreamingDestinationStatus'
        count:
          type: integer
          description: Number of streaming destinations at the status
    LastStreamedCard:
      title: LastStreamedInfo
      x-stoplight:
        id: a35601e416967
      type: object
      description: Info about last successfull streaming attempt
      properties:
        lastStreamedAt:
          type: integer
          format: int64
          description: Timestamp of last successfull streaming attempt
    FailureInfoCard:
      title: FailureCard
      x-stoplight:
        id: a2d05f2010784
      type: object
      description: Info about failure in streaming attempt
      properties:
        count:
          type: integer
          description: Number of streaming destinations that have failure
          format: int64
    StreamingDestinationAggregateDTO:
      title: StreamingDestinationAggregateDTO
      x-stoplight:
        id: chl0l737sfwea
      type: object
      description: Streaming Destination Aggregate DTO
      properties:
        streaming_destination:
          $ref: '#/components/schemas/StreamingDestinationDTO'
        connector_info:
          $ref: '#/components/schemas/Connector1'
        streaming_details:
          $ref: '#/components/schemas/StreamingDetails'
      required:
        - streaming_destination
        - connector_info
    StreamingDetails:
      title: StreamingDetails
      x-stoplight:
        id: 505pv39rdv4z1
      type: object
      properties:
        status:
          type: string
          description: Status of the batch
          enum:
            - READY
            - IN_PROGRESS
            - SUCCESS
            - FAILED
        last_streamed_at:
          type: integer
          format: int64
        error_message:
          type: string
      description: Details of the last streamed batch
      x-internal: true
    ResourceScopeDTO:
      title: ResourceScopeDTO
      x-stoplight:
        id: 4pz290lmuwtl3
      type: object
      description: This has scope details for the resource defined in Harness.
      properties:
        account_identifier:
          type: string
          description: Identifier of Account
        org_identifier:
          type: string
          description: Identifier of Organization
        project_identifier:
          type: string
          description: Identifier of Project
        labels:
          type: object
          additionalProperties:
            type: string
    ResourceDTO:
      title: ResourceDTO
      x-stoplight:
        id: 2r7wy11v8scql
      type: object
      description: This contains info about Resource saved as a part of Audit Event
      properties:
        type:
          type: string
        identifier:
          type: string
        labels:
          type: object
          additionalProperties:
            type: string
    AuditFilterPropertiesV1DTO:
      title: AuditFilterPropertiesV1DTO
      x-stoplight:
        id: hrclq6ndh1ymg
      type: object
      description: Properties of the Filter entity defined in Harness.
      properties:
        filter_type:
          $ref: '#/components/schemas/FilterType'
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: tags
        start_time:
          type: integer
          format: int64
          description: >-
            Used to specify a start time for retrieving Audit events that
            occurred at or after the time indicated.
        end_time:
          type: integer
          format: int64
          description: >-
            Used to specify the end time for retrieving Audit events that
            occurred at or before the time indicated.
        modules:
          type: array
          description: List of Module Types
          items:
            $ref: '#/components/schemas/ModuleType1'
        actions:
          type: array
          description: List of Actions
          items:
            $ref: '#/components/schemas/Action'
        resources:
          type: array
          description: List of Resources
          items:
            $ref: '#/components/schemas/ResourceDTO'
        scopes:
          type: array
          description: List of Resource Scopes
          items:
            $ref: '#/components/schemas/ResourceScopeDTO'
        principals:
          type: array
          items:
            $ref: '#/components/schemas/Principal1'
        static_filter:
          type: array
          items:
            $ref: '#/components/schemas/StaticAuditFilter'
        environments:
          type: array
          items:
            $ref: '#/components/schemas/Environment1'
    StaticAuditFilter:
      title: StaticAuditFilter
      x-stoplight:
        id: mdul5d1wgfhez
      type: string
      enum:
        - SYSTEM_EVENTS
        - LOGIN_EVENTS
        - ENTITY_CHANGE_EVENTS
        - RUNTIME_EVENTS
    ModuleType1:
      title: ModuleType
      x-stoplight:
        id: xjqf65bl7w788
      type: string
      description: Type of Modules
      enum:
        - CD
        - CI
        - CV
        - CF
        - CE
        - STO
        - CORE
        - PMS
        - TEMPLATESERVICE
        - GOVERNANCE
        - CHAOS
        - CET
        - IDP
    Action:
      title: Action
      x-stoplight:
        id: bzquds8sspg1q
      type: string
      enum:
        - CREATE
        - UPDATE
        - RESTORE
        - DELETE
        - FORCE_DELETE
        - UPSERT
        - INVITE
        - RESEND_INVITE
        - REVOKE_INVITE
        - ADD_COLLABORATOR
        - REMOVE_COLLABORATOR
        - CREATE_TOKEN
        - REVOKE_TOKEN
        - LOGIN
        - LOGIN2FA
        - UNSUCCESSFUL_LOGIN
        - ERROR_BUDGET_RESET
    Principal1:
      title: Principal
      x-stoplight:
        id: tj7q0qb2zdnyw
      type: object
      properties:
        identifier:
          type: string
        type:
          $ref: '#/components/schemas/PrincipalType'
    PrincipalType:
      title: PrincipalType
      x-stoplight:
        id: fxz45g9sxt8f2
      type: string
      enum:
        - USER
        - SYSTEM
        - API_KEY
        - SERVICE_ACCOUNT
    Environment1:
      title: Environment
      x-stoplight:
        id: jmpmivgkftb1v
      type: object
      properties:
        identifier:
          type: string
        type:
          $ref: '#/components/schemas/EnvironmentType1'
    EnvironmentType1:
      title: EnvironmentType
      x-stoplight:
        id: ihuiok9k1qcmz
      type: string
      enum:
        - PreProduction
        - Production
    FilterType:
      title: FilterType
      x-stoplight:
        id: nvm8xs2of7vf8
      type: string
      enum:
        - CONNECTOR
        - DELEGATEPROFILE
        - DELEGATE
        - PIPELINESETUP
        - PIPELINEEXECUTION
        - DEPLOYMENT
        - AUDIT
        - TEMPLATE
        - ENVIRONMENTGROUP
        - FILESTORE
        - CCMRECOMMENDATION
        - ANOMALY
        - ENVIRONMENT
        - RULEEXECUTION
    AuditEventDTO:
      title: AuditEventDTO
      x-stoplight:
        id: mxditpr8jr7lh
      type: object
      properties:
        audit_id:
          type: string
        insert_id:
          type: string
        resource_scope:
          $ref: '#/components/schemas/ResourceScopeDTO'
        timestamp:
          type: integer
        module:
          $ref: '#/components/schemas/ModuleType1'
        http_request_info:
          $ref: '#/components/schemas/HttpRequestInfo'
        request_metadata:
          $ref: '#/components/schemas/RequestMetadata'
        authentication_info:
          $ref: '#/components/schemas/AuthenticationInfoDTO'
        environment:
          $ref: '#/components/schemas/Environment1'
        resource:
          $ref: '#/components/schemas/ResourceDTO'
        yaml_diff_record:
          $ref: '#/components/schemas/YamlDiffRecordDTO'
        action:
          $ref: '#/components/schemas/Action'
        internal_info:
          type: object
          additionalProperties:
            type: string
    HttpRequestInfo:
      title: HttpRequestInfo
      x-stoplight:
        id: xv4gl47om7rva
      type: object
      properties:
        request_method:
          type: string
    RequestMetadata:
      title: RequestMetadata
      x-stoplight:
        id: ga39sbthmsnqw
      type: object
      properties:
        client_ip:
          type: string
    AuthenticationInfoDTO:
      title: AuthenticationInfoDTO
      x-stoplight:
        id: vbhi03cpej4ej
      type: object
      properties:
        principal:
          $ref: '#/components/schemas/Principal1'
        labels:
          type: string
    YamlDiffRecordDTO:
      title: YamlDiffRecordDTO
      x-stoplight:
        id: 9t10m54ew32zz
      type: object
      description: This has the YAML Difference of the record.
      properties:
        old_yaml:
          type: string
          description: Previous YAML version
        new_yaml:
          type: string
          description: Current YAML version
    NotificationChannelDTO:
      type: object
      x-examples:
        Example 1:
          name: nc1
          org: org1
          project: proj1
          notification_channel_type: EMAIL
          status: DISABLED
          channel:
            email_ids: []
            user_groups:
              - {}
          created_by: {}
          created: 0
        Example 2:
          name: string
          org: string
          project: string
          notification_channel_type: string
          status: string
          channel:
            slack_web_hook_urls: []
            user_groups:
              - {}
          created_by: {}
          created: 0
        Example 3:
          name: string
          org: string
          project: string
          notification_channel_type: string
          status: string
          channel:
            pager_duty_integration_keys: []
            user_groups:
              - {}
          created_by: {}
          created: 0
        Example 4:
          name: string
          org: string
          project: string
          notification_channel_type: string
          status: string
          channel:
            userGroups:
              - {}
            headers: {}
          created_by: {}
          created: 0
      description: Notification Channel DTO
      properties:
        identifier:
          type: string
          x-stoplight:
            id: gjyp93g6bbac6
        org:
          type: string
          x-stoplight:
            id: 1z2ggn67web3c
        project:
          type: string
          x-stoplight:
            id: 83uq77a6a6sas
        notification_channel_type:
          $ref: '#/components/schemas/ChannelType'
        status:
          $ref: '#/components/schemas/Status'
        channel:
          $ref: '#/components/schemas/ChannelDTO'
        last_modified:
          type: integer
          x-stoplight:
            id: 11ay58xlnd6fw
          format: int64
        created:
          type: integer
          x-stoplight:
            id: gptqmzli7lqvo
          format: int64
        name:
          type: string
          x-stoplight:
            id: 9ba97bypq7u8d
        account:
          type: string
          x-stoplight:
            id: cxf3l813219n4
      required:
        - channel
        - notification_channel_type
    NotificationRuleDTO:
      type: object
      x-examples:
        Example 1:
          identifier: NR1
          account: accountid
          org: org1
          project: myproj
          notification_entity: DELEGATE
          notification_conditions:
            - name: del-condition
              notification_event_configs:
                - notification_event: DELEGATE_DOWN
                  notification_channels:
                    - name: nc1
                      org: org1
                      project: proj1
                      notification_channel_type: PAGERDUTY
                      status: DISABLED
                      channel:
                        pager_duty_integration_keys: []
                        user_groups:
                          - {}
                      created_by: {}
                      created: 0
                      nextIteration: 0
                - notificationEvent: DELEGATE_EXPIRED
                  notificationChannels:
                    - name: nc1
                      org: org1
                      project: proj1
                      notificationChannelType: PAGERDUTY
                      status: DISABLED
                      channel:
                        pagerDutyIntegrationKeys: []
                        userGroups:
                          - {}
                      created_by: {}
                      created: 0
                      nextIteration: 0
          status: ENABLED
          created_by: {}
          created: 0
      description: Notification Rule DTO
      properties:
        identifier:
          type: string
          x-stoplight:
            id: 3xy0lrmqbzujp
        account:
          type: string
          x-stoplight:
            id: 0knfytbeagygi
        org:
          type: string
          x-stoplight:
            id: plxjwxq3kbtmf
        project:
          type: string
          x-stoplight:
            id: kip45dsvd6vya
        status:
          $ref: '#/components/schemas/Status'
        last_modified:
          type: integer
          x-stoplight:
            id: g71dkqd7f8w9l
          format: int64
        created:
          type: integer
          x-stoplight:
            id: uflyip2weeewr
          format: int64
        name:
          type: string
          x-stoplight:
            id: fxelaoeenutjb
        notification_conditions:
          x-stoplight:
            id: 17841zlwcujh4
          type: array
          items:
            $ref: '#/components/schemas/NotificationConditionDTO'
        notification_channel_refs:
          type: array
          x-stoplight:
            id: 7rem3rrfdyxfk
          items:
            type: string
        custom_notification_template_ref:
          $ref: '#/components/schemas/CustomNotificationTemplateDTO'
    ChannelType:
      title: ChannelType
      type: string
      x-stoplight:
        id: oi0x0mhbugr20
      enum:
        - EMAIL
        - SLACK
        - PAGERDUTY
        - MSTEAMS
        - WEBHOOK
        - DATADOG
      description: Notification Channel Type
    Status:
      title: Status
      type: string
      x-stoplight:
        id: 57964lq16jzs3
      enum:
        - ENABLED
        - DISABLED
      description: Notification Rule Status
    UserGroupDTO1:
      title: UserGroupDTO
      x-stoplight:
        id: oz9bkecz1esfm
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: u815tqcfbr57h
        org:
          type: string
          x-stoplight:
            id: ssoyhq1s352ih
        project:
          type: string
          x-stoplight:
            id: advelmh410p94
    ChannelDTO:
      title: ChannelDTO
      x-stoplight:
        id: 63jic64es47uu
      type: object
      properties:
        email_ids:
          type: array
          x-stoplight:
            id: nvmrl0803hf3n
          items:
            x-stoplight:
              id: gvouq5lrvd0jo
            type: string
        slack_webhook_urls:
          type: array
          x-stoplight:
            id: f7t1sclpjrnc3
          items:
            x-stoplight:
              id: sr0wdj5c651h4
            type: string
        webhook_urls:
          type: array
          x-stoplight:
            id: hj9dvblmeot1c
          items:
            x-stoplight:
              id: c6qx5d4zp4hy5
            type: string
        pager_duty_integration_keys:
          type: array
          x-stoplight:
            id: gvpc9mkv7rv41
          items:
            x-stoplight:
              id: 4bvfcay6ejjtr
            type: string
        ms_team_keys:
          type: array
          x-stoplight:
            id: f5emuderczyd0
          items:
            x-stoplight:
              id: 11cgn8om91cgr
            type: string
        user_groups:
          type: array
          x-stoplight:
            id: qoe3qfimgqqbt
          items:
            $ref: '#/components/schemas/UserGroupDTO1'
        headers:
          type: array
          items:
            $ref: '#/components/schemas/WebHookHeaders'
        datadog_urls:
          type: array
          x-stoplight:
            id: hj9dvblmeot1d
          items:
            x-stoplight:
              id: c6qx5d4zp4hy5
            type: string
        api_key:
          type: string
          x-stoplight:
            id: hj9dvblmeot1e
        delegate_selectors:
          type: array
          x-stoplight:
            id: ij8dvblmeot1d
          items:
            x-stoplight:
              id: y6qx5d8zp4hy5
            type: string
        execute_on_delegate:
          type: boolean
          x-stoplight:
            id: ij8dvblmeyt1d
    NotificationConditionDTO:
      title: NotificationConditionDTO
      x-stoplight:
        id: x6qlppxurh1mc
      type: object
      properties:
        condition_name:
          type: string
          x-stoplight:
            id: 697xioj0wwra7
        notification_event_configs:
          type: array
          x-stoplight:
            id: o2pktaqro6dtv
          items:
            $ref: '#/components/schemas/NotificationEventConfigDTO'
    NotificationEventConfigDTO:
      title: NotificationEventConfigDTO
      x-stoplight:
        id: vvdqrc1istt8n
      type: object
      properties:
        notification_entity:
          type: string
        notification_event_data:
          $ref: '#/components/schemas/NotificationEventParamsDTO'
          x-stoplight:
            id: 7kv2sz6c1vthx
        notification_event:
          type: string
        entity_identifiers:
          type: array
          items:
            type: string
    WebHookHeaders:
      title: WebHookHeaders
      x-stoplight:
        id: 8w8k6zkcbesay
      type: object
      properties:
        key:
          type: string
          x-stoplight:
            id: glshqjklea20e
        value:
          type: string
          x-stoplight:
            id: 5etjhnv4quj97
    NotificationResourceDTO:
      title: NotificationResourceDTO
      x-stoplight:
        id: 008920f2zzf1d
      type: object
      properties:
        resource_name:
          type: string
          x-stoplight:
            id: sk4desmgfuy93
        events:
          type: array
          x-stoplight:
            id: ul4nznur4bfd9
          items:
            x-stoplight:
              id: bdi2x87lzw3eo
            type: string
        enabled:
          type: boolean
          x-stoplight:
            id: ythx08f560f7i
      description: Notification resource and list of events
    NotificationEventParamsDTO:
      title: NotificationEventParamsDTO
      x-stoplight:
        id: esscocuf2l83m
      type: object
      discriminator:
        propertyName: type
        mapping:
          DELEGATE: '#/components/schemas/DelegateEventNotificationParamsDTO'
          PIPELINE: '#/components/schemas/PipelineEventNotificationParamsDTO'
          CHAOS_EXPERIMENT: '#/components/schemas/ChaosExperimentEventNotificationParamsDTO'
          SERVICE_LEVEL_OBJECTIVE: '#/components/schemas/SLOEventNotificationParamsDTO'
      properties:
        type:
          $ref: '#/components/schemas/ResourceTypeEnum'
      description: Notification Event Params
    DelegateEventNotificationParamsDTO:
      title: DelegateEventNotificationParamsDTO
      x-stoplight:
        id: j02ar2adwh9pv
      allOf:
        - $ref: '#/components/schemas/NotificationEventParamsDTO'
        - type: object
          x-stoplight:
            id: 7i0op7u06osi7
          properties:
            delegate_group_ids:
              deprecated: true
              description: >-
                Deprecated, Use notificationEventConfig.entity_identifiers
                instead
              type: array
              x-stoplight:
                id: t1bf8hmd3q1qv
              items:
                x-stoplight:
                  id: qvusu8xw7w7nl
                type: string
        - type: object
          x-stoplight:
            id: y5mbg4yqcz34s
          properties:
            frequency:
              $ref: '#/components/schemas/FrequencyDTO'
      x-discriminator-value: DELEGATE
    ChaosExperimentEventNotificationParamsDTO:
      title: ChaosExperimentEventNotificationParamsDTO
      x-stoplight:
        id: j02ar2adwh9pk
      allOf:
        - $ref: '#/components/schemas/NotificationEventParamsDTO'
        - type: object
          x-stoplight:
            id: 7i0op7u06osi9
          properties:
            chaos_experiment_ids:
              deprecated: true
              description: >-
                Deprecated, Use notificationEventConfig.entity_identifiers
                instead
              type: array
              x-stoplight:
                id: t1bf8hmd3q1qg
              items:
                x-stoplight:
                  id: qvusu8xw7w7nd
                type: string
      x-discriminator-value: CHAOS_EXPERIMENT
    SLOEventNotificationParamsDTO:
      title: SLOEventNotificationParamsDTO
      x-stoplight:
        id: j02ar2adwh9pk11
      allOf:
        - $ref: '#/components/schemas/NotificationEventParamsDTO'
        - type: object
          x-stoplight:
            id: 7i0op7u06osi911
          properties:
            error_budget_remaining_percentage:
              description: The percentage of error budget remaining for the SLO.
              type: number
              format: float
              x-stoplight:
                id: qvusu8xw7w7nff
            error_budget_remaining_minutes:
              description: The remaining error budget in minutes for the SLO.
              type: integer
              x-stoplight:
                id: qvusu8xw7w7gg
            error_budget_burn_rate_percentage:
              type: number
              format: float
              x-stoplight:
                id: qvusu8xw7w7kk
            error_budget_burn_rate_lookback_duration:
              type: integer
              x-stoplight:
                id: qvusu8xw7w7gg
      x-discriminator-value: SERVICE_LEVEL_OBJECTIVE
    PipelineEventNotificationParamsDTO:
      title: PipelineEventNotificationParamsDTO
      x-stoplight:
        id: eyy1wyt46d2ha
      allOf:
        - $ref: '#/components/schemas/NotificationEventParamsDTO'
        - type: object
          x-stoplight:
            id: j5xmrs2ayjg6i
          properties:
            scope_identifiers:
              type: array
              x-stoplight:
                id: 0kx13oklf2jgn
              items:
                x-stoplight:
                  id: i8y9pkjraatbe
                type: string
      x-discriminator-value: PIPELINE
    ResourceTypeEnum:
      title: ResourceTypeEnum
      type: string
      x-stoplight:
        id: ad4v5eitxzg50
      enum:
        - DELEGATE
        - CHAOS_EXPERIMENT
        - PIPELINE
        - SERVICE_LEVEL_OBJECTIVE
    FrequencyDTO:
      title: FrequencyDTO
      x-stoplight:
        id: wo0h6g8kfjsyn
      type: object
      properties:
        key:
          type: string
          x-stoplight:
            id: hu2ibnm22hylk
        value:
          type: string
          x-stoplight:
            id: 22asincaf677k
    ValidateIdentifierDTO:
      title: ValidateIdentifierDTO
      x-stoplight:
        id: rfcu5cr80bs8g
      type: object
      properties:
        exists:
          type: boolean
          x-stoplight:
            id: i73hymdxgepoo
    AttachmentDTO:
      title: AttachmentDTO
      x-stoplight:
        id: ifhhgycz8eck6
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: ev6z6tsf924jn
          description: Name of the file with proper extention
        mimeType:
          type: string
          x-stoplight:
            id: 43xecvjff9l9m
          description: mime type of the file
      required:
        - name
        - mimeType
    CustomNotificationTemplateDTO:
      title: CustomNotificationTemplateDTO
      x-stoplight:
        id: 7i0op7u06osi8
      type: object
      x-examples:
        Example 1:
          template:
            templateRef: org.nginx
            versionLabel: v1
            variables:
              - name: variable1
                value: value1
                type: string
              - name: variable2
                value: value2
                type: string
      properties:
        template_ref:
          type: string
        version_label:
          type: string
        variables:
          type: array
          x-stoplight:
            id: 0r23u2qzuxaz6
          items:
            $ref: '#/components/schemas/NotificationTemplateInputsDTO'
    NotificationTemplateInputsDTO:
      title: NotificationTemplateInputsDTO
      x-stoplight:
        id: hrzvz8ee0gojd
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: sqj7hpyogmoun
        value:
          type: string
          x-stoplight:
            id: 3sf823v22jfdd
        type:
          type: string
          x-stoplight:
            id: slnpq1uq97zre
      required:
        - name
        - value
    NotificationsSimulateDTO:
      title: NotificationsSimulateDTO
      x-stoplight:
        id: f4grtn2ious85
      type: object
      properties:
        count:
          type: integer
          x-stoplight:
            id: cxmbsyd6epvyd
        accountId:
          type: string
          x-stoplight:
            id: ix6homw8h8fqw
        orgId:
          type: string
          x-stoplight:
            id: 4eaqra5csvfrx
        projectId:
          type: string
          x-stoplight:
            id: jewn9zw65yrsp
        pipelineId:
          type: string
          x-stoplight:
            id: 3ojsa04e2j6zm
        event:
          type: string
          x-stoplight:
            id: w4f6cmjjatsln
    GitDetails:
      title: Git Response Details
      x-stoplight:
        id: f37z1efdf6zuu
      type: object
      description: Git Experience related details of the Entity.
      x-examples:
        example-git:
          object_id: example_object
          branch_name: branch
          file_path: /folder/file.json
          repo_name: example_repository
          commit_id: abcd123
          file_url: www.repo/folder/file.com
          repo_url: www.repo.com
      properties:
        object_id:
          type: string
          description: Object identifier / blob id
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_$]{0,127}$
          minLength: 1
          maxLength: 128
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        repo_name:
          type: string
          description: Name of the repository.
        commit_id:
          type: string
          description: Latest commit identifier.
        file_url:
          type: string
          description: File URL of the Entity.
        repo_url:
          type: string
          description: Repository URL of the Entity.
    PipelineGetResponseBody:
      title: Pipeline Get Response Body
      x-stoplight:
        id: 4h678yi7heynq
      description: Pipeline response body.
      x-examples:
        example-get:
          pipeline_yaml: example_yaml_text
          template_applied_pipeline_yaml: example_yaml_text_with_template
          identifier: example_pipeline
          name: ExamplePipeline
          org: example_org
          project: example_project
          description: Pipeline Description
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          modules:
            - cd
          git_details:
            object_id: example_object
            branch_name: branch
            file_path: /folder/file.json
            repo_name: example_repository
            commit_id: abcd123
            file_url: www.repo/folder/file.com
            repo_url: www.repo.com
          valid: true
          yaml_error_wrapper:
            message: something is incorrect
            message_fqn: something is incorrect at pipeline.name
            stage_info:
              identifier: example_stage
              type: stage
              name: Example Stage
              fqn: pipeline.stages.stage
            step_info:
              identifier: example_step
              type: string
              name: string
              fqn: pipeline.steps.step
            fqn: pipeline.name
            hint_message: try changing something
          cache_response_metadata:
            cache_state: VALID_CACHE
            ttl_left: 9223372036854776000
            last_updated_at: 9223372036854776000
          created: 1234567890
          updated: 1234567890
      type: object
      properties:
        pipeline_yaml:
          type: string
          description: Pipeline YAML (returned as a String).
        template_applied_pipeline_yaml:
          type: string
          description: Pipeline YAML after resolving Templates (returned as a String).
        identifier:
          type: string
          description: Pipeline identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Pipeline name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Organization identifier
        project:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Project identifier
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Pipeline tags
        modules:
          type: array
          description: Modules utilised in the Pipeline.
          uniqueItems: true
          items:
            type: string
        git_details:
          $ref: '#/components/schemas/GitDetails'
        valid:
          type: boolean
          description: Specifies whether Pipeline is a valid or not.
        yaml_error_wrapper:
          type: array
          description: YAML schema errors.
          items:
            $ref: '#/components/schemas/YAMLSchemaErrorWrapper'
        cache_response_metadata:
          $ref: '#/components/schemas/CacheResponseMetadataDTO'
        created:
          type: integer
          description: Creation timestamp for Pipeline.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Pipeline.
          format: int64
        validation_uuid:
          type: string
          description: UUID of the asynchronous validation event started, if any
    PipelineValidationResponseBody:
      title: Pipeline Validation Response Body
      description: Pipeline Validation Response Body
      x-examples:
        example-get:
          status: IN_PROGRESS
      type: object
      x-stoplight:
        id: loreulur8mcil
      x-internal: true
      properties:
        status:
          type: string
          description: Status of the Pipeline Validation Event
        policy_eval:
          type: object
          description: Result of Policy Evaluations on the Pipeline
        start_ts:
          type: integer
          format: int64
          description: Start time of the Evaluation
        end_ts:
          type: integer
          format: int64
          description: End time of the Evaluation
        template_validation_response:
          $ref: '#/components/schemas/TemplateValidationResponseBody'
    PipelineValidationUUIDResponseBody:
      title: Pipeline Validation UUID Response Body
      description: Contains the UUID of the Pipeline Validation Event that's started
      x-examples:
        example-get:
          uuid: abcdef123
      type: object
      properties:
        uuid:
          type: string
          description: UUID of the Pipeline Validation Event
      x-internal: true
      x-stoplight:
        id: i0wgk0i3p6fvv
    PipelineListResponseBody:
      title: Pipeline List Response Body
      x-stoplight:
        id: qpvdgdpl74rue
      description: Pipeline List response body
      x-examples:
        example-summary:
          identifier: example_pipeline
          name: Example Pipeline
          description: This is an Example Pipeline
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          created: 1234567890
          updated: 1234567890
          modules: CD
          recent_execution_info:
            - executor_info:
                trigger_type: NOOP
                username: harness_user
                email: noreply@harness.io
              execution_id: example_execution_identifier
              execution_status: Running
              started: 1234567890
              ended: 1234567890
              run_number: 5
          store_type: REMOTE
          connector_ref: example_connector
          valid: true
          git_details:
            object_id: example_object
            branch_name: branch
            file_path: /folder/file.json
            repo_name: example_repository
            commit_id: abcd123
            file_url: www.repo/folder/file.com
            repo_url: www.repo.com
      type: object
      properties:
        identifier:
          type: string
          description: Pipeline identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Pipeline name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Pipeline tags
        created:
          type: integer
          description: Creation timestamp for Pipeline.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Pipeline.
          format: int64
        modules:
          type: array
          description: Modules utilised in the Pipeline.
          uniqueItems: true
          items:
            type: string
        recent_execution_info:
          type: array
          description: Array of recent Execution information
          items:
            $ref: '#/components/schemas/RecentExecutionInfo'
        store_type:
          type: string
          description: >-
            Specifies whether the Entity is to be stored in Git or not (for Git
            Experience).
          enum:
            - INLINE
            - REMOTE
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        valid:
          type: boolean
          description: Specifies whether Pipeline is a valid or not.
        git_details:
          $ref: '#/components/schemas/GitDetails'
        yaml_version:
          type: string
          x-stoplight:
            id: 61n7epvs4bu1u
    TriggerRequestBody:
      title: Trigger Request Body
      type: object
      description: 'Trigger request body object '
      properties:
        description:
          type: string
        enabled:
          type: boolean
        encrypted_webhook_secret_identifier:
          type: string
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_]{0,127}$
        input_set_refs:
          type: array
          items:
            type: string
        inputs:
          type: string
          description: input yaml to be used in the pipeline
        name:
          type: string
          pattern: ^[a-zA-Z_0-9-.][-0-9a-zA-Z_\s.]{0,127}$
        pipeline_branch_name:
          type: string
        source:
          $ref: '#/components/schemas/TriggerSource'
        stages_to_execute:
          type: array
          items:
            type: string
        tags:
          type: object
          additionalProperties:
            type: string
      required:
        - type
        - identifier
        - name
        - source
    TriggerSource:
      title: Trigger Source
      type: object
      properties:
        poll_interval:
          type: string
          pattern: (((([1-9])+\d*[mh])+(\s/?\d+[mh])*)|(^$)|(0))$
        type:
          type: string
          description: This specifies the type of the trigger
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        webhook_id:
          type: string
      discriminator:
        propertyName: type
        mapping:
          Scheduled: '#/components/schemas/ScheduledTriggerSource'
          Webhook: '#/components/schemas/WebhookTriggerSource'
          Manifest: '#/components/schemas/ManifestTriggerSource'
          Artifact: '#/components/schemas/ArtifactTriggerSource'
          MultiRegionArtifact: '#/components/schemas/MultiRegionArtifactTriggerSource'
      required:
        - type
        - spec
    ScheduledTriggerSource:
      title: Scheduled Trigger Source
      x-discriminator-value: Scheduled
      allOf:
        - $ref: '#/components/schemas/TriggerSource'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/ScheduledTriggerSpec'
    WebhookTriggerSource:
      title: Webhook Trigger Source
      x-discriminator-value: Webhook
      allOf:
        - $ref: '#/components/schemas/TriggerSource'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/WebhookTriggerSpec'
    ManifestTriggerSource:
      title: Manifest Trigger Source
      x-discriminator-value: Manifest
      allOf:
        - $ref: '#/components/schemas/TriggerSource'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/ManifestTriggerSpec'
    ArtifactType:
      title: ArtifactType
      enum:
        - Gcr
        - Ecr
        - Acr
        - DockerRegistry
        - Nexus3Registry
        - Nexus2Registry
        - ArtifactoryRegistry
        - AmazonS3
        - Jenkins
        - CustomArtifact
        - GoogleArtifactRegistry
        - GithubPackageRegistry
        - AzureArtifacts
        - AmazonMachineImage
        - GoogleCloudStorage
        - Bamboo
    ArtifactTriggerSource:
      title: Artifact Trigger Source
      x-discriminator-value: Artifact
      allOf:
        - $ref: '#/components/schemas/TriggerSource'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/ArtifactTriggerSpec'
    MultiRegionArtifactTriggerSource:
      title: Multi Region Artifact Trigger Source
      x-discriminator-value: MultiRegionArtifact
      allOf:
        - $ref: '#/components/schemas/TriggerSource'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/MultiRegionArtifactTriggerSpec'
    AMIFilter:
      title: AMI Artifact Registry filter
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    TriggerConditions:
      title: Trigger Conditions
      type: object
      description: Conditions for the Trigger
      properties:
        key:
          type: string
        operator:
          type: string
          enum:
            - In
            - Equals
            - NotEquals
            - StartsWith
            - EndsWith
            - Contains
            - DoesNotContain
            - Regex
            - NotIn
        value:
          type: string
    ScheduledTriggerSpec:
      title: Scheduled Trigger Spec
      type: object
      description: Spec for Scheduled Triggers
      properties:
        type:
          type: string
          enum:
            - Cron
        spec:
          $ref: '#/components/schemas/CronScheduledTriggerSpec'
    WebhookTriggerSpec:
      title: Webhook Trigger Spec
      type: object
      description: Spec for Webhook Triggers
      properties:
        type:
          type: string
          description: This specifies the type of webhook trigger
          enum:
            - Github
            - Gitlab
            - Bitbucket
            - AwsCodeCommit
            - AzureRepo
            - Harness
            - Custom
      discriminator:
        propertyName: type
        mapping:
          Github: '#/components/schemas/GithubWebhookSpec'
          Gitlab: '#/components/schemas/GitlabWebhookSpec'
          Bitbucket: '#/components/schemas/BitbucketWebhookSpec'
          AwsCodeCommit: '#/components/schemas/AwsCodeCommitWebhookSpec'
          AzureRepo: '#/components/schemas/AzureRepoWebhookSpec'
          Harness: '#/components/schemas/HarnessWebhookSpec'
          Custom: '#/components/schemas/CustomWebhookSpec'
      required:
        - type
        - spec
    ManifestTriggerSpec:
      title: Manifest Trigger Spec
      type: object
      description: Spec for Manifest Triggers
      properties:
        type:
          type: string
          description: This specifies the type of Manifest trigger
          enum:
            - HelmChart
        spec:
          $ref: '#/components/schemas/HelmChartManifestTriggerSpec'
    MultiRegionArtifactTriggerSpec:
      title: Multi Region Artifact Trigger Spec
      type: object
      description: Spec for Multi Region Artifact Triggers
      properties:
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        type:
          $ref: '#/components/schemas/ArtifactType'
        sources:
          type: array
          items:
            $ref: '#/components/schemas/ArtifactTypeSpecWrapper'
    ArtifactTypeSpecWrapper:
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/ArtifactTriggerSpec'
    ArtifactTriggerSpec:
      title: Artifact Trigger Spec
      type: object
      description: Spec for Artifact Triggers
      properties:
        type:
          $ref: '#/components/schemas/ArtifactType'
      discriminator:
        propertyName: type
        mapping:
          Gcr: '#/components/schemas/GcrArtifactSpec'
          Ecr: '#/components/schemas/EcrArtifactSpec'
          Acr: '#/components/schemas/AcrArtifactSpec'
          DockerRegistry: '#/components/schemas/DockerRegistryArtifactSpec'
          Nexus3Registry: '#/components/schemas/Nexus3RegistryArtifactSpec'
          Nexus2Registry: '#/components/schemas/Nexus2RegistryArtifactSpec'
          ArtifactoryRegistry: '#/components/schemas/ArtifactoryRegistryArtifactSpec'
          AmazonS3: '#/components/schemas/AmazonS3ArtifactSpec'
          Jenkins: '#/components/schemas/JenkinsArtifactSpec'
          CustomArtifact: '#/components/schemas/CustomArtifactSpec'
          GoogleArtifactRegistry: '#/components/schemas/GoogleArtifactRegistryArtifactSpec'
          GithubPackageRegistry: '#/components/schemas/GithubPackageRegistryArtifactSpec'
          AzureArtifacts: '#/components/schemas/AzureArtifactsArtifactSpec'
          AmazonMachineImage: '#/components/schemas/AmazonMachineImageArtifactSpec'
          GoogleCloudStorage: '#/components/schemas/GoogleCloudStorageArtifactSpec'
          Bamboo: '#/components/schemas/BambooArtifactSpec'
    GcrArtifactSpec:
      title: Gcr Artifact Spec
      x-discriminator-value: Gcr
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GcrArtifactTriggerSpec'
    GcrArtifactTriggerSpec:
      title: Gcr Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        registry_hostname:
          type: string
        image_path:
          type: string
        tag:
          type: string
    EcrArtifactSpec:
      title: Ecr Artifact Spec
      x-discriminator-value: Ecr
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/EcrArtifactTriggerSpec'
    EcrArtifactTriggerSpec:
      title: Ecr Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        region:
          type: string
        image_path:
          type: string
        tag:
          type: string
        registry_id:
          type: string
    AcrArtifactSpec:
      title: Acr Artifact Spec
      x-discriminator-value: Acr
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AcrArtifactTriggerSpec'
    AcrArtifactTriggerSpec:
      title: Acr Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        subscription_id:
          type: string
        repository:
          type: string
        tag:
          type: string
        registry:
          type: string
    DockerRegistryArtifactSpec:
      title: Docker Registry Artifact Spec
      x-discriminator-value: DockerRegistry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/DockerRegistryArtifactTriggerSpec'
    DockerRegistryArtifactTriggerSpec:
      title: Docker Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        tag:
          type: string
        image_path:
          type: string
    Nexus3RegistryArtifactSpec:
      title: Nexus3 Registry Artifact Spec
      x-discriminator-value: Nexus3Registry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/Nexus3RegistryArtifactTriggerSpec'
    Nexus3RegistryArtifactTriggerSpec:
      title: Nexus3 Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        repository:
          type: string
        image_path:
          type: string
        repository_format:
          type: string
        artifact_id:
          type: string
        package_name:
          type: string
        group_id:
          type: string
        repository_url:
          type: string
        classifier:
          type: string
        extension:
          type: string
        group:
          type: string
        tag:
          type: string
    Nexus2RegistryArtifactSpec:
      title: Nexus2Registry Artifact Spec
      x-discriminator-value: Nexus2Registry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/Nexus2RegistryArtifactTriggerSpec'
    Nexus2RegistryArtifactTriggerSpec:
      title: Nexus2 Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        repository_name:
          type: string
        repository_format:
          type: string
        artifact_id:
          type: string
        package_name:
          type: string
        group_id:
          type: string
        repository_url:
          type: string
        classifier:
          type: string
        extension:
          type: string
        tag:
          type: string
    ArtifactoryRegistryArtifactSpec:
      title: ArtifactoryRegistry Artifact Spec
      x-discriminator-value: ArtifactoryRegistry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/ArtifactoryRegistryArtifactTriggerSpec'
    ArtifactoryRegistryArtifactTriggerSpec:
      title: Artifactory Registry Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        artifact_directory:
          type: string
        artifact_path:
          type: string
        repository:
          type: string
        repository_format:
          type: string
        repository_url:
          type: string
        artifact_filter:
          type: string
    AmazonS3ArtifactSpec:
      title: AmazonS3 Artifact Spec
      x-discriminator-value: AmazonS3
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AmazonS3ArtifactTriggerSpec'
    AmazonS3ArtifactTriggerSpec:
      title: AmazonS3 Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        region:
          type: string
        bucket_name:
          type: string
        file_path_regex:
          type: string
    JenkinsArtifactSpec:
      title: Jenkins Artifact Spec
      x-discriminator-value: Jenkins
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/JenkinsArtifactTriggerSpec'
    JenkinsArtifactTriggerSpec:
      title: Jenkins Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        job_name:
          type: string
        artifact_path:
          type: string
        build:
          type: string
    CustomArtifactSpec:
      title: Custom Artifact Spec
      x-discriminator-value: CustomArtifact
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/CustomArtifactTriggerSpec'
    CustomArtifactTriggerSpec:
      title: Custom Artifact Trigger Spec
      type: object
      properties:
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        version:
          type: string
        script:
          type: string
        artifacts_array_path:
          type: string
        version_path:
          type: string
        metadata:
          type: object
          additionalProperties:
            type: string
        inputs:
          type: array
          items:
            $ref: '#/components/schemas/NGVariable'
    GoogleArtifactRegistryArtifactSpec:
      title: GoogleArtifactRegistry Artifact Spec
      x-discriminator-value: GoogleArtifactRegistry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GoogleArtifactRegistryArtifactTriggerSpec'
    GoogleArtifactRegistryArtifactTriggerSpec:
      title: Google Artifact Registry Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        version:
          type: string
        region:
          type: string
        project:
          type: string
        repository_name:
          type: string
        pkg:
          type: string
    GithubPackageRegistryArtifactSpec:
      title: GithubPackageRegistry Artifact Spec
      x-discriminator-value: GithubPackageRegistry
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GithubPackageRegistryArtifactTriggerSpec'
    GithubPackageRegistryArtifactTriggerSpec:
      title: Github Package Registry Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        org:
          type: string
        package_name:
          type: string
        package_type:
          type: string
    AzureArtifactsArtifactSpec:
      title: AzureArtifacts Artifact Spec
      x-discriminator-value: AzureArtifacts
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AzureArtifactsArtifactTriggerSpec'
    AzureArtifactsArtifactTriggerSpec:
      title: Azure Artifacts Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        project:
          type: string
        package_name:
          type: string
        package_type:
          type: string
        feed:
          type: string
        version:
          type: string
        version_regex:
          type: string
    AmazonMachineImageArtifactSpec:
      title: AmazonMachineImage Artifact Spec
      x-discriminator-value: AmazonMachineImage
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AmazonMachineImageArtifactTriggerSpec'
    AmazonMachineImageArtifactTriggerSpec:
      title: Amazon Machine Image Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        region:
          type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/AMIFilter'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/AMIFilter'
        version:
          type: string
        version_regex:
          type: string
    GoogleCloudStorageArtifactSpec:
      title: GoogleCloudStorage Artifact Spec
      x-discriminator-value: GoogleCloudStorage
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GoogleCloudStorageArtifactTriggerSpec'
    GoogleCloudStorageArtifactTriggerSpec:
      title: Google Cloud Storage Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        project:
          type: string
        bucket:
          type: string
        artifact_path:
          type: string
    BambooArtifactSpec:
      title: Bamboo Artifact Spec
      x-discriminator-value: Bamboo
      allOf:
        - $ref: '#/components/schemas/ArtifactTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/BambooArtifactTriggerSpec'
    BambooArtifactTriggerSpec:
      title: Bamboo Artifact Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        meta_data_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        plan_key:
          type: string
        build:
          type: string
        artifact_paths:
          type: array
          items:
            type: string
    HelmChartManifestTriggerSpec:
      type: object
      title: Helm Chart Manifest Trigger Spec
      properties:
        event_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        chart_name:
          type: string
        chart_version:
          type: string
        helm_version:
          type: string
          enum:
            - V2
            - V3
            - V380
        store:
          $ref: '#/components/schemas/BuildStore'
    BuildStore:
      title: Build Store
      description: Helm Chart Manifest Build store
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - S3
            - Gcs
      discriminator:
        propertyName: type
        mapping:
          Http: '#/components/schemas/HttpBuildStore'
          S3: '#/components/schemas/S3BuildStore'
          Gcs: '#/components/schemas/GcsBuildStore'
    HttpBuildStore:
      title: Http Build Store
      x-discriminator-value: Http
      allOf:
        - $ref: '#/components/schemas/BuildStore'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/HttpBuildStoreSpec'
    HttpBuildStoreSpec:
      type: object
      title: Http Build Store Spec
      properties:
        connector_ref:
          type: string
    S3BuildStore:
      title: S3 Build Store
      x-discriminator-value: S3
      allOf:
        - $ref: '#/components/schemas/BuildStore'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/S3BuildStoreSpec'
    S3BuildStoreSpec:
      title: S3 Build Store Spec
      type: object
      properties:
        connector_ref:
          type: string
        bucketName:
          type: string
        folder_path:
          type: string
        region:
          type: string
    GcsBuildStore:
      title: Gcs Build Store
      x-discriminator-value: Gcs
      allOf:
        - $ref: '#/components/schemas/BuildStore'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GcsBuildStoreSpec'
    GcsBuildStoreSpec:
      title: Gcs Build Store Spec
      type: object
      properties:
        connector_ref:
          type: string
        bucketName:
          type: string
        folder_path:
          type: string
    GithubWebhookSpec:
      title: Github Webhook Trigger Spec
      x-discriminator-value: Github
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GithubWebhookTriggerSpec'
    GithubWebhookTriggerSpec:
      title: Github Webhook Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
          description: Reference of Github connector
        repo_name:
          type: string
          description: name of the repository
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        auto_abort_previous_executions:
          type: boolean
        type:
          type: string
          enum:
            - PullRequest
            - Push
            - IssueComment
            - Release
      discriminator:
        propertyName: type
        mapping:
          PullRequest: '#/components/schemas/PullRequestGithubWebhookSpec'
          Push: '#/components/schemas/PushGithubWebhookSpec'
          IssueComment: '#/components/schemas/IssueCommentGithubWebhookSpec'
          Release: '#/components/schemas/ReleaseGithubWebhookSpec'
    PullRequestGithubWebhookSpec:
      title: Pull Request Github Webhook Trigger Spec
      x-discriminator-value: PullRequest
      allOf:
        - $ref: '#/components/schemas/GithubWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Close
                  - Edit
                  - Open
                  - Reopen
                  - Label
                  - Unlabel
                  - Synchronize
                  - ReadyForReview
    PushGithubWebhookSpec:
      title: Push Github Webhook Trigger Spec
      x-discriminator-value: Push
      type: object
      allOf:
        - $ref: '#/components/schemas/GithubWebhookTriggerSpec'
    IssueCommentGithubWebhookSpec:
      title: Issue Comment Github Webhook Trigger Spec
      x-discriminator-value: IssueComment
      allOf:
        - $ref: '#/components/schemas/GithubWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Edit
                  - Delete
    ReleaseGithubWebhookSpec:
      title: Release Github Webhook Trigger Spec
      x-discriminator-value: Release
      allOf:
        - $ref: '#/components/schemas/GithubWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Edit
                  - Delete
                  - Prerelease
                  - Publish
                  - Release
                  - Unpublish
    GitlabWebhookSpec:
      title: Gitlab Webhook Trigger Spec
      x-discriminator-value: Gitlab
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/GitlabWebhookTriggerSpec'
    GitlabWebhookTriggerSpec:
      title: Gitlab Webhook Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
          description: Reference of Gitlab connector
        repo_name:
          type: string
          description: name of the repository
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        auto_abort_previous_executions:
          type: boolean
        type:
          type: string
          enum:
            - MergeRequest
            - Push
            - MRComment
      discriminator:
        propertyName: type
        mapping:
          MergeRequest: '#/components/schemas/MergeRequestGitlabWebhookSpec'
          Push: '#/components/schemas/PushGitlabWebhookSpec'
          MRComment: '#/components/schemas/MRCommentGitlabWebhookSpec'
    MergeRequestGitlabWebhookSpec:
      title: Merge Request Gitlab Webhook Trigger Spec
      x-discriminator-value: MergeRequest
      allOf:
        - $ref: '#/components/schemas/GitlabWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Close
                  - Merge
                  - Open
                  - Reopen
                  - Update
                  - Sync
    PushGitlabWebhookSpec:
      title: Push Gitlab Webhook Trigger Spec
      x-discriminator-value: Push
      allOf:
        - $ref: '#/components/schemas/GitlabWebhookTriggerSpec'
    MRCommentGitlabWebhookSpec:
      title: MR Comment Gitlab Webhook Trigger Spec
      x-discriminator-value: MRComment
      allOf:
        - $ref: '#/components/schemas/GitlabWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
    BitbucketWebhookSpec:
      title: Bitbucket Webhook Trigger Spec
      x-discriminator-value: Bitbucket
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/BitbucketWebhookTriggerSpec'
    BitbucketWebhookTriggerSpec:
      title: Bitbucket Webhook Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
          description: Reference of Bitbucket connector
        repo_name:
          type: string
          description: name of the repository
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        auto_abort_previous_executions:
          type: boolean
        type:
          type: string
          enum:
            - PullRequest
            - Push
            - PRComment
      discriminator:
        propertyName: type
        mapping:
          PullRequest: '#/components/schemas/PullRequestBitbucketWebhookSpec'
          Push: '#/components/schemas/PushBitbucketWebhookSpec'
          PRComment: '#/components/schemas/PRCommentBitbucketWebhookSpec'
    PullRequestBitbucketWebhookSpec:
      title: Pull Request Bitbucket Webhook Trigger Spec
      x-discriminator-value: PullRequest
      allOf:
        - $ref: '#/components/schemas/BitbucketWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Merge
                  - Update
                  - Decline
    PushBitbucketWebhookSpec:
      title: Push Bitbucket Webhook Trigger Spec
      x-discriminator-value: Push
      allOf:
        - $ref: '#/components/schemas/BitbucketWebhookTriggerSpec'
    PRCommentBitbucketWebhookSpec:
      title: PR Comment Bitbucket Webhook Trigger Spec
      x-discriminator-value: PRComment
      allOf:
        - $ref: '#/components/schemas/BitbucketWebhookTriggerSpec'
        - type: object
          properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Edit
                  - Delete
    AwsCodeCommitWebhookSpec:
      title: AwsCodeCommit Webhook Trigger Spec
      x-discriminator-value: AwsCodeCommit
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AwsCodeCommitWebhookTriggerSpec'
    AwsCodeCommitWebhookTriggerSpec:
      title: AwsCodeCommit Webhook Trigger Spec
      type: object
      properties:
        type:
          type: string
          enum:
            - Push
        spec:
          $ref: '#/components/schemas/PushAwsCodeCommitWebhookTriggerSpec'
    PushAwsCodeCommitWebhookTriggerSpec:
      title: Push Aws Code Commit Webhook Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
          description: Reference of AwsCodeCommit connector
        repo_name:
          type: string
          description: name of the repository
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
    AzureRepoWebhookSpec:
      title: AzureRepo Webhook Trigger Spec
      x-discriminator-value: AzureRepo
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/AzureRepoWebhookTriggerSpec'
    AzureRepoWebhookTriggerSpec:
      title: AzureRepo Webhook Trigger Spec
      type: object
      properties:
        connector_ref:
          type: string
          description: Reference of AzureRepo connector
        repo_name:
          type: string
          description: name of the repository
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        auto_abort_previous_executions:
          type: boolean
        type:
          type: string
          enum:
            - PullRequest
            - Push
            - IssueComment
      discriminator:
        propertyName: type
        mapping:
          PullRequest: '#/components/schemas/PullRequestAzureRepoWebhookSpec'
          Push: '#/components/schemas/PushAzureRepoWebhookSpec'
          PRComment: '#/components/schemas/IssueCommentAzureRepoWebhookSpec'
    PushAzureRepoWebhookSpec:
      title: Push AzureRepo Webhook Trigger Spec
      x-discriminator-value: Push
      allOf:
        - $ref: '#/components/schemas/AzureRepoWebhookTriggerSpec'
    PullRequestAzureRepoWebhookSpec:
      title: Pull Request AzureRepo Webhook Trigger Spec
      x-discriminator-value: PullRequest
      allOf:
        - $ref: '#/components/schemas/AzureRepoWebhookTriggerSpec'
        - properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Update
                  - Merge
    IssueCommentAzureRepoWebhookSpec:
      title: Issue Comment AzureRepo Webhook Trigger Spec
      x-discriminator-value: IssueComment
      allOf:
        - $ref: '#/components/schemas/AzureRepoWebhookTriggerSpec'
        - properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Edit
                  - Delete
    HarnessWebhookSpec:
      title: Harness Webhook Trigger Spec
      x-discriminator-value: Harness
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/HarnessWebhookTriggerSpec'
    HarnessWebhookTriggerSpec:
      title: Harness Webhook Trigger Spec
      type: object
      properties:
        repo_name:
          type: string
          description: name of the repository
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
        auto_abort_previous_executions:
          type: boolean
        type:
          type: string
          enum:
            - PullRequest
            - Push
            - IssueComment
      discriminator:
        propertyName: type
        mapping:
          PullRequest: '#/components/schemas/PullRequestHarnessWebhookSpec'
          Push: '#/components/schemas/PushHarnessWebhookSpec'
          PRComment: '#/components/schemas/IssueCommentHarnessWebhookSpec'
    PullRequestHarnessWebhookSpec:
      title: Pull Request Harness Webhook Trigger Spec
      x-discriminator-value: PullRequest
      allOf:
        - $ref: '#/components/schemas/HarnessWebhookTriggerSpec'
        - properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Close
                  - Edit
                  - Open
                  - Reopen
                  - Label
                  - Unlabel
                  - Synchronize
    PushHarnessWebhookSpec:
      title: Push Harness Webhook Trigger Spec
      x-discriminator-value: Push
      allOf:
        - $ref: '#/components/schemas/HarnessWebhookTriggerSpec'
    IssueCommentHarnessWebhookSpec:
      title: Issue Comment Harness Webhook Trigger Spec
      x-discriminator-value: IssueComment
      allOf:
        - $ref: '#/components/schemas/HarnessWebhookTriggerSpec'
        - properties:
            actions:
              type: array
              items:
                type: string
                enum:
                  - Create
                  - Edit
                  - Delete
    CustomWebhookSpec:
      title: Custom Webhook Trigger Spec
      x-discriminator-value: Custom
      allOf:
        - $ref: '#/components/schemas/WebhookTriggerSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/CustomWebhookTriggerSpec'
    CustomWebhookTriggerSpec:
      title: Custom Webhook Trigger Spec
      type: object
      properties:
        header_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        payload_conditions:
          type: array
          items:
            $ref: '#/components/schemas/TriggerConditions'
        jexl_condition:
          type: string
    CronScheduledTriggerSpec:
      title: Cron Scheduled Trigger Spec
      type: object
      description: Spec for Cron Scheduled Triggers
      properties:
        type:
          type: string
        expression:
          type: string
    NGVariable:
      title: NG Variable
      type: object
      properties:
        type:
          type: string
          enum:
            - String
            - Number
        description:
          type: string
        required:
          type: boolean
        name:
          type: string
        metadata:
          type: string
      discriminator:
        propertyName: type
        mapping:
          String: '#/components/schemas/StringNGVariable'
          Number: '#/components/schemas/NumberNGVariable'
    StringNGVariable:
      title: String NG Variable
      x-discriminator-value: String
      allOf:
        - $ref: '#/components/schemas/NGVariable'
        - type: object
          properties:
            value:
              type: string
            default_value:
              type: string
    NumberNGVariable:
      title: Number NG Variable
      x-discriminator-value: String
      allOf:
        - $ref: '#/components/schemas/NGVariable'
        - type: object
          properties:
            value:
              type: double
            default_value:
              type: double
    TriggerResponseBody:
      title: Trigger Response Body
      type: object
      description: Pipeline response body
      properties:
        identifier:
          type: string
          description: Trigger identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
    TriggerGetResponseBody:
      title: Trigger Get Response Body
      description: Trigger response body.
      type: object
      properties:
        identifier:
          type: string
          description: Trigger identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Trigger name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Organization identifier
        project:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Project identifier
        pipeline:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Pipeline identifier
        description:
          type: string
          maxLength: 1024
          description: Trigger description
        trigger:
          $ref: '#/components/schemas/TriggerBody'
    TriggerBody:
      title: Trigger Body
      type: object
      description: 'Trigger object '
      properties:
        enabled:
          type: boolean
        encrypted_webhook_secret_identifier:
          type: string
        input_set_refs:
          type: array
          items:
            type: string
        inputs:
          type: string
          description: input yaml to be used in the pipeline
        pipeline_branch_name:
          type: string
        source:
          $ref: '#/components/schemas/TriggerSource'
        stages_to_execute:
          type: array
          items:
            type: string
        tags:
          type: object
          additionalProperties:
            type: string
      required:
        - identifier
        - name
        - source
    PipelineCreateRequestBody:
      title: Pipeline Create Request Body
      x-stoplight:
        id: jx4tb85rac1m5
      type: object
      description: 'Pipeline request body object '
      x-examples:
        example-pipeline:
          pipeline_yaml: |
            pipeline:
              identifier: example_pipeline
              name: ExamplePipeline
              allowStageExecutions: false
              stages:
                - stage:
                    name: Example Build Stage
                    identifier: example_build_stage
                    description: ''
                    type: Approval
                    spec:
                      execution:
                        steps:
                          - step:
                              name: Approval Step
                              identifier: Approval_Step
                              type: HarnessApproval
                              timeout: 1d
                              spec:
                                approvalMessage: |-
                                  Please review the following information
                                  and approve the pipeline progression
                                includePipelineExecutionHistory: true
                                approvers:
                                  minimumCount: 1
                                  disallowPipelineExecutor: false
                                  userGroups: <+input>
                                approverInputs: []
                          - step:
                              type: ShellScript
                              name: ShellScript Step
                              identifier: ShellScript_Step
                              spec:
                                shell: Bash
                                onDelegate: true
                                source:
                                  type: Inline
                                  spec:
                                    script: <+input>
                                environmentVariables: []
                                outputVariables: []
                                executionTarget: {}
                              timeout: 10m
                    tags: {}
                - stage:
                    name: Example Deploy Stage
                    identifier: example_deploy_stage
                    description: ''
                    type: Deployment
                    spec:
                      serviceConfig:
                        serviceRef: <+input>
                        serviceDefinition:
                          spec:
                            variables: []
                          type: Kubernetes
                      infrastructure:
                        environmentRef: <+input>
                        infrastructureDefinition:
                          type: KubernetesDirect
                          spec:
                            connectorRef: <+input>
                            namespace: <+input>
                            releaseName: release-<+INFRA_KEY>
                        allowSimultaneousDeployments: false
                      execution:
                        steps:
                          - step:
                              name: Rollout Deployment
                              identifier: rolloutDeployment
                              type: K8sRollingDeploy
                              timeout: 10m
                              spec:
                                skipDryRun: false
                        rollbackSteps:
                          - step:
                              name: Rollback Rollout Deployment
                              identifier: rollbackRolloutDeployment
                              type: K8sRollingRollback
                              timeout: 10m
                              spec: {}
                    tags: {}
                    failureStrategies:
                      - onFailure:
                          errors:
                            - AllErrors
                          action:
                            type: StageRollback
          identifier: example_pipeline
          name: ExamplePipeline
          description: Pipeline Description
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          git_details:
            branch_name: branch
            file_path: /folder/file.json
            commit_message: Added Harness Git Experience
            base_branch: old_branch
            connector_ref: git_connector
            store_type: REMOTE
            repo_name: example_repository
      properties:
        pipeline_yaml:
          type: string
          description: Pipeline YAML (to be passed as a String).
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Pipeline identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
          description: Pipeline name
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Pipeline tags
        git_details:
          $ref: '#/components/schemas/GitCreateDetails'
      required:
        - pipeline_yaml
        - identifier
        - name
    PipelineCreateResponseBody:
      title: Pipeline Create Response Body
      x-stoplight:
        id: 6k4p5yturlcz5
      type: object
      description: Pipeline response body
      x-examples:
        example-pipeline:
          identifier: example_pipeline
      properties:
        identifier:
          type: string
          description: Pipeline identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
    YAMLSchemaErrorWrapper:
      title: YAML Schema Error Wrapper
      x-stoplight:
        id: 6ricwo5b26l1o
      type: object
      description: YAML schema error.
      properties:
        message:
          type: string
          description: Error message
        message_fqn:
          type: string
          description: Error message with FQN
        stage_info:
          $ref: '#/components/schemas/NodeInfo'
          description: Stage where the error occcurred.
        step_info:
          $ref: '#/components/schemas/NodeInfo'
          description: Step where the error occcurred.
        fqn:
          type: string
          description: Fully Qualified Name as per YAML
        hint_message:
          type: string
          description: Hint message
      x-examples:
        example-schema-error:
          message: something is incorrect
          message_fqn: something is incorrect at pipeline.name
          stage_info:
            identifier: example_stage
            type: stage
            name: Example Stage
            fqn: pipeline.stages.stage
          step_info:
            identifier: example_step
            type: string
            name: string
            fqn: pipeline.steps.step
          fqn: pipeline.name
          hint_message: try changing something
    NodeInfo:
      title: Entity Details
      x-stoplight:
        id: ep3p8793dh95u
      type: object
      description: Entity details
      x-examples:
        example-node-info:
          identifier: example_stage
          type: stage
          name: name
          fqn: pipeline.stages.stage1.name
      properties:
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Entity identifier
        type:
          type: string
          description: Type of Entity
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
          description: Name of Entity
        fqn:
          type: string
          description: Fully Qualified Name
    RecentExecutionInfo:
      title: Recent Execution Information
      x-stoplight:
        id: da5de92572lcb
      type: object
      description: Recent Execution information of the Pipeline.
      properties:
        executor_info:
          $ref: '#/components/schemas/ExecutorInfo'
        execution_id:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Execution identifier
        execution_status:
          type: string
          description: Last Execution status of the Pipeline.
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
        started:
          type: integer
          format: int64
          description: Start timestamp of Execution
        ended:
          type: integer
          format: int64
          description: End timestamp of Execution
        run_number:
          type: integer
          format: int32
          description: The Execution number of this Pipeline.
          example: 0
        parent_stage_info:
          $ref: '#/components/schemas/ParentStageInfo'
      x-examples:
        example-recent:
          executor_info:
            trigger_type: NOOP
            username: harness_user
            email: noreply@harness.io
          execution_id: example_execution_identifier
          execution_status: Running
          started: 1234567890
          ended: 1234567890
          run_number: 5
    ExecutorInfo:
      title: Executor Information
      x-stoplight:
        id: 8osotc9o43pkq
      type: object
      description: Information regarding Executor of Pipeline.
      properties:
        trigger_type:
          type: string
          description: Trigger type
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
        username:
          type: string
          description: Username of the Executor.
        email:
          type: string
          description: Email address of the Executor.
      x-examples:
        example-executor:
          trigger_type: NOOP
          username: harness_user
          email: noreply@harness.io
    GitCreateDetails:
      title: Create Git Details
      x-stoplight:
        id: ksk60vtpcl9b2
      type: object
      description: Contains parameters related to creating an Entity for Git Experience.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          base_branch: old_branch
          connector_ref: git_connector
          store_type: REMOTE
          repo_name: example_repository
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          description: Specifies whether the Entity is to be stored in Git or not.
          enum:
            - INLINE
            - REMOTE
        repo_name:
          type: string
          description: Name of the repository.
    GitUpdateDetails:
      title: Update Git Details
      x-stoplight:
        id: rhs8tu7186l69
      type: object
      description: Contains parameters related to updating an Entity for Git Experience.
      x-examples:
        example-update-git:
          branch_name: branch
          commit_message: Added Harness Git Experience
          last_object_id: abcdXYZ
          base_branch: old_branch
          last_commit_id: abcdXYZ
          connector_ref: git_connector
          store_type: REMOTE
          repo_name: example_repository
          file_path: /folder/file.json
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        last_object_id:
          type: string
          description: Last object identifier (for Github only).
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        last_commit_id:
          type: string
          description: Last commit identifier.
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          enum:
            - INLINE
            - REMOTE
          description: Specifies whether the Entity is to be stored in Git or not.
        repo_name:
          type: string
          description: Name of the repository.
        file_path:
          type: string
    PipelineUpdateRequestBody:
      title: Pipeline Update Request Body
      x-stoplight:
        id: lrglwjl8trc3q
      type: object
      description: 'Pipeline request body object '
      x-examples:
        example-pipeline:
          pipeline_yaml: |
            pipeline:
              identifier: example_pipeline
              name: ExamplePipeline
              allowStageExecutions: false
              stages:
                - stage:
                    name: Example Build Stage
                    identifier: example_build_stage
                    description: ''
                    type: Approval
                    spec:
                      execution:
                        steps:
                          - step:
                              name: Approval Step
                              identifier: Approval_Step
                              type: HarnessApproval
                              timeout: 1d
                              spec:
                                approvalMessage: |-
                                  Please review the following information
                                  and approve the pipeline progression
                                includePipelineExecutionHistory: true
                                approvers:
                                  minimumCount: 1
                                  disallowPipelineExecutor: false
                                  userGroups: <+input>
                                approverInputs: []
                          - step:
                              type: ShellScript
                              name: ShellScript Step
                              identifier: ShellScript_Step
                              spec:
                                shell: Bash
                                onDelegate: true
                                source:
                                  type: Inline
                                  spec:
                                    script: <+input>
                                environmentVariables: []
                                outputVariables: []
                                executionTarget: {}
                              timeout: 10m
                    tags: {}
                - stage:
                    name: Example Deploy Stage
                    identifier: example_deploy_stage
                    description: ''
                    type: Deployment
                    spec:
                      serviceConfig:
                        serviceRef: <+input>
                        serviceDefinition:
                          spec:
                            variables: []
                          type: Kubernetes
                      infrastructure:
                        environmentRef: <+input>
                        infrastructureDefinition:
                          type: KubernetesDirect
                          spec:
                            connectorRef: <+input>
                            namespace: <+input>
                            releaseName: release-<+INFRA_KEY>
                        allowSimultaneousDeployments: false
                      execution:
                        steps:
                          - step:
                              name: Rollout Deployment
                              identifier: rolloutDeployment
                              type: K8sRollingDeploy
                              timeout: 10m
                              spec:
                                skipDryRun: false
                        rollbackSteps:
                          - step:
                              name: Rollback Rollout Deployment
                              identifier: rollbackRolloutDeployment
                              type: K8sRollingRollback
                              timeout: 10m
                              spec: {}
                    tags: {}
                    failureStrategies:
                      - onFailure:
                          errors:
                            - AllErrors
                          action:
                            type: StageRollback
          identifier: example_pipeline
          name: ExamplePipeline
          description: Pipeline Description
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          git_details:
            branch_name: branch
            commit_message: Added Harness Git Experience
            last_object_id: abcdXYZ
            base_branch: old_branch
            last_commit_id: abcdXYZ
            connector_ref: git_connector
            store_type: REMOTE
            repo_name: example_repository
      properties:
        pipeline_yaml:
          type: string
          description: Pipeline YAML (to be passed as a String).
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Pipeline identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
          description: Pipeline name
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Pipeline tags
        git_details:
          $ref: '#/components/schemas/GitUpdateDetails'
      required:
        - pipeline_yaml
        - identifier
        - name
    CacheResponseMetadataDTO:
      title: CacheResponseMetadataDTO
      x-stoplight:
        id: wh7v324i3oqd7
      type: object
      x-examples:
        example-1:
          cache_state: VALID_CACHE
          ttl_left: 9223372036854776000
          last_updated_at: 9223372036854776000
      properties:
        cache_state:
          type: string
          enum:
            - VALID_CACHE
            - STALE_CACHE
            - UNKNOWN
          description: Tells the state of cache.
        ttl_left:
          type: integer
          format: int64
          description: Time left till cache expriry.
        last_updated_at:
          type: integer
          format: int64
          description: Time when the cache was last updated at.
        is_sync_enabled:
          type: boolean
    InputSetCreateRequestBody:
      title: Input Set Create Request Body
      x-stoplight:
        id: 8edts07y7e861
      type: object
      description: Input Set create request body
      x-examples:
        example-input-set:
          input_set_yaml: |-
            inputSet:
                pipeline:
                    identifier: Example_Pipeline
                    stages:
                        - stage:
                              identifier: Example_Stage
                              type: Approval
                              spec:
                                  execution:
                                      steps:
                                          - step:
                                                identifier: Approval_Step
                                                type: HarnessApproval
                                                spec:
                                                    approvers:
                                                        userGroups:
                                                            - account.Admins
                                          - step:
                                                identifier: Shellscript_Step
                                                type: ShellScript
                                                spec:
                                                    source:\n                                            type: Inline
                                                        spec:\n                                                script: echo "ShellScript"
                        - stage:
                              identifier: Sample_Deploy_Stage
                              type: Deployment
                              spec:
                                  serviceConfig:
                                      serviceRef: Service1
                                  infrastructure:
                                      environmentRef: Env1
                                      infrastructureDefinition:
                                          type: KubernetesDirect
                                          spec:
                                              connectorRef: account.harnessciplatform
                                              namespace: sample
          identifier: example_input_set
          name: ExampleInputSet
          description: Input Set Description
          tags:
            property1: example-tag-1-value
            property2: example-tag-2-value
          git_details:
            branch_name: branch
            file_path: /folder/file.json
            commit_message: Added Harness Git Experience
            base_branch: old_branch
            connector_ref: git_connector
            store_type: INLINE
            repo_name: example_repository
      properties:
        input_set_yaml:
          type: string
          description: Input Set YAML (to be passed as a String).
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Input Set identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
          description: Input Set name
        description:
          type: string
          maxLength: 1024
          description: Input Set description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Input Set tags
        git_details:
          $ref: '#/components/schemas/GitCreateDetails'
      required:
        - input_set_yaml
        - identifier
        - name
    InputSetResponseBody:
      title: Input Set Response Body
      x-stoplight:
        id: qv6jrxhxt9r93
      type: object
      description: Response body for Input Set
      properties:
        input_set_yaml:
          type: string
          description: Input Set YAML (returned as a String).
        identifier:
          type: string
          description: Input Set identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Input Set name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        org:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Organization identifier
        project:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Project identifier
        pipeline:
          type: string
          description: Pipeline identifier
        description:
          type: string
          maxLength: 1024
          description: Input Set description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Input Set tags
        store_type:
          type: string
          description: >-
            Specifies whether the Entity is to be stored in Git or not (for Git
            Experience).
          enum:
            - INLINE
            - REMOTE
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        git_details:
          $ref: '#/components/schemas/GitDetails'
        created:
          type: integer
          description: Creation timestamp for Input Set.
          format: int64
        updated:
          type: integer
          description: Last modification timestamp for Input Set.
          format: int64
        error_details:
          $ref: '#/components/schemas/InputSetErrorDetails'
      x-examples:
        example-input-set:
          input_set_yaml: example_input_set_yaml
          identifier: example_input_set
          name: Example Input Set
          org: example_org
          project: example_project
          description: InputSet Description
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          git_details:
            object_id: example_object
            branch_name: branch
            file_path: /folder/file.json
            repo_name: example_repository
            commit_id: abcd123
            file_url: www.repo/folder/file.com
            repo_url: www.repo.com
          created: 1234567890
          updated: 9876543210
          error_details:
            valid: false
            message: Some fields in the Input Set are invalid.
            outdated: true
            error_pipeline_yaml: >
              serviceConfig:
              "pipeline.stages.example_deploy_stage.spec.serviceConfig"
            fqn_errors:
              - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
                errors:
                  - field_name: serviceConfig
                    message: Field not a runtime input
                    identifier_of_error_source: example_input_set
            invalid_refs:
              - example_invalid_input_set
    InputSetErrorDetails:
      title: Input Set Error Details
      x-stoplight:
        id: 9c1uhrh6csyh5
      type: object
      description: Error details regarding Input Sets.
      properties:
        valid:
          type: boolean
          description: Specifies whether Input Set is a valid or not.
        message:
          type: string
          description: Failure message for Input Set.
        outdated:
          type: boolean
          description: Input Set is outdated with respect to the Pipeline or not.
        error_pipeline_yaml:
          type: string
          description: >-
            If an Input Set save fails, this field contains the Pipeline YAML as
            a String, with the field values replaced by a UUID.
        fqn_errors:
          type: array
          items:
            $ref: '#/components/schemas/FQNtoError'
        invalid_refs:
          type: array
          description: List of Input Set References that are invalid.
          items:
            type: string
      x-examples:
        example-input-set-err:
          valid: false
          message: Some fields in the Input Set are invalid.
          outdated: true
          error_pipeline_yaml: >
            serviceConfig:
            "pipeline.stages.example_deploy_stage.spec.serviceConfig"
          fqn_errors:
            - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
              errors:
                - field_name: serviceConfig
                  message: Field not a runtime input
                  identifier_of_error_source: example_input_set
          invalid_refs:
            - example_invalid_input_set
    FQNtoError:
      title: FQN to Error
      x-stoplight:
        id: hu06g9aq5bo5e
      type: object
      description: FQN to error response mapper.
      x-examples:
        example-fqn-map:
          fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
          errors:
            - field_name: serviceConfig
              message: Field not a runtime input
              identifier_of_error_source: example_input_set
      properties:
        fqn:
          type: string
          description: Fully Qualified Name
        errors:
          type: array
          description: Errors in FQN
          items:
            $ref: '#/components/schemas/InputSetError'
    InputSetError:
      title: Input Set Error
      x-stoplight:
        id: 49aa5ekivpuej
      type: object
      description: Input Set error
      properties:
        field_name:
          type: string
          description: Field name that has an error.
        message:
          type: string
          description: Error description
        identifier_of_error_source:
          type: string
          description: Identifier of Input Set
      x-examples:
        example-error:
          field_name: serviceConfig
          message: Field not a runtime input
          identifier_of_error_source: example_input_set
    InputSetUpdateRequestBody:
      title: Input Set Update Request Body
      x-stoplight:
        id: 9nrhngh6a2y0i
      type: object
      description: Input Set update request body
      x-examples:
        example-input-set:
          input_set_yaml: |-
            inputSet:
                pipeline:
                    identifier: Example_Pipeline
                    stages:
                        - stage:
                              identifier: Example_Stage
                              type: Approval
                              spec:
                                  execution:
                                      steps:
                                          - step:
                                                identifier: Approval_Step
                                                type: HarnessApproval
                                                spec:
                                                    approvers:
                                                        userGroups:
                                                            - account.Admins
                                          - step:
                                                identifier: Shellscript_Step
                                                type: ShellScript
                                                spec:
                                                    source:\n                                            type: Inline
                                                        spec:\n                                                script: echo "ShellScript"
                        - stage:
                              identifier: Sample_Deploy_Stage
                              type: Deployment
                              spec:
                                  serviceConfig:
                                      serviceRef: Service1
                                  infrastructure:
                                      environmentRef: Env1
                                      infrastructureDefinition:
                                          type: KubernetesDirect
                                          spec:
                                              connectorRef: account.harnessciplatform
                                              namespace: sample
          identifier: example_input_set
          name: ExampleInputSet
          description: Input Set Description
          tags:
            property1: example-tag-1-value
            property2: example-tag-2-value
          git_details:
            branch_name: branch
            commit_message: Added Harness Git Experience
            last_object_id: abcdXYZ
            base_branch: old_branch
            last_commit_id: abcdXYZ
            parent_entity_connector_ref: git_connector
            parent_entity_repo_name: example_repository
      properties:
        input_set_yaml:
          type: string
          description: Input Set YAML (to be passed as a String).
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
          description: Input Set identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
          description: Input Set name
        description:
          type: string
          maxLength: 1024
          description: Input Set description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Input Set tags
        git_details:
          $ref: '#/components/schemas/InputSetGitUpdateDetails'
      required:
        - input_set_yaml
        - identifier
        - name
    InputSetGitUpdateDetails:
      title: InputSetGitUpdateDetails
      x-stoplight:
        id: 2re2q4nrc5uhn
      type: object
      description: Contains parameters related to updating an Input Set for Git Experience.
      x-examples:
        example-update-git:
          branch_name: branch
          commit_message: Added Harness Git Experience
          last_object_id: abcdXYZ
          base_branch: old_branch
          last_commit_id: abcdXYZ
          parent_entity_connector_ref: git_connector
          parent_entity_repo_name: example_repository
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        last_object_id:
          type: string
          description: Last object identifier (for Github only).
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        last_commit_id:
          type: string
          description: Last commit identifier.
        parent_entity_connector_ref:
          type: string
          description: Connector reference for Parent Entity (Pipeline).
        parent_entity_repo_name:
          type: string
          description: Repository name for Parent Entity (Pipeline).
    InputsResponseBody:
      title: Inputs Response Body
      x-stoplight:
        id: p68s65g8wdmfz
      type: object
      properties:
        inputs:
          type: object
        options:
          type: object
          properties:
            clone:
              type: object
              properties:
                ref:
                  type: object
                  properties:
                    type:
                      type: object
                    name:
                      type: object
      x-examples:
        example-inputs-response:
          inputs:
            key1:
              prompt: false
              required: false
              default: golang
              type: string
              desc: sample desc
            key2:
              prompt: true
              required: true
              type: string
              desc: sample desc
            key3:
              prompt: false
              required: false
              type: number
            key4:
              prompt: false
              required: true
              type: secret
              desc: sample desc
              enums:
                - enum1
                - enum2
          options:
            clone:
              ref:
                type:
                  prompt: false
                  required: true
                  type: string
                  enums:
                    - enum1
                    - enum2
                    - enum3
                name:
                  prompt: false
                  required: true
                  type: string
      description: Response Body for Pipeline Inputs
    ParentStageInfo:
      title: ParentStageInfo
      x-stoplight:
        id: tp7dtd5ejnalr
      type: object
      description: 'Information about parent pipeline '
      properties:
        has_parent_pipeline:
          type: boolean
          description: >-
            boolean to describe whether or not this was executed through
            pipeline chaining
        execution_id:
          type: string
          description: planExecutionId of parent pipeline execution
        identifier:
          type: string
          description: pipeline identifier of parent pipeline
        project_id:
          type: string
          description: project identifier
        org_id:
          type: string
          description: org identifier
        run_sequence:
          type: integer
          description: run sequence of parent pipeline execution
          format: int32
        stage_node_id:
          type: string
          description: node id of parent pipeline stage
    PipelineMoveConfigRequestBody:
      title: PipelineMoveConfigRequestBody
      x-stoplight:
        id: e2bs9nw5hspxz
      type: object
      description: Request body for moving a pipeline configuration
      properties:
        git_details:
          $ref: '#/components/schemas/GitMoveDetails'
        pipeline_identifier:
          type: string
        move_config_operation_type:
          $ref: '#/components/schemas/MoveConfigOperationType'
    PipelineMoveConfigResponseBody:
      title: PipelineMoveConfigResponseBody
      x-stoplight:
        id: c6sgrvhrg1e8c
      type: object
      description: Response body for configuration to move a pipeline
      properties:
        pipeline_identifier:
          type: string
    MoveConfigOperationType:
      type: string
      enum:
        - INLINE_TO_REMOTE
      description: Operation type to move the configuration
      x-stoplight:
        id: 4g4asyvl1x30z
    GitMoveDetails:
      title: Move Git Details
      x-stoplight:
        id: h9mvvh1pdo378
      type: object
      description: Parameters related to moving an entity for Git Experience.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          base_branch: old_branch
          connector_ref: git_connector
          repo_name: example_repository
      properties:
        branch_name:
          type: string
          description: >-
            Name of the branch. When moving an inline pipeline or a remote
            pipeline, this branch is where the remote entity is created or
            fetched.
        file_path:
          type: string
          description: File path of the entity in the repository.
        commit_message:
          type: string
          description: Merge commit message.
        base_branch:
          type: string
          description: Default branch name. This checks out the branch titled branch_name
        connector_ref:
          type: string
          description: Harness connector id used for entity CRUD operations
        repo_name:
          type: string
          description: Name of the repository.
    InputSetMoveConfigRequestBody:
      title: InputSetMoveConfigRequestBody
      x-stoplight:
        id: n08yyys6gjbuy
      type: object
      description: Request body for moving an input set configuration.
      properties:
        git_details:
          $ref: '#/components/schemas/GitMoveDetails'
        pipeline_identifier:
          type: string
        input_set_identifier:
          type: string
        move_config_operation_type:
          $ref: '#/components/schemas/MoveConfigOperationType'
    InputSetMoveConfigResponseBody:
      title: InputSetMoveConfigResponseBody
      x-stoplight:
        id: uelqspa0eldno
      type: object
      properties:
        input_set_identifier:
          type: string
      description: Response body for moving an input set configuration.
    TemplateValidationResponseBody:
      title: TemplateValidationResponseBody
      x-stoplight:
        id: 8pk30x8n20zyg
      type: object
      description: Has Template Resolution Response.
      properties:
        valid_yaml:
          type: boolean
        exception_message:
          type: string
    GitImportInfo:
      title: Import Git Information
      x-stoplight:
        id: 4r6psagtvh768
      type: object
      properties:
        connector_ref:
          type: string
        repo_name:
          type: string
        branch_name:
          type: string
        file_path:
          type: string
        is_force_import:
          type: boolean
      description: Parameters related to importing an entity for Git.
    PipelineImportRequestDTO:
      title: Pipeline Import Request DTO
      x-stoplight:
        id: aadgrtv4u40df
      type: object
      description: Information of Pipeline import request DTO
      properties:
        pipeline_name:
          type: string
        pipeline_description:
          type: string
    PolicyMetadata:
      title: Policy Metadata
      x-stoplight:
        id: p2269wuyf1jf0
      type: object
      description: Information about the policy metadata
      properties:
        policy_identifier:
          type: string
        policy_name:
          type: string
        severity:
          type: string
        deny_messages:
          type: array
          items:
            type: string
        status:
          type: string
        identifier:
          type: string
        account_identifier:
          type: string
        org_identifier:
          type: string
        project_identifier:
          type: string
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
        error:
          type: string
    PolicySetMetadata:
      title: Policy Set Metadata
      x-stoplight:
        id: 6rt2j8zojvs75
      type: object
      properties:
        policy_set_identifier:
          type: string
        deny:
          type: boolean
        policy_metadata:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadata'
        policy_set:
          type: string
        status:
          type: string
        identifier:
          type: string
        created:
          type: integer
          format: int64
        account_identifier:
          type: string
        org_identifier:
          type: string
        project_identifier:
          type: string
      description: Information about the policy set metadata
    GovernanceMetadata1:
      title: Governance Metadata
      x-stoplight:
        id: nivk63hm54yt5
      type: object
      description: Information about the governance metadata
      properties:
        identifier:
          type: string
        deny:
          type: boolean
        policy_set_metadata:
          type: array
          items:
            $ref: '#/components/schemas/PolicySetMetadata'
        message:
          type: string
        time_stamp:
          type: integer
        status:
          type: string
        account_identifier:
          type: string
        org_identifier:
          type: string
        project_identifier:
          type: string
        entity:
          type: string
        type:
          type: string
        action:
          type: string
        created:
          type: integer
          format: int64
    PipelineSaveResponseBody:
      title: Pipeline Save Response Body
      x-stoplight:
        id: v68h3jaccx83a
      type: object
      properties:
        identifier:
          type: string
        governance_metadata:
          type: array
          items:
            $ref: '#/components/schemas/GovernanceMetadata1'
      description: Response body for pipeline save.
    PipelineImportRequestBody:
      title: PipelineImportRequestBody
      x-stoplight:
        id: foro6hf58ib55
      type: object
      description: Pipeline import request body
      properties:
        git_import_info:
          $ref: '#/components/schemas/GitImportInfo'
        pipeline_import_request:
          $ref: '#/components/schemas/PipelineImportRequestDTO'
    InputSetImportRequestDTO:
      title: InputSet Import Request DTO
      x-stoplight:
        id: 1cwihgz3ewpmc
      type: object
      description: Information of InputSet import request DTO
      properties:
        input_set_name:
          type: string
        input_set_description:
          type: string
    InputSetImportRequestBody:
      title: InputSet Import Request Body
      x-stoplight:
        id: g9uxpfdotak6l
      type: object
      description: InputSet import request body
      properties:
        git_import_info:
          $ref: '#/components/schemas/GitImportInfo'
        input_set_import_request:
          $ref: '#/components/schemas/InputSetImportRequestDTO'
    InputSetImportResponseBody:
      title: InputSet Import Response Body
      x-stoplight:
        id: i10mr579d4243
      type: object
      properties:
        input_set_identifier:
          type: string
      description: Response body for Input Set import.
    ApprovalInstanceResponseBody:
      title: Approval Instance Response Body
      x-stoplight:
        id: hv15s7g83yh9i
      type: object
      description: Response body for Approval Instance
      properties:
        id:
          type: string
          description: Approval Instance identifier
        type:
          type: string
          enum:
            - HarnessApproval
            - JiraApproval
            - CustomApproval
            - ServiceNowApproval
          description: Tells the type of Approval
        status:
          type: string
          enum:
            - WAITING
            - APPROVED
            - REJECTED
            - FAILED
            - ABORTED
            - EXPIRED
          description: Tells the status of Approval
        deadline:
          type: integer
          format: int64
          description: Deadline timestamp for Approval Instance
        created:
          type: integer
          format: int64
          description: Creation timestamp for Approval Instance
        updated:
          type: integer
          format: int64
          description: Last modification timestamp for Approval Instance
        error_message:
          type: string
          description: Error message for the Approval Instance
        details:
          type: object
          description: Approval Instance response details
      x-examples:
        example-approval-instance:
          id: example_approval_instance
          type: HarnessApproval
          status: WAITING
          deadline: 1683953545329
          details:
            approvalMessage: |-
              Please review the following information
              and approve the pipeline progression
            includePipelineExecutionHistory: true
            approvers:
              userGroups:
                - example_usergroup_1
                - example_usergroup_2
              minimumCount: 3
              disallowPipelineExecutor: false
            approvalActivities: []
            approverInputs:
              - name: example_input_1
                defaultValue: example_value_1
              - name: example_input_2
                defaultValue: example_value_2
            validatedApprovalUserGroups:
              - accountIdentifier: example_account_identifier
                orgIdentifier: example_org_identifier
                projectIdentifier: example_project_identifier
                identifier: example_usergroup_1
                name: Example Usergroup 1
              - accountIdentifier: example_account_identifier
                orgIdentifier: example_org_identifier
                projectIdentifier: example_project_identifier
                identifier: example_usergroup_2
                name: Example Usergroup 2
            autoRejectEnabled: false
          created: 1683867145351
          updated: 1683867145351
          error_message: example error message
    GitMetadataUpdateRequestBody:
      title: GitMetadataUpdateRequestBody
      x-stoplight:
        id: 5dgkx1gdp5ht4
      type: object
      properties:
        connector_ref:
          type: string
          description: Harness connector id used for entity CRUD operations
        repo_name:
          type: string
          description: Name of the repository.
        file_path:
          type: string
          description: File path of the entity in the repository.
    GitMetadataUpdateResponseBody:
      title: GitMetadataUpdateResponseBody
      x-stoplight:
        id: cnycqmk3by4zk
      type: object
      properties:
        entity_identifier:
          type: string
          description: identifier of updated entity
    IndividualSchemaResponseBody:
      title: IndividualSchemaResponseBody
      x-stoplight:
        id: u6u4rebvyk94s
      type: object
      description: Individual Schema Response Body
      x-internal: true
      properties:
        data:
          type: object
          x-stoplight:
            id: dacggrrd1b58e
    PipelineExecuteResponseBody:
      title: PipelineExecuteResponseBody
      x-stoplight:
        id: zxuefpr014jtf
      type: object
      properties:
        execution_details:
          $ref: '#/components/schemas/ExecutionDetails'
    ExecutionDetails:
      title: ExecutionDetails
      x-stoplight:
        id: n5bobdu3qlotg
      type: object
      properties:
        execution_id:
          type: string
          x-stoplight:
            id: z4u8i0ndngb1l
        status:
          type: string
          x-stoplight:
            id: jqvvn4fj1nrdd
    StepsDataResponseBody:
      title: StepCategory
      type: object
      properties:
        name:
          type: string
        steps_data:
          type: array
          items:
            $ref: '#/components/schemas/StepData'
        step_categories:
          type: array
          items:
            $ref: '#/components/schemas/StepsDataResponseBody'
    StepData:
      title: StepData
      type: object
      properties:
        name:
          type: string
        type:
          type: string
        disabled:
          type: boolean
        feature_restriction_name:
          type: string
    PipelineInputSchemaDetailsResponseBody:
      title: PipelineInputSchemaDetailsResponseBody
      x-stoplight:
        id: 0tkmah5p4lgcr
      type: object
      properties:
        inputs:
          type: array
          x-stoplight:
            id: 9ujy24moia7go
          items:
            $ref: '#/components/schemas/PipelineYamlInputDetailsDTO'
      x-internal: true
    PipelineYamlInputDTO:
      title: PipelineYamlInputDTO
      x-stoplight:
        id: b76ha2p8ngn3m
      type: object
      x-internal: true
      properties:
        name:
          type: string
          x-stoplight:
            id: 23dnmvd66you2
        type:
          $ref: '#/components/schemas/YamlInputType'
        desc:
          type: string
          x-stoplight:
            id: klcxkypd8p8aj
        required:
          type: boolean
          x-stoplight:
            id: gnxq3c3xxjc9c
        execution:
          type: boolean
        default:
          type: object
          x-stoplight:
            id: pvsan66570urp
        allowed_values:
          type: array
          x-stoplight:
            id: bk45vjio3fdhb
          items: {}
        regex:
          type: string
    YamlInputType:
      title: YamlInputType
      x-stoplight:
        id: 9acp39t6wcuqk
      enum:
        - string
        - integer
        - boolean
        - object
        - array
      x-internal: true
      description: ''
    PipelineYamlInputMetadataDTO:
      title: PipelineYamlInputMetadataDTO
      x-stoplight:
        id: w72v0p3hxgsqk
      type: object
      x-internal: true
      properties:
        field_properties:
          x-stoplight:
            id: oi2cc5afutjom
          type: array
          items:
            $ref: '#/components/schemas/InputDetailsPerFieldDTO'
        dependencies:
          $ref: '#/components/schemas/YamlInputDependencyDetailsDTO'
    InputDetailsPerFieldDTO:
      title: InputDetailsPerFieldDTO
      x-stoplight:
        id: fh76c2nnwli3w
      type: object
      x-internal: true
      properties:
        input_type:
          type: string
          x-stoplight:
            id: d92j86p84m1t5
        internal_type:
          type: string
          x-stoplight:
            id: l3u49jd2dmz9o
    RuntimeInputDependencyDetailsDTO:
      title: RuntimeInputDependencyDetailsDTO
      x-stoplight:
        id: yzb8ohlc0azuq
      type: object
      x-internal: true
      properties:
        field_name:
          type: string
          x-stoplight:
            id: eirxgebz4n1zc
        input_name:
          type: string
          x-stoplight:
            id: 9bsov65akownz
    FixedValueFieldDependencyDetailsDTO:
      title: FixedValueFieldDependencyDetailsDTO
      x-stoplight:
        id: i5ryzcskudmpk
      type: object
      x-internal: true
      properties:
        field_name:
          type: string
          x-stoplight:
            id: sc9sb358djjt6
        field_input_type:
          type: string
          x-stoplight:
            id: 6g0pzc9dxfzd7
        field_value:
          type: object
          x-stoplight:
            id: gdbrt5uxk44lh
    YamlInputDependencyDetailsDTO:
      title: YamlInputDependencyDetailsDTO
      x-stoplight:
        id: o5k0f3ximyim7
      type: object
      x-internal: true
      properties:
        required_runtime_inputs:
          type: array
          x-stoplight:
            id: ajse16mvdyb3l
          items:
            $ref: '#/components/schemas/RuntimeInputDependencyDetailsDTO'
        required_fixed_values:
          type: array
          x-stoplight:
            id: z4034kxnx5cqk
          items:
            $ref: '#/components/schemas/FixedValueFieldDependencyDetailsDTO'
    PipelineYamlInputDetailsDTO:
      title: PipelineYamlInputDetailsDTO
      x-stoplight:
        id: npt13s20sr6db
      type: object
      properties:
        details:
          $ref: '#/components/schemas/PipelineYamlInputDTO'
        metadata:
          $ref: '#/components/schemas/PipelineYamlInputMetadataDTO'
      x-internal: true
    StepPalleteFilterRequestBody:
      title: StepPalleteFilterWrapper
      type: object
      properties:
        step_pallete_module_infos:
          type: array
          items:
            $ref: '#/components/schemas/StepPalleteModuleInfo'
        version:
          type: string
    StepPalleteModuleInfo:
      title: StepPalleteModuleInfo
      type: object
      properties:
        module:
          type: string
        category:
          type: string
        should_show_common_steps:
          type: boolean
        common_step_category:
          type: string
    PipelineInputsSchemaRequestBody:
      title: PipelineInputsSchemaRequestBody
      x-stoplight:
        id: lqov4pteet3mu
      type: object
      properties:
        pipeline_yaml:
          type: string
          x-stoplight:
            id: xdltgg8ykrc2t
    PipelinePatchRequestBody:
      title: PipelinePatchRequestBody
      x-stoplight:
        id: 3utb53wrarno2
      type: object
      x-examples:
        Example 1:
          pipeline_yaml: |
            pipeline:
              identifier: example_pipeline
              name: ExamplePipeline
              allowStageExecutions: false
              stages:
                - stage:
                    name: Example Build Stage
                    identifier: example_build_stage
                    description: ''
                    type: Approval
                    spec:
                      execution:
                        steps:
                          - step:
                              name: Approval Step
                              identifier: Approval_Step
                              type: HarnessApproval
                              timeout: 1d
                              spec:
                                approvalMessage: |-
                                  Please review the following information
                                  and approve the pipeline progression
                                includePipelineExecutionHistory: true
                                approvers:
                                  minimumCount: 1
                                  disallowPipelineExecutor: false
                                  userGroups: <+input>
                                approverInputs: []
                          - step:
                              type: ShellScript
                              name: ShellScript Step
                              identifier: ShellScript_Step
                              spec:
                                shell: Bash
                                onDelegate: true
                                source:
                                  type: Inline
                                  spec:
                                    script: <+input>
                                environmentVariables: []
                                outputVariables: []
                                executionTarget: {}
                              timeout: 10m
                    tags: {}
                - stage:
                    name: Example Deploy Stage
                    identifier: example_deploy_stage
                    description: ''
                    type: Deployment
                    spec:
                      serviceConfig:
                        serviceRef: <+input>
                        serviceDefinition:
                          spec:
                            variables: []
                          type: Kubernetes
                      infrastructure:
                        environmentRef: <+input>
                        infrastructureDefinition:
                          type: KubernetesDirect
                          spec:
                            connectorRef: <+input>
                            namespace: <+input>
                            releaseName: release-<+INFRA_KEY>
                        allowSimultaneousDeployments: false
                      execution:
                        steps:
                          - step:
                              name: Rollout Deployment
                              identifier: rolloutDeployment
                              type: K8sRollingDeploy
                              timeout: 10m
                              spec:
                                skipDryRun: false
                        rollbackSteps:
                          - step:
                              name: Rollback Rollout Deployment
                              identifier: rollbackRolloutDeployment
                              type: K8sRollingRollback
                              timeout: 10m
                              spec: {}
                    tags: {}
                    failureStrategies:
                      - onFailure:
                          errors:
                            - AllErrors
                          action:
                            type: StageRollback
          name: ExamplePipeline
          desc: Pipeline Description
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          git_details:
            branch_name: branch
            commit_message: Added Harness Git Experience
            last_object_id: abcdXYZ
            base_branch: old_branch
            last_commit_id: abcdXYZ
            connector_ref: git_connector
            store_type: REMOTE
            repo_name: example_repository
      description: >-
        Pipeline Patch Request body (All the non empty values in this request
        body will be updated).
      properties:
        pipeline_yaml:
          type: string
          description: Pipeline YAML (to be passed as a String).
        name:
          type: string
          description: Pipeline Name.
        desc:
          type: string
          description: Pipeline Description.
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Pipeline Tags.
        git_details:
          $ref: '#/components/schemas/GitUpdateDetails'
        version:
          type: string
          description: Version of pipeline yaml, should be one of "0" or "1"
    MergeInputSetRequestBody:
      title: MergeInputSetRequestBody
      x-stoplight:
        id: k5st1k03q3tdm
      type: object
      properties:
        input_set_references:
          type: array
          x-stoplight:
            id: wcpksws2ddm8o
          description: List of Input Set References to be merged
          items:
            x-stoplight:
              id: iqji388ebim3m
            type: string
        with_merged_pipeline_yaml:
          type: boolean
          x-stoplight:
            id: 59mojf9htbss4
          description: >-
            This is a boolean value that indicates if the response must contain
            the YAML for the merged Pipeline. The default value is False.
          default: false
        stage_identifiers:
          type: array
          x-stoplight:
            id: 1p0gidwvhedap
          description: >-
            List of Stage Ids. Input Sets corresponding to these Ids will be
            merged.
          items:
            x-stoplight:
              id: h7h4eg79nt7mm
            type: string
        last_yaml_to_merge:
          type: string
          x-stoplight:
            id: 1ml6olvzhv44g
          description: >-
            Runtime Input Yaml needed to be merged into the result of the merged
            Yaml of the inputSetReferences
        get_only_file_content:
          type: boolean
          x-stoplight:
            id: wa02yytjz3utc
          description: To be set true if we want to set user flow in thread context
          default: false
    MergeInputSetResponseBody:
      title: MergeInputSetResponseBody
      x-stoplight:
        id: nyl6mxy742g0r
      type: object
      properties:
        inputs_yaml_merged:
          type: string
          x-stoplight:
            id: zema5grm0k2ay
          description: Merged YAML of all the Input Sets
        merged_pipeline_yaml:
          type: string
          x-stoplight:
            id: mhqdz2vtie51i
          description: Pipeline YAML after merging with the Input Sets
        is_error_response:
          type: boolean
          x-stoplight:
            id: gl7jmu6lfdr97
          description: This field is true if the merging is not possible
        inputset_error_wrapper:
          $ref: '#/components/schemas/InputSetErrorWrapperDTO'
    InputSetErrorWrapperDTO:
      title: InputSetErrorWrapperDTO
      x-stoplight:
        id: myvczjgywe83u
      type: object
      properties:
        error_pipeline_yaml:
          type: string
          x-stoplight:
            id: zlmqxv0u9x8st
          description: >-
            If an Input Set save fails, this field contains the error fields,
            with the field values replaced with a UUID
        uuid_to_error_response_map:
          type: object
          x-stoplight:
            id: er8nwjuhq2tsr
          description: >-
            If an Input Set save fails, this field contains the map from FQN to
            why that FQN threw an error
        invalid_inputset_references:
          type: array
          x-stoplight:
            id: l73msd4aptj36
          description: List of Input Sets that are invalid
          items:
            x-stoplight:
              id: 1ci5txn9wsel4
            type: string
    RerunPipelineRequest:
      title: RerunPipelineRequest
      x-stoplight:
        id: sybat01ihsx1t
      type: object
      properties:
        inputs_yaml:
          type: string
          x-stoplight:
            id: bt7mcmrltbaed
          description: >-
            Inputs YAML if the pipeline contains runtime inputs. This will be
            empty by default if pipeline does not contains runtime inputs
    HarnessApprovalActivityRequestBody:
      title: HarnessApprovalActivityRequestBody
      x-stoplight:
        id: 6275zymqpajs4
      type: object
      description: Request Body for Harness Approval Activity
      x-examples:
        Example 1:
          comments: string
          action: APPROVE
          approver_inputs:
            - name: example_input_1
              value: example_value_1
            - name: example_input_2
              value: example_value_2
      properties:
        comments:
          type: string
          x-stoplight:
            id: t5byrddc8d24t
        action:
          type: string
          x-stoplight:
            id: nlvwxygogm3s2
          enum:
            - APPROVE
            - REJECT
          minLength: 0
        approver_inputs:
          type: array
          x-stoplight:
            id: 18sx7nj8ihxym
          items:
            $ref: '#/components/schemas/ApproverInputDTO'
    ApproverInputDTO:
      title: ApproverInputDTO
      x-stoplight:
        id: mc7808h6bnsue
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: k8yfcg1h5zlnn
          minLength: 1
        value:
          type: string
          x-stoplight:
            id: spxgshivv83fx
          minLength: 0
      description: Approver Input DTO
    StageExecutionResponseList:
      title: StageExecutionResponseList
      x-stoplight:
        id: jpq696fbwhqrc
      type: array
      items:
        $ref: '#/components/schemas/StageExecutionResponseBody'
      x-internal: true
    StageExecutionResponseBody:
      title: StageExecutionResponseBody
      x-stoplight:
        id: iyueximu9l079
      type: object
      description: This contains info about a Pipeline Stage needed for stage execution.
      properties:
        stage_identifier:
          type: string
          x-stoplight:
            id: 7egt86y9e44ys
          description: Stage Identifier
        stage_name:
          type: string
          x-stoplight:
            id: f6w9hmz8gjl4c
          description: Stage Name
        message:
          type: string
          x-stoplight:
            id: 5d49qpxupxqwj
          description: Warning message for Selective stage execution.
        is_to_be_blocked:
          type: boolean
          x-stoplight:
            id: pr0l1xidr6g09
          description: >-
            Checks if there is a dependency and stage cannot be run
            individually.
        stages_required:
          type: array
          x-stoplight:
            id: u3z0ui7bo3kly
          description: >-
            Stages that needs to be ran along with this stage as there is a
            dependency.
          items:
            x-stoplight:
              id: 11db0z1kb8mef
            type: string
    RunStageRequestBody:
      title: RunStageRequestBody
      x-stoplight:
        id: h8mxoegrz962h
      type: object
      description: Request Parameters needed to run specific Stages of a Pipeline.
      properties:
        inputs_yaml:
          type: string
          x-stoplight:
            id: x5gp39vwvsfqa
          description: Inputs yaml of the Pipeline.
        stage_identifiers:
          type: array
          x-stoplight:
            id: k07ndws6g4c06
          description: List of stages to run.
          items:
            x-stoplight:
              id: 15rh571azguqa
            type: string
        expression_values:
          type: object
          additionalProperties:
            type: string
          x-stoplight:
            id: nu0wje2ij62n4
          description: >-
            If any selected stage to execute has expressions, then this map
            contains expressions with its corresponding values.
    PipelineExecuteRequestBody:
      title: PipelineExecuteRequestBody
      x-stoplight:
        id: ewyvhqpxsefmi
      type: object
      properties:
        inputs_yaml:
          type: string
          x-stoplight:
            id: nuc124clughh4
          description: Inputs YAML if the Pipeline contains Runtime Inputs
      x-examples:
        Example 1:
          inputs_yaml: |-
            pipeline:
              identifier: pipelineIdentifier
              stages:
                - stage:
                    identifier: stage1
                    type: Custom
                    spec:
                      execution:
                        steps:
                          - step:
                              identifier: ShellScript_1
                              type: ShellScript
                              spec:
                                source:
                                  type: Inline
                                  spec:
                                    script: echo hello
                              timeout: 10s
    TemplateResponse:
      title: templateResponse
      x-stoplight:
        id: f4ndtnn4ympdy
      type: object
      description: Default response when a template is returned
      x-examples:
        example-1:
          account: example_account
          org: example_organization
          project: example_project
          identifier: example_template
          name: Example_template
          description: string
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          yaml: |
            template:
              name: Example_template
              identifier: example_template
              versionLabel: v1
              type: Stage
              tags: {}
              spec:
                type: Custom
                spec:
                  execution:
                    steps:
                      - step:
                          type: ShellScript
                          name: ss1
                          identifier: ss1
                          spec:
                            shell: Bash
                            onDelegate: true
                            source:
                              type: Inline
                              spec:
                                script: exit 1
                            environmentVariables: []
                            outputVariables: []
                          timeout: 10m
          version_label: example_version
          entity_type: Stage
          child_type: example_child_type
          scope: org
          version: 1234567890
          git_details:
            object_id: example_object
            branch_name: branch
            file_path: /folder/file.json
            repo_name: example_repository
            commit_id: abcd123
            file_url: www.repo/folder/file.com
            repo_url: www.repo.com
          updated: 1234567890
          store_type: INLINE
          connector_ref: example_connector_ref
          stable_template: true
      properties:
        account:
          type: string
          description: Account identifier
        org:
          type: string
          description: Organization identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Template identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Template Name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Template description
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Template tags
          maxProperties: 128
        yaml:
          type: string
          description: Yaml related to template
        version_label:
          type: string
          description: Version label of template
        entity_type:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
          description: |
            Type of Template
        child_type:
          type: string
          description: Defines child template type
        scope:
          type: string
          enum:
            - org
            - project
            - account
            - unknown
          description: Scope of template
        updated:
          type: integer
          format: int64
          description: |
            Last modification timestamp for Service.
        version:
          type: integer
          format: int64
          description: Version of template
        git_details:
          $ref: '#/components/schemas/EntityGitDetails'
        store_type:
          type: string
          enum:
            - INLINE
            - REMOTE
          description: >-
            Specifies whether the Entity is to be stored in Git or not (for Git
            Experience).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        yaml_version:
          type: string
          description: Specifies the yaml version of the template
        stable_template:
          type: boolean
          description: True if this version is stable version of Template
      required:
        - account
        - identifier
        - name
        - yaml
    TemplateMetadataSummaryResponse:
      title: TemplateMetadataSummaryResponse
      x-stoplight:
        id: nscqj4urwiqnf
      type: object
      x-examples:
        example-1:
          account: example_account
          org: example_organization
          project: example_project
          identifier: example_template
          name: Example_template
          description: string
          tags:
            example-tag-1: example-tag-1-value
            example-tag-2: example-tag-2-value
          version_label: example_version
          entity_type: Step
          child_type: example_child_type
          scope: org
          version: 1234567890
          git_details:
            object_id: example_object
            branch_name: branch
            file_path: /folder/file.json
            repo_name: example_repository
            commit_id: abcd123
            file_url: www.repo/folder/file.com
            repo_url: www.repo.com
          updated: 1234567890
          store_type: INLINE
          connector_ref: example_connector_ref
          stable_template: true
      description: Single Template Metadata Model
      properties:
        account:
          type: string
          description: Account identifier
        org:
          type: string
          description: Organization identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Template identifier
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Template Name
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: Template description
          maxLength: 1024
        tags:
          type: object
          additionalProperties:
            type: string
          description: Template tags
          maxProperties: 128
        version_label:
          type: string
          description: Version label of template
        entity_type:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
          description: |
            Type of Template
        child_type:
          type: string
          description: Defines child template type
        scope:
          type: string
          enum:
            - org
            - project
            - account
            - unknown
          description: Scope of template
        version:
          type: integer
          format: int64
          description: Version of template
        git_details:
          $ref: '#/components/schemas/EntityGitDetails'
        updated:
          type: integer
          format: int64
          description: |
            Last modification timestamp for Service.
        store_type:
          type: string
          enum:
            - INLINE
            - REMOTE
          description: >-
            Specifies whether the Entity is to be stored in Git or not (for Git
            Experience).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity (for Git Experience).
        yaml_version:
          type: string
          description: Specifies the yaml version of the template
        stable_template:
          type: boolean
          description: True if this version is stable version of Template
    TemplateWithInputsResponse:
      title: templateWithInputsResponse
      x-stoplight:
        id: 6fzq3le3gyie2
      type: object
      x-examples:
        example-1:
          template:
            account: example_account
            org: example_organization
            project: example_project
            identifier: example_template
            name: Example_template
            description: string
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
            yaml: |
              template:
                name: Example_template
                identifier: example_template
                versionLabel: v1
                type: Stage
                tags: {}
                spec:
                  type: Custom
                  spec:
                    execution:
                      steps:
                        - step:
                            type: ShellScript
                            name: ss1
                            identifier: ss1
                            spec:
                              shell: Bash
                              onDelegate: true
                              source:
                                type: Inline
                                spec:
                                  script: exit 1
                              environmentVariables: []
                              outputVariables: []
                            timeout: 10m
            version_label: example_version
            entity_type: Stage
            child_type: example_child_type
            scope: org
            version: 1234567890
            git_details:
              object_id: example_object
              branch_name: branch
              file_path: /folder/file.json
              repo_name: example_repository
              commit_id: abcd123
              file_url: www.repo/folder/file.com
              repo_url: www.repo.com
            updated: 1234567890
            store_type: INLINE
            connector_ref: example_connector_ref
            stable_template: true
          inputs: example
      description: Returns Template input YAML with template response
      properties:
        template:
          $ref: '#/components/schemas/TemplateResponse'
        inputs:
          type: string
          description: Input Yaml for the Template
    TemplateMetaDataList:
      title: TemplateMetaDataList
      x-stoplight:
        id: k684ta51ybafb
      type: array
      items:
        $ref: '#/components/schemas/TemplateMetadataSummaryResponse'
      x-examples:
        example-1:
          - account: example_account
            org: example_organization
            project: example_project
            identifier: example_template
            name: Example_template
            description: string
            tags:
              example-tag-1: example-tag-1-value
              example-tag-2: example-tag-2-value
            version_label: example_version
            entity_type: Step
            child_type: example_child_type
            scope: org
            version: 1234567890
            git_details:
              object_id: example_object
              branch_name: branch
              file_path: /folder/file.json
              repo_name: example_repository
              commit_id: abcd123
              file_url: www.repo/folder/file.com
              repo_url: www.repo.com
            updated: 1234567890
            store_type: INLINE
            connector_ref: example_connector_ref
            stable_template: true
      description: Template Meta Data List Model
    EntityGitDetails:
      title: entityGitDetails
      x-stoplight:
        id: tswyoxlluku7h
      type: object
      description: Git Experience related details of the Entity.
      x-examples:
        example-git:
          object_id: example_object
          branch_name: branch
          file_path: /folder/file.json
          repo_name: example_repository
          commit_id: abcd123
          file_url: www.repo/folder/file.com
          repo_url: www.repo.com
      properties:
        object_id:
          type: string
          description: Entity identifier
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        repo_name:
          type: string
          description: Name of the repository.
        commit_id:
          type: string
          description: Latest commit identifier.
        file_url:
          type: string
          description: File URL of the Entity.
        repo_url:
          type: string
          description: Repository URL of the Entity.
    GitFindDetails:
      title: GitFindDetails
      x-stoplight:
        id: gqzd5g4smch1i
      type: object
      x-examples:
        example-1:
          branch_name: branch
          parent_entity_connector_ref: example_connector_ref
          parent_entity_repo_name: example_repo_name
          parent_entity_account_id: example_account_id
          parent_entity_org_id: example_org_id
          parent_entity_project_id: example_project_id
          comments: sample_comments
      description: Contains parameters related to Fetching an Entity for Git Experience.
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        parent_entity_connector_ref:
          type: string
          description: Connector ref of parent template if its remote
        parent_entity_repo_name:
          type: string
          description: Repo name of parent template if its remote
        parent_entity_account_id:
          type: string
          description: Account name of parent template if its remote
        parent_entity_org_id:
          type: string
          description: Organization name of parent template if its remote
        parent_entity_project_id:
          type: string
          description: Project name of parent entity if its remote
        comments:
          type: string
          description: 'Specify comment with respect to changes  '
    GitCreateDetails1:
      title: Create Git Details
      x-stoplight:
        id: m4q2n9rjsrqre
      type: object
      description: Contains parameters related to creating an Entity for Git Experience.
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          description: Specifies whether the Entity is to be stored in Git or not.
          enum:
            - INLINE
            - REMOTE
        repo_name:
          type: string
          description: Name of the repository.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          base_branch: old_branch
          connector_ref: git_connector
          store_type: INLINE
          repo_name: example_repository
    GitUpdateDetails1:
      title: GitUpdateDetails
      x-stoplight:
        id: 7k1zp5afx03m5
      type: object
      description: Contains parameters related to Updating an Entity for Git Experience.
      x-examples:
        example-1:
          branch_name: branch
          commit_message: Added Harness Git Experience
          last_object_id: example_object_id
          base_branch: old_branch
          connector_ref: git_connector
          last_commit_id: example_commit_id
          file_path: /folder/file.json
          repo_name: example_repository
          store_type: INLINE
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        last_object_id:
          type: string
          description: Last object identifier (for Github).
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        last_commit_id:
          type: string
          description: Last commit identifier (for Git Repositories other than Github).
        file_path:
          type: string
          description: File path of the Entity in the repository.
        repo_name:
          type: string
          description: Name of the repository.
        store_type:
          type: string
          description: Specifies whether the Entity is to be stored in Git or not.
          enum:
            - INLINE
            - REMOTE
    TemplateUpdateRequestBody:
      title: TemplateUpdateRequestBody
      x-stoplight:
        id: l48rfx4q8xoez
      type: object
      x-examples:
        example-2:
          template_yaml: |
            template:
              name: Example_template
              identifier: example_template
              versionLabel: v1
              type: Stage
              tags: {}
              spec:
                type: Custom
                spec:
                  execution:
                    steps:
                      - step:
                          type: ShellScript
                          name: ss1
                          identifier: ss1
                          spec:
                            shell: Bash
                            onDelegate: true
                            source:
                              type: Inline
                              spec:
                                script: exit 1
                            environmentVariables: []
                            outputVariables: []
                          timeout: 10m
          git_details:
            branch_name: branch
            commit_message: Added Harness Git Experience
            last_object_id: example_object_id
            base_branch: old_branch
            connector_ref: git_connector
            last_commit_id: example_commit_id
            file_path: /folder/file.json
            repo_name: example_repository
            store_type: INLINE
          comments: sample_comment
      description: Templates Update Request Body
      properties:
        template_yaml:
          type: string
          description: Yaml for updating existing Template
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          maxLength: 128
          description: Template identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          maxLength: 128
          description: Template name
        label:
          type: string
          maxLength: 128
          description: Template version label
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Template tags
        git_details:
          $ref: '#/components/schemas/GitUpdateDetails1'
        comments:
          type: string
          description: 'Specify comment with respect to changes  '
    TemplateCreateRequestBody:
      title: TemplateCreateRequestBody
      x-stoplight:
        id: c0h9d4wu3gp1t
      type: object
      x-examples:
        example-2:
          template_yaml: |
            template:
              name: Example_template
              identifier: example_template
              versionLabel: v1
              type: Stage
              tags: {}
              spec:
                type: Custom
                spec:
                  execution:
                    steps:
                      - step:
                          type: ShellScript
                          name: ss1
                          identifier: ss1
                          spec:
                            shell: Bash
                            onDelegate: true
                            source:
                              type: Inline
                              spec:
                                script: exit 1
                            environmentVariables: []
                            outputVariables: []
                          timeout: 10m
          git_details:
            branch_name: branch
            file_path: /folder/file.json
            commit_message: Added Harness Git Experience
            base_branch: old_branch
            connector_ref: git_connector
            store_type: INLINE
            repo_name: example_repository
          is_stable: true
          comments: sample_comment
      description: Templates Create Request Body
      properties:
        template_yaml:
          type: string
          description: Yaml for creating new Template
        identifier:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          maxLength: 128
          description: Template identifier
        name:
          type: string
          pattern: ^[a-zA-Z_][0-9a-zA-Z-_ ]{0,127}$
          maxLength: 128
          description: Template name
        label:
          type: string
          maxLength: 128
          description: Template version label
        description:
          type: string
          maxLength: 1024
          description: Pipeline description
        tags:
          type: object
          additionalProperties:
            type: string
          maxProperties: 128
          description: Template tags
        git_details:
          $ref: '#/components/schemas/GitCreateDetails1'
        is_stable:
          type: boolean
          description: True if given version for template to be set as stable
        comments:
          type: string
          description: 'Specify comment with respect to changes  '
    TemplateUpdateStableResponse:
      title: TemplateUpdateStableResponse
      x-stoplight:
        id: u5l3jvjb83olc
      type: object
      properties:
        stable_version:
          type: string
          description: |
            Version which is set as stable for the given Template
      description: Template stable version update Response
    GitImportDetails:
      title: Git Import Details
      x-stoplight:
        id: sehprm5mfy45y
      type: object
      description: Contains parameters related to importing an Entity for Git Experience.
      properties:
        connector_ref:
          type: string
        repo_name:
          type: string
        branch_name:
          type: string
        file_path:
          type: string
        is_force_import:
          type: boolean
    TemplateImportRequestDTO:
      title: Template Import Request DTO
      x-stoplight:
        id: 63n2xm1nikjdq
      type: object
      description: Information of Tempalte import request DTO
      properties:
        template_name:
          type: string
        template_version:
          type: string
        template_description:
          type: string
    TemplateImportRequestBody:
      title: TemplateImportRequestBody
      x-stoplight:
        id: lix6vu1rny248
      type: object
      description: Template Import Request Body
      properties:
        git_import_details:
          $ref: '#/components/schemas/GitImportDetails'
        template_import_request:
          $ref: '#/components/schemas/TemplateImportRequestDTO'
    TemplateImportResponseBody:
      title: TemplateImportResponseBody
      x-stoplight:
        id: xw3yrxry48fu7
      type: object
      description: Contains the Template details for the given Template ID and version
      properties:
        template_identifier:
          type: string
        template_version:
          type: string
    TemplateSchemaResponse:
      title: TemplateSchemaResponse
      x-stoplight:
        id: n1td5vx0eu2vk
      type: object
      properties:
        data:
          type: object
          x-stoplight:
            id: 99sossqbii1t8
    TemplateInputsSchemaRequestBody:
      title: TemplateInputsSchemaRequestBody
      x-stoplight:
        id: wtnkdfjxlpbf9
      type: object
      properties:
        template_yaml:
          type: string
          x-stoplight:
            id: 0dygishjagf6i
      x-internal: true
    TemplateInputSchemaDetailsResponseBody:
      title: TemplateInputSchemaDetailsResponseBody
      x-stoplight:
        id: wvz1hgoax3ska
      type: object
      properties:
        inputs:
          type: array
          x-stoplight:
            id: 464f72eow2zn4
          items:
            $ref: '#/components/schemas/TemplateYamlInputDetailsDTO'
      x-internal: true
    TemplateYamlInputDetailsDTO:
      title: TemplateYamlInputDetailsDTO
      x-stoplight:
        id: g5ji5k9iuyk9l
      type: object
      x-internal: true
      properties:
        details:
          $ref: '#/components/schemas/TemplateYamlInputDTO'
        metadata:
          $ref: '#/components/schemas/TemplateYamlInputMetadataDTO'
    TemplateYamlInputDTO:
      title: TemplateYamlInputDTO
      x-stoplight:
        id: zojl0rh1u9u81
      type: object
      x-internal: true
      properties:
        name:
          type: string
          x-stoplight:
            id: oepfx9e71dzj8
        type:
          $ref: '#/components/schemas/YamlInputType1'
        description:
          type: string
          x-stoplight:
            id: vdyum5jk9it57
        required:
          type: boolean
          x-stoplight:
            id: umadwvxy635o6
        default:
          type: object
          x-stoplight:
            id: u8zbjrv0hehch
        allowed_values:
          type: array
          x-stoplight:
            id: pv16b1m7i8qny
          items: {}
        execution:
          type: boolean
        regex:
          type: string
    TemplateYamlInputMetadataDTO:
      title: TemplateYamlInputMetadataDTO
      x-stoplight:
        id: ualwerzlsrm1a
      type: object
      x-internal: true
      properties:
        field_properties:
          type: array
          x-stoplight:
            id: 3qnzd0bsqj2ls
          items:
            $ref: '#/components/schemas/InputDetailsPerFieldDTO1'
        dependencies:
          $ref: '#/components/schemas/YamlInputDependencyDetailsDTO1'
    InputDetailsPerFieldDTO1:
      title: InputDetailsPerFieldDTO
      x-stoplight:
        id: 1pwsuzht6te0l
      type: object
      x-internal: true
      properties:
        input_type:
          type: string
          x-stoplight:
            id: x2gyzuy7skrlw
        internal_type:
          type: string
          x-stoplight:
            id: eye30wp6mepd5
        entity_type:
          x-stoplight:
            id: p9imuzgb7t32y
          enum:
            - STAGE
            - STEP
            - STEP_GROUP
        stage_type:
          type: string
          x-stoplight:
            id: ub8c360xgz03j
    RuntimeInputDependencyDetailsDTO1:
      title: RuntimeInputDependencyDetailsDTO
      x-stoplight:
        id: n8vk0pc2nad3z
      type: object
      x-internal: true
      properties:
        field_name:
          type: string
          x-stoplight:
            id: lspf0jnh5w2l3
        input_name:
          type: string
          x-stoplight:
            id: tcgmg70o492mo
    FixedValueFieldDependencyDetailsDTO1:
      title: FixedValueFieldDependencyDetailsDTO
      x-stoplight:
        id: stlkmcdnxr18s
      type: object
      x-internal: true
      properties:
        field_name:
          type: string
          x-stoplight:
            id: qh0pclbjju6jt
        field_input_type:
          type: string
          x-stoplight:
            id: zfomitzu7f1im
        field_value:
          type: object
          x-stoplight:
            id: cz4447uq4hsa0
    YamlInputDependencyDetailsDTO1:
      title: YamlInputDependencyDetailsDTO
      x-stoplight:
        id: sl4wcsg8oqg9v
      type: object
      x-internal: true
      properties:
        required_runtime_inputs:
          type: array
          x-stoplight:
            id: s7xwk2kcpgfy9
          items:
            $ref: '#/components/schemas/RuntimeInputDependencyDetailsDTO1'
        required_fixed_values:
          type: array
          x-stoplight:
            id: f1fuo7tkrhfbc
          items:
            $ref: '#/components/schemas/FixedValueFieldDependencyDetailsDTO1'
    YamlInputType1:
      title: YamlInputType
      x-stoplight:
        id: pp5fe7khunidf
      x-internal: true
      description: ''
      enum:
        - String
        - Integer
        - Boolean
        - Object
        - Array
    TemplateUpdateGitMetadataRequest:
      title: TemplateUpdateGitMetadataRequest
      x-stoplight:
        id: wdpzwf5cvc42j
      type: object
      description: Lists down request params for template update git details request
      properties:
        version:
          type: string
          x-stoplight:
            id: 79rrzmtkuum7w
        git_details:
          $ref: '#/components/schemas/GitDetailsMetadata'
    GitDetailsMetadata:
      title: GitDetailsMetadata
      x-stoplight:
        id: xmwhsx3n9xspz
      type: object
      properties:
        file_path:
          type: string
          x-stoplight:
            id: uuwrwacmycuiq
        repo_name:
          type: string
          x-stoplight:
            id: y8zpewva1udkw
        connector_ref:
          type: string
          x-stoplight:
            id: 8bcrgefkubqwn
      description: Git Details
    BackstageEnvVariable:
      title: BackstageEnvVariable
      x-stoplight:
        id: nxqrkraenk753
      type: object
      description: Backstage Env Variable
      discriminator:
        propertyName: type
        mapping:
          Config: '#/components/schemas/BackstageEnvConfigVariable'
          Secret: '#/components/schemas/BackstageEnvSecretVariable'
      x-examples: {}
      properties:
        identifier:
          type: string
          x-stoplight:
            id: qcqog9dhfhhtn
        env_name:
          type: string
          x-stoplight:
            id: 0br1k8e9y4vds
        created:
          type: integer
          x-stoplight:
            id: jnkz49ajqu2ep
          format: int64
        updated:
          type: integer
          x-stoplight:
            id: f7vn66lecbehz
          format: int64
        type:
          type: string
          x-stoplight:
            id: bkpapdothjik6
          description: This specifies the type of backstage env variable
          enum:
            - Config
            - Secret
      required:
        - env_name
        - type
    BackstageEnvSecretVariable:
      title: BackstageEnvSecretVariable
      x-stoplight:
        id: 3h8ht8pko3bgz
      x-discriminator-value: Secret
      allOf:
        - $ref: '#/components/schemas/BackstageEnvVariable'
          x-stoplight:
            id: qv79339cmwg5d
        - type: object
          properties:
            type:
              type: string
              enum:
                - Secret
            harness_secret_identifier:
              type: string
              x-stoplight:
                id: ah15yig0jo9yb
            is_deleted:
              type: boolean
              x-stoplight:
                id: uvmj7ylwufxzc
              default: false
          required:
            - type
            - harness_secret_identifier
      x-examples: {}
    BackstageEnvConfigVariable:
      title: BackstageEnvConfigVariable
      x-stoplight:
        id: cfxzxi44zeq3o
      x-discriminator-value: Config
      allOf:
        - $ref: '#/components/schemas/BackstageEnvVariable'
          x-stoplight:
            id: x9612fuvup1yq
        - type: object
          properties:
            type:
              type: string
              enum:
                - Config
            value:
              type: string
              x-stoplight:
                id: ae2vnipczbvso
          required:
            - type
            - value
      x-examples: {}
    BackstageEnvVariableRequest:
      x-stoplight:
        id: e7t9o0ci4dra4
      type: object
      properties:
        env_variable:
          $ref: '#/components/schemas/BackstageEnvVariable'
          x-stoplight:
            id: t8p54gz9pdy56
    BackstageEnvVariableBatchRequest:
      type: object
      x-stoplight:
        id: psykwh06yxbkz
      properties:
        env_variables:
          x-stoplight:
            id: mw78dt912nzqn
          type: array
          items:
            $ref: '#/components/schemas/BackstageEnvVariable'
            x-stoplight:
              id: i0vefhckdjymq
      required:
        - env_variables
    BackstageEnvVariableResponse:
      x-stoplight:
        id: np7bj0rjx6gb4
      type: object
      properties:
        env_variable:
          $ref: '#/components/schemas/BackstageEnvVariable'
          x-stoplight:
            id: ru3parenuqcu1
      required:
        - env_variable
    BackstagePermissions:
      title: BackstagePermissions
      x-stoplight:
        id: 72bfwtpdjs4gp
      type: object
      properties:
        identifer:
          type: string
        permissions:
          type: array
          items:
            type: string
        user_group:
          type: string
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
    BackstagePermissionsRequest:
      title: BackstagePermissionsRequest
      x-stoplight:
        id: bz71o9x8asb9x
      type: object
      properties:
        data:
          $ref: '#/components/schemas/BackstagePermissions'
    BackstagePermissionsResponse:
      title: BackstagePermissionsResponse
      x-stoplight:
        id: 9jbg25376fnzb
      type: object
      properties:
        data:
          $ref: '#/components/schemas/BackstagePermissions'
    StatusInfo:
      title: StatusInfo
      x-stoplight:
        id: ruez3ex7rum35
      type: object
      properties:
        current_status:
          type: string
          enum:
            - COMPLETED
            - RUNNING
            - PENDING
            - FAILED
            - NOT_FOUND
          x-stoplight:
            id: 8knrzjhaghevh
        reason:
          type: string
        updated_at:
          type: integer
          format: int64
          x-stoplight:
            id: 0pmjyab6nkwlz
    StatusInfoResponse:
      title: StatusInfoResponse
      x-stoplight:
        id: ve56lidgcjifs
      type: object
      properties:
        status:
          $ref: '#/components/schemas/StatusInfo'
    StatusInfoRequest:
      title: StatusInfoRequest
      x-stoplight:
        id: f45q501vlt9iy
      type: object
      properties:
        status:
          $ref: '#/components/schemas/StatusInfo'
    StatusInfoV2:
      title: StatusInfoV2
      x-stoplight:
        id: ygx956s72iibx
      type: object
      additionalProperties:
        $ref: '#/components/schemas/StatusInfo'
    NamespaceInfo:
      title: NamespaceInfo
      x-stoplight:
        id: sxxrqv7oorngr
      type: object
      description: Namespace response body content
      properties:
        account_identifier:
          type: string
          x-stoplight:
            id: hg3qtosqgdfhd
        namespace:
          type: string
    NamespaceResponse:
      $ref: '#/components/schemas/NamespaceInfo'
      x-stoplight:
        id: 4qd30h9fn9u7r
      description: Namespace response body
    CatalogConnectorInfo:
      title: CatalogConnectorInfo
      x-stoplight:
        id: wpk4fmntpbtlj
      type: object
      description: Details of IDP catalog connector
      properties:
        connector:
          $ref: '#/components/schemas/ConnectorDetails'
          x-stoplight:
            id: gep9rdz9yhwyy
        repo:
          type: string
        branch:
          type: string
        path:
          type: string
      required:
        - connector
        - repo
        - branch
        - path
    HarnessEntitiesCountResponse:
      title: HarnessEntitiesCountResponse
      x-stoplight:
        id: 2wzkhrjbcg4d5
      type: object
      x-examples: {}
      description: Response for harness entities count that can be imported to IDP
      properties:
        org_count:
          type: integer
          x-stoplight:
            id: gbvcwogico9cd
        project_count:
          type: integer
          x-stoplight:
            id: h7se69ebe6tn5
        service_count:
          type: integer
      required:
        - org_count
        - project_count
        - service_count
    HarnessEntitiesResponse:
      title: HarnessEntitiesResponse
      x-stoplight:
        id: fz2subwqrbh5p
      type: object
      x-examples: {}
      description: Response for harness entities mapping with backstage entities
      properties:
        harness_backstage_entities:
          x-stoplight:
            id: 29gtwmx9rtbtj
          type: array
          items:
            $ref: '#/components/schemas/HarnessBackstageEntities'
            x-stoplight:
              id: xljavofzn2x2t
      required:
        - harness_backstage_entities
    ImportEntitiesResponse:
      title: ImportEntitiesResponse
      x-stoplight:
        id: kvv6lxzsebamz
      type: object
      description: Response for import / save harness entities to IDP
      properties:
        status:
          type: string
      required:
        - status
    EntitiesForImport:
      title: EntitiesForImport
      x-stoplight:
        id: ruicl5da2sloc
      type: object
      description: Details of Harness Entities to import
      x-examples: {}
      properties:
        identifier:
          type: string
          minLength: 1
        entity_type:
          type: string
      required:
        - identifier
        - entity_type
    HarnessBackstageEntities:
      title: HarnessBackstageEntities
      x-stoplight:
        id: x43sybn2ad4n7
      type: object
      description: Harness entities mapping with backstage entities
      properties:
        name:
          type: string
        system:
          type: string
        owner:
          type: string
        type:
          type: string
        identifier:
          type: string
        entity_type:
          type: string
      required:
        - name
        - system
        - owner
        - type
        - identifier
        - entity_type
    ConnectorDetails:
      title: ConnectorDetails
      x-stoplight:
        id: ydmrv3krwpyvr
      type: object
      properties:
        identifier:
          type: string
        type:
          type: string
          enum:
            - Github
            - Gitlab
            - Bitbucket
            - AzureRepo
      required:
        - identifier
        - type
      description: Connector details containing identifier and type
    LayoutResponse:
      title: LayoutResponse
      x-stoplight:
        id: 2oxnq9iinuf3b
      type: object
    PluginInfo:
      title: PluginInfo
      x-stoplight:
        id: rjdikftbwq4ku
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: 08dcllgfdjnnf
        name:
          type: string
          x-stoplight:
            id: cs8sf1p0u0h6m
        created_by:
          type: string
          x-stoplight:
            id: muu0fnhfcfnq0
        icon_url:
          type: string
          x-stoplight:
            id: qi63qdmfx4ozx
        description:
          type: string
          x-stoplight:
            id: f3f9a3v15p8qx
        category:
          type: string
          x-stoplight:
            id: 2hcvvko282w2b
        source:
          type: string
          x-stoplight:
            id: 86jybcrx3x9hy
        image_url:
          type: string
        images:
          type: array
          x-stoplight:
            id: tn689mqkfth94
          items:
            x-stoplight:
              id: ybfwwjy9ere6h
            type: string
        documentation:
          type: string
          x-stoplight:
            id: g8pxx4u72mjyo
        core:
          type: boolean
          x-stoplight:
            id: h6xd4qngysrvl
        enabled:
          type: boolean
          x-stoplight:
            id: dye1mgrxvvkhj
        plugin_type:
          type: string
          x-stoplight:
            id: 3afv43ng1qibj
          enum:
            - DEFAULT
            - CUSTOM
      required:
        - id
    PluginInfoResponse:
      title: PluginInfoResponse
      x-stoplight:
        id: bzim96q2jdydq
      type: object
      properties:
        plugin:
          $ref: '#/components/schemas/PluginInfo'
          x-stoplight:
            id: b8e9wv7c3q2hb
      required:
        - plugin
    PluginDetailedInfoResponse:
      title: PluginDetailedInfoResponse
      x-stoplight:
        id: yga377lrqvzo3
      type: object
      properties:
        plugin:
          $ref: '#/components/schemas/PluginDetailedInfo'
          x-stoplight:
            id: bge1kvlvygjky
      required:
        - plugin
    PluginDetailedInfo:
      title: PluginDetailedInfo
      x-stoplight:
        id: 4mgb2xlg0qmuz
      allOf:
        - $ref: '#/components/schemas/PluginDetails'
        - type: object
          properties:
            env_variables:
              x-stoplight:
                id: dbvndzvgirvhx
              type: array
              items:
                $ref: '#/components/schemas/BackstageEnvSecretVariable'
            saved:
              type: boolean
              x-stoplight:
                id: zc7gzaskute7h
            proxy:
              x-stoplight:
                id: iihf5kiywsyft
              type: array
              items:
                $ref: '#/components/schemas/ProxyHostDetail'
          required:
            - env_variables
            - saved
    LayoutRequest:
      title: LayoutRequest
      x-stoplight:
        id: n3rez2nr7kmq8
      type: object
      description: LayoutRequest
      properties:
        name:
          type: string
          x-stoplight:
            id: 62gmaga7buqi8
        id:
          type: string
          x-stoplight:
            id: z450ysix2zvwr
        yaml:
          type: string
          x-stoplight:
            id: ukdiglik4ggu9
        display_name:
          type: string
          x-stoplight:
            id: s2pk8alyj2gu9
        default_yaml:
          type: string
          x-stoplight:
            id: phhefjzpsdh1n
        type:
          type: string
          x-stoplight:
            id: i20q57lnsmop8
    AppConfig:
      title: AppConfig
      x-stoplight:
        id: ts8hhn08e9vs2
      type: object
      x-examples: {}
      properties:
        config_id:
          type: string
          x-stoplight:
            id: kba02ulkoob1v
        configs:
          type: string
          x-stoplight:
            id: xu807wjtsvqdt
        enabled:
          type: boolean
          x-stoplight:
            id: ogzhdfovajswl
        enabled_disabled_at:
          type: integer
          x-stoplight:
            id: 8j2nftcvualpg
          format: int64
        created:
          type: integer
          x-stoplight:
            id: i50aktg8l2epd
          format: int64
        updated:
          type: integer
          x-stoplight:
            id: gal7ubavtkx3x
          format: int64
        env_variables:
          type: array
          x-stoplight:
            id: mc8b52k1x79v6
          items:
            $ref: '#/components/schemas/BackstageEnvSecretVariable'
        config_name:
          type: string
          x-stoplight:
            id: 78nnii26gge61
        proxy:
          type: array
          x-stoplight:
            id: 1lk21ekhaopkw
          items:
            $ref: '#/components/schemas/ProxyHostDetail'
      required:
        - config_id
        - configs
        - env_variables
        - config_name
    AppConfigRequest:
      title: AppConfigRequest
      x-stoplight:
        id: 8u5xpqsuu97n7
      type: object
      properties:
        app_config:
          $ref: '#/components/schemas/AppConfig'
          x-stoplight:
            id: qrcvsst79yc3s
      required:
        - app_config
    AppConfigResponse:
      title: AppConfigResponse
      x-stoplight:
        id: mc5yfk7d3r4ba
      type: object
      properties:
        app_config:
          $ref: '#/components/schemas/AppConfig'
          x-stoplight:
            id: puouuvu1gjvy9
      required:
        - app_config
    ConnectorInfoRequest:
      title: ConnectorInfoRequest
      x-stoplight:
        id: 5y4kxxar10u79
      type: object
      properties:
        connector_details:
          $ref: '#/components/schemas/ConnectorDetails'
          x-stoplight:
            id: cwhdaxsijquis
    ConnectorInfoResponse:
      title: ConnectorInfoResponse
      x-stoplight:
        id: crky8aoeysb9z
      type: object
      properties:
        connector_details:
          $ref: '#/components/schemas/ConnectorDetails'
          x-stoplight:
            id: j9y6qs9p3gym7
      required:
        - connector_details
    Exports:
      title: Exports
      x-stoplight:
        id: krtrvpv2bw4rh
      type: object
      properties:
        pages:
          type: integer
          x-stoplight:
            id: z2sng2p0ckvs4
          default: 0
        tab_contents:
          type: integer
          x-stoplight:
            id: tv8hce8pm873b
          default: 0
        cards:
          type: integer
          x-stoplight:
            id: gvkk56i32twnh
          default: 0
        default_entity_types:
          type: array
          x-stoplight:
            id: jfdg348v4fwk7
          items:
            x-stoplight:
              id: zvqn4vs5z9xa8
            type: string
        export_details:
          x-stoplight:
            id: entxahp0fgx74
          type: array
          items:
            $ref: '#/components/schemas/ExportDetails'
            x-stoplight:
              id: 0sb28udqqiknj
      required:
        - pages
        - tab_contents
        - cards
        - default_entity_types
        - export_details
    MergedPluginConfigs:
      title: MergedPluginConfigs
      x-stoplight:
        id: udd3rjj6vabp6
      type: object
      description: Merged Config for all Enabled Plugins.
      properties:
        config:
          type: string
          x-stoplight:
            id: 1xlvst25jqan6
        env_variables:
          type: array
          x-stoplight:
            id: 626hhepixlmvj
          items:
            $ref: '#/components/schemas/BackstageEnvSecretVariable'
        proxy:
          type: array
          x-stoplight:
            id: 9nyhtn38boka8
          items:
            $ref: '#/components/schemas/ProxyHostDetail'
      required:
        - config
        - env_variables
        - proxy
    MergedPluginConfigResponse:
      title: MergedPluginConfigResponse
      x-stoplight:
        id: ze6z3c1qi8cdy
      type: object
      description: Merged Config for all Enabled Plugins Response.
      properties:
        merged_config:
          $ref: '#/components/schemas/MergedPluginConfigs'
          x-stoplight:
            id: syzo1w7sp9ent
      required:
        - merged_config
    RequestPlugin:
      x-stoplight:
        id: r5zm7ltki4p8f
      type: object
      title: RequestPluginRequest
      description: Details of the plugin being requested
      properties:
        name:
          type: string
          x-stoplight:
            id: 56azi08e1q53b
        creator:
          type: string
          x-stoplight:
            id: 595gabner523j
        package_link:
          type: string
          x-stoplight:
            id: 92ietipnvu0ta
        doc_link:
          type: string
          x-stoplight:
            id: pgttm4b0sqx6l
      required:
        - name
        - creator
        - package_link
        - doc_link
    PluginRequestResponseList:
      title: PluginRequestResponseList
      x-stoplight:
        id: 5yzb7rxns0aw0
      type: object
      properties:
        plugin_requests:
          type: array
          x-stoplight:
            id: hi8z7q7omjfak
          items:
            $ref: '#/components/schemas/RequestPlugin'
            x-stoplight:
              id: la7xiemqky7f9
      required:
        - plugin_requests
      description: Returns all plugin requests for an account
    ExportDetails:
      title: ExportDetails
      x-stoplight:
        id: lh3kww6at9n87
      type: object
      properties:
        type:
          type: string
          x-stoplight:
            id: 69io5n1al727m
        name:
          type: string
          x-stoplight:
            id: rk3j3ohhxfadq
        add_by_default:
          type: boolean
          x-stoplight:
            id: yv6e7c9c2eyv6
        default_route:
          type: string
          x-stoplight:
            id: lg3iy2r2zvqhb
        layout_schema_specs:
          type: object
          x-stoplight:
            id: kqd59lko12kls
      required:
        - type
        - name
    PluginDetails:
      title: PluginDetails
      x-stoplight:
        id: 560styu7fppwf
      type: object
      properties:
        plugin_details:
          $ref: '#/components/schemas/PluginInfo'
          x-stoplight:
            id: ar7hkpjerml0u
        config:
          type: string
          x-stoplight:
            id: 4yr6y6r9zxzdi
        exports:
          $ref: '#/components/schemas/Exports'
          x-stoplight:
            id: 43cv9jhplzytw
      required:
        - plugin_details
    LayoutIngestRequest:
      title: LayoutIngestRequest
      x-stoplight:
        id: 2251c3uansb5q
      type: object
      properties:
        operation_type:
          type: string
          x-stoplight:
            id: gcfmlu2g6tt5c
        exports:
          $ref: '#/components/schemas/Exports'
      required:
        - operation_type
        - exports
    GenerateYamlRequest:
      title: GenerateYamlRequest
      x-stoplight:
        id: cn0x8iu87ivzy
      type: object
      properties:
        entities:
          type: array
          x-stoplight:
            id: 8o9n97v686wpz
          items:
            $ref: '#/components/schemas/EntitiesForImport'
            x-stoplight:
              id: rx3oubfzkg2hs
      required:
        - entities
      description: >-
        Request to generate yaml for any one entity if provided or generate
        sample entity yaml definition
    GenerateYamlResponse:
      title: GenerateYamlResponse
      x-stoplight:
        id: fqxr0lo87mlj0
      type: object
      description: >-
        Response contianing entity yaml definition and description about the
        entity
      properties:
        generated_yaml:
          type: object
          x-stoplight:
            id: hjwmleg6046p3
          required:
            - yaml_def
            - description
          properties:
            yaml_def:
              type: string
              x-stoplight:
                id: qotajwzqf534c
            description:
              type: string
              x-stoplight:
                id: 3p4vjjkwbtd5y
      required:
        - generated_yaml
      x-examples: {}
    AllEntitiesImport:
      title: AllEntitiesImport
      x-stoplight:
        id: 3r72pc3y3erap
      allOf:
        - $ref: '#/components/schemas/ImportEntitiesBase'
        - type: object
          x-stoplight:
            id: 0ianrzf5ba6oh
      x-discriminator-value: All
      description: Import all harness entities
    SampleEntitiesImport:
      title: SampleEntitiesImport
      x-stoplight:
        id: xt3i3mxzwvw72
      description: Import sample entities
      x-discriminator-value: Sample
      allOf:
        - $ref: '#/components/schemas/ImportEntitiesBase'
          x-stoplight:
            id: o9o37jc32kwzg
        - type: object
          x-stoplight:
            id: wcobxw9zw5zd7
    IndividualEntitiesImport:
      title: IndividualEntitiesImport
      x-stoplight:
        id: 7xwaog4uuvc4o
      x-discriminator-value: Individual
      description: Import selected harness entities
      allOf:
        - $ref: '#/components/schemas/ImportEntitiesBase'
        - type: object
          x-stoplight:
            id: v6vwz8qkzfhb0
          properties:
            entities:
              x-stoplight:
                id: 5x3bh3crbn9pk
              type: array
              items:
                $ref: '#/components/schemas/EntitiesForImport'
                x-stoplight:
                  id: 86duhaoxpz5b8
          required:
            - entities
    ImportEntitiesBase:
      title: ImportEntitiesBase
      x-stoplight:
        id: 3rlp8p98fnstv
      type: object
      description: Abstract base for import entities
      discriminator:
        propertyName: type
        mapping:
          All: '#/components/schemas/AllEntitiesImport'
          Individual: '#/components/schemas/IndividualEntitiesImport'
          Sample: '#/components/schemas/SampleEntitiesImport'
      properties:
        type:
          type: string
          x-stoplight:
            id: z551lvgusdf0y
          enum:
            - All
            - Individual
            - Sample
        catalog_connector_info:
          $ref: '#/components/schemas/CatalogConnectorInfo'
          x-stoplight:
            id: ir8u1tzc1jeti
      required:
        - type
        - catalog_connector_info
    AuthInfoResponse:
      title: AuthInfoResponse
      x-stoplight:
        id: ctsz2r10gqssu
      type: object
      properties:
        authInfo:
          $ref: '#/components/schemas/AuthInfo'
      required:
        - authInfo
    AuthInfo:
      title: AuthInfo
      x-stoplight:
        id: 4ei89ktvaipss
      type: object
      properties:
        namespace:
          x-stoplight:
            id: ewnnxtnilgp7l
          type: string
        env_variables:
          x-stoplight:
            id: l3t9hclkkyyra
          type: array
          items:
            $ref: '#/components/schemas/BackstageEnvVariable'
      required:
        - namespace
        - env_variables
    HostInfo:
      title: HostInfo
      x-stoplight:
        id: 4m8jc4pxxby9f
      type: object
      properties:
        host:
          type: string
          x-stoplight:
            id: ji4h19dfwg66n
        paths:
          type: array
          x-stoplight:
            id: mjabx4tv4s831
          items:
            x-stoplight:
              id: bq9qhlppl7zi8
            type: string
      required:
        - host
    AllowListRequest:
      title: AllowListRequest
      x-stoplight:
        id: 5o03n024p61gx
      type: object
      properties:
        allow:
          type: array
          x-stoplight:
            id: jhtlvv958icdw
          items:
            $ref: '#/components/schemas/HostInfo'
      required:
        - allow
    AllowListResponse:
      title: AllowListResponse
      x-stoplight:
        id: lp085fjchryu3
      type: object
      properties:
        allow:
          x-stoplight:
            id: g0yx33mk3sgcb
          type: array
          items:
            $ref: '#/components/schemas/HostInfo'
      required:
        - allow
    ProxyHostDetail:
      title: ProxyHostDetail
      x-stoplight:
        id: agl6s9vai35qw
      type: object
      description: Proxy Host Detail
      properties:
        host:
          type: string
          x-stoplight:
            id: oudzqrxaqnkjy
        proxy:
          type: boolean
          x-stoplight:
            id: 3h03au3y87lyv
        selectors:
          type: array
          x-stoplight:
            id: jdgn49nqlp49k
          items:
            x-stoplight:
              id: zvnhr2daor8lr
            type: string
        identifier:
          type: string
          x-stoplight:
            id: soyi91ysmnt8u
        pluginId:
          type: string
          x-stoplight:
            id: 7we0dzf0ap7v7
      required:
        - host
        - proxy
    ConfigurationEntities:
      title: ConfigurationEntities
      x-stoplight:
        id: irav1h1h46nfk
      type: object
      properties:
        env_variables:
          type: array
          x-stoplight:
            id: 75xycs21qycvx
          items:
            $ref: '#/components/schemas/BackstageEnvVariable'
        proxy:
          type: array
          x-stoplight:
            id: cxy39vfdsd9yb
          items:
            $ref: '#/components/schemas/ProxyHostDetail'
      required:
        - env_variables
        - proxy
    ResolvedEnvVariable:
      title: ResolvedEnvVariable
      x-stoplight:
        id: 76ik03lvpra6i
      type: object
      x-examples:
        Example 1:
          env_name: GITHUB_TOKEN
          decrypted_value: abc
      properties:
        env_name:
          type: string
          x-stoplight:
            id: koje4ebc0ae9g
        decrypted_value:
          type: string
          x-stoplight:
            id: zmpbpdmhxf3pk
    ResolvedEnvVariableResponse:
      title: ResolvedEnvVariableResponse
      x-stoplight:
        id: 2dlc8i0aobls7
      type: object
      x-examples:
        Example 1:
          resolved_env_variable:
            env_name: GITHUB_TOKEN
            decrypted_value: abc
      properties:
        resolved_env_variables:
          type: string
    Check:
      title: Check
      x-stoplight:
        id: d3s3zmsa21jqu
      type: object
      description: Check
      properties:
        identifier:
          type: string
          x-stoplight:
            id: u2xn1u2797lk3
        name:
          type: string
          x-stoplight:
            id: 0livvjhoy8g3l
        description:
          type: string
          x-stoplight:
            id: f7xb30y8u47he
        expression:
          type: string
          x-stoplight:
            id: 5g5fqsfh15x7r
        tags:
          type: array
          x-stoplight:
            id: mnwbadmsdi09d
          items:
            x-stoplight:
              id: fitl6f8ktom9c
            type: string
        custom:
          type: boolean
          x-stoplight:
            id: 04nibhaa1qklq
      required:
        - identifier
        - name
        - custom
      x-internal: false
    CheckListItem:
      title: CheckListItem
      x-stoplight:
        id: 3t9wuamv3qncv
      description: CheckListItem
      allOf:
        - $ref: '#/components/schemas/Check'
        - type: object
          x-stoplight:
            id: wfv08rzs6qabm
          properties:
            data_source:
              type: array
              x-stoplight:
                id: e6b90f62ht5fy
              items:
                x-stoplight:
                  id: nl4f2bigcjdmv
                type: string
            percentage:
              type: number
              x-stoplight:
                id: kj6pmchmlzqn6
              format: double
              minimum: 0
              maximum: 100
          required:
            - data_source
      x-internal: false
    CheckResponse:
      title: CheckResponse
      x-stoplight:
        id: 8mglhh62xeh5i
      type: object
      properties:
        check:
          $ref: '#/components/schemas/CheckListItem'
      x-internal: false
    CheckDetails:
      title: CheckDetails
      x-stoplight:
        id: lv03ixht7mprr
      allOf:
        - $ref: '#/components/schemas/Check'
        - type: object
          properties:
            rule_strategy:
              x-stoplight:
                id: vozvk20qb8f54
              type: string
              enum:
                - ALL_OF
                - ANY_OF
            rules:
              type: array
              items:
                $ref: '#/components/schemas/Rule'
            harness_managed:
              type: boolean
              x-stoplight:
                id: 98xzkzfnubveg
            default_behaviour:
              x-stoplight:
                id: cdrzuq88hk9lo
              type: string
              enum:
                - PASS
                - FAIL
            fail_message:
              type: string
              x-stoplight:
                id: mqml3k84x10ot
            percentage:
              type: number
              x-stoplight:
                id: kp6ptdhmpvqn7
              format: double
              minimum: 0
              maximum: 100
          required:
            - rule_strategy
            - rules
            - default_behaviour
      x-internal: false
    CheckDetailsRequest:
      title: CheckDetailsRequest
      x-stoplight:
        id: 386kfxi3e1k1m
      type: object
      properties:
        check_details:
          $ref: '#/components/schemas/CheckDetails'
      x-internal: false
    CheckDetailsResponse:
      title: CheckDetailsResponse
      x-stoplight:
        id: 1wcwdvydnld0x
      type: object
      properties:
        check_details:
          $ref: '#/components/schemas/CheckDetails'
      required:
        - check_details
      x-internal: false
    Rule:
      title: Rule
      x-stoplight:
        id: 3heyk9rwc10qi
      type: object
      x-internal: false
      properties:
        identifier:
          type: string
          x-stoplight:
            id: e3xw4o7mbekr2
        data_source_identifier:
          type: string
          x-stoplight:
            id: 1vt7g30hh6uh3
        data_point_identifier:
          type: string
          x-stoplight:
            id: g7l2155ej66ti
        operator:
          type: string
          x-stoplight:
            id: w06lgfpzf7czd
        value:
          type: string
          x-stoplight:
            id: ektxg0uwq30y7
        input_values:
          type: array
          x-stoplight:
            id: cllifz4ua1knq
          items:
            $ref: '#/components/schemas/InputValue'
      required:
        - data_source_identifier
        - data_point_identifier
        - operator
        - value
    ScorecardChecks:
      title: ScorecardChecks
      x-stoplight:
        id: cyvlqdjbff44c
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: je2zi36q1g4po
        weightage:
          type: number
          x-stoplight:
            id: v58bql7f1tfs7
          format: double
        custom:
          type: boolean
          x-stoplight:
            id: bupb1l0ow77d1
      required:
        - identifier
        - custom
    ScorecardChecksDetails:
      title: ScorecardChecksDetails
      x-stoplight:
        id: hynxqf3tp1ysq
      allOf:
        - $ref: '#/components/schemas/ScorecardChecks'
        - type: object
          x-stoplight:
            id: 12snka2hxk667
          properties:
            name:
              type: string
              x-stoplight:
                id: ntpqrqq3ymwb3
            description:
              type: string
              x-stoplight:
                id: jlr6zyb75u9bt
          required:
            - name
    Scorecard:
      title: Scorecard
      x-stoplight:
        id: ck1klmib92a8q
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: 0036s8sh4ovml
        identifier:
          type: string
          x-stoplight:
            id: vy3cv7a0ja9km
        description:
          type: string
          x-stoplight:
            id: 9ec2odnrqvkcm
        checks:
          type: array
          items:
            $ref: '#/components/schemas/Check'
        published:
          type: boolean
          x-stoplight:
            id: 5z7snnygtkcme
        checks_missing:
          type: array
          x-stoplight:
            id: 69qa1yprs1y5z
          items:
            x-stoplight:
              id: 4mdevxdftzonf
            type: string
        components:
          type: integer
          x-stoplight:
            id: 9ec2oenrqokcm
        percentage:
          type: number
          x-stoplight:
            id: iyqzo3vjc6kto
          format: double
          minimum: 0
          maximum: 100
      required:
        - name
        - identifier
        - checks
    ScorecardDetails:
      title: ScorecardDetails
      x-stoplight:
        id: ifbfldq39cf27
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        filter:
          $ref: '#/components/schemas/ScorecardFilter'
        weightage_strategy:
          type: string
          x-stoplight:
            id: qeeywjc4bkkda
          enum:
            - EQUAL_WEIGHTS
            - CUSTOM
          default: EQUAL_WEIGHTS
        published:
          type: boolean
          x-stoplight:
            id: qlznynr2iay1n
        checks_missing:
          type: array
          x-stoplight:
            id: gntwsigybxa08
          items:
            x-stoplight:
              id: 6xqs4rtf0fexq
            type: string
        components:
          type: integer
          x-stoplight:
            id: 8rc2peneqokdm
        percentage:
          type: number
          x-stoplight:
            id: lzqyp3vjd6kto
          format: double
          minimum: 0
          maximum: 100
      required:
        - name
        - identifier
        - filter
        - published
    ScorecardFilter:
      title: ScorecardFilter
      x-stoplight:
        id: xwnr2xalsb1fv
      type: object
      properties:
        kind:
          type: string
          x-stoplight:
            id: ni2n6gaelw2sh
        type:
          type: string
          x-stoplight:
            id: pit0to8ng7rtl
        owners:
          type: array
          x-stoplight:
            id: ibe4axxxrnwpl
          items:
            x-stoplight:
              id: kde7prhuw2ww2
            type: string
        tags:
          type: array
          x-stoplight:
            id: 9sqie0nb3f08d
          items:
            x-stoplight:
              id: 8sko0og6lpbyh
            type: string
        lifecycle:
          type: array
          x-stoplight:
            id: 9rtf97h3uu9z3
          items:
            x-stoplight:
              id: etzt6sp88w5iz
            type: string
      required:
        - kind
    ScorecardResponse:
      title: ScorecardResponse
      x-stoplight:
        id: c9gm3c9wg18qw
      type: object
      properties:
        scorecard:
          $ref: '#/components/schemas/Scorecard'
    ScorecardDetailsResponse:
      title: ScorecardDetailsResponse
      x-stoplight:
        id: 7z732csnjjs8z
      type: object
      properties:
        scorecard:
          $ref: '#/components/schemas/ScorecardDetails'
        checks:
          type: array
          items:
            $ref: '#/components/schemas/ScorecardChecksDetails'
      required:
        - scorecard
        - checks
    ScorecardDetailsRequest:
      title: ScorecardDetailsRequest
      x-stoplight:
        id: z2l4mp8px3bsf
      type: object
      properties:
        scorecard:
          $ref: '#/components/schemas/ScorecardDetails'
        checks:
          type: array
          x-stoplight:
            id: edrtpiucltli5
          items:
            $ref: '#/components/schemas/ScorecardChecks'
      required:
        - scorecard
        - checks
    Facets:
      title: Facets
      x-stoplight:
        id: 0yxeh06749fxw
      type: object
      properties:
        type:
          type: array
          x-stoplight:
            id: 8zjtnynlcnjjn
          items:
            x-stoplight:
              id: bi0jhb6t58jfk
            type: string
        owners:
          type: array
          x-stoplight:
            id: ttni8vwtfjy37
          items:
            x-stoplight:
              id: nv9qgpkbxeyx6
            type: string
        tags:
          type: array
          x-stoplight:
            id: 35250e4csgeng
          items:
            x-stoplight:
              id: gaxccdx1p5nq5
            type: string
        lifecycle:
          type: array
          x-stoplight:
            id: pm47xtp6sjdm9
          items:
            x-stoplight:
              id: r76ps8dcmup2d
            type: string
      required:
        - type
        - owners
        - tags
        - lifecycle
    DataSource:
      title: DataSource
      x-stoplight:
        id: rl36h4i72zwmn
      type: object
      description: Contains Details for Single Data source
      x-internal: false
      properties:
        identifier:
          type: string
          x-stoplight:
            id: q7mj2gssw1bli
        name:
          type: string
          x-stoplight:
            id: t4ls3eta9srzd
        description:
          type: string
          x-stoplight:
            id: cbkq0sja3irvh
      required:
        - identifier
        - name
        - description
    DataSourcesResponse:
      title: DataSourcesResponse
      x-stoplight:
        id: 73ueb905qy1zb
      type: object
      description: Response for list of data sources
      properties:
        data_sources:
          type: array
          x-stoplight:
            id: fhj90jbl2h787
          items:
            $ref: '#/components/schemas/DataSource'
      required:
        - data_sources
      x-internal: false
    DataPoint:
      title: DataPoint
      x-stoplight:
        id: c7tcluzgw5cjz
      type: object
      description: Conatins detail for single data point
      x-internal: false
      properties:
        type:
          type: string
          x-stoplight:
            id: 7ravaew9405n5
        name:
          type: string
          x-stoplight:
            id: 0i3oxc3ybop4k
        description:
          type: string
          x-stoplight:
            id: 1hkouvzjjgqn1
        data_point_identifier:
          type: string
          x-stoplight:
            id: ytmctby35eehe
        detailed_description:
          type: string
          x-stoplight:
            id: ktfl6zmiaxrv8
        input_details:
          type: array
          x-stoplight:
            id: 7gpxma8wy54sh
          items:
            $ref: '#/components/schemas/InputDetails'
      required:
        - type
        - name
        - description
        - data_point_identifier
        - detailed_description
    DataPointsResponse:
      title: DataPointResponse
      x-stoplight:
        id: oo360bhea35ae
      type: object
      description: Resposne for List of Data Points
      properties:
        data_points:
          type: array
          x-stoplight:
            id: 8ibklj43876jd
          items:
            $ref: '#/components/schemas/DataPoint'
      required:
        - data_points
      x-internal: false
    CheckStatus:
      title: CheckStatus
      x-stoplight:
        id: fdrxgq2legal0
      type: object
      description: Info for single check status
      x-internal: false
      properties:
        reason:
          type: string
          x-stoplight:
            id: a55tfumwxdws2
        identifier:
          type: string
          x-stoplight:
            id: def12dcql6nng
        name:
          type: string
          x-stoplight:
            id: hgm12dcql6uny
        custom:
          type: boolean
          x-stoplight:
            id: 05nibebb1qklq
        status:
          type: string
          x-stoplight:
            id: zz8q5jgf52oex
          enum:
            - PASS
            - FAIL
        weight:
          type: integer
          x-stoplight:
            id: 4onn2ugf7eag2
      required:
        - name
        - status
        - weight
    ScorecardSummaryInfo:
      title: ScorecardSummaryInfo
      x-stoplight:
        id: pay6aezj4d31h
      type: object
      description: Scorecard score calculation summary info
      x-internal: false
      properties:
        scorecard_name:
          type: string
          x-stoplight:
            id: 9mygzdf55ojhx
        timestamp:
          type: integer
          x-stoplight:
            id: t8nvwtsz37o45
          format: int64
        score:
          type: integer
          x-stoplight:
            id: n3owkfarff0z1
        checks_statuses:
          type: array
          x-stoplight:
            id: bq3l2ts4hqmeb
          items:
            $ref: '#/components/schemas/CheckStatus'
        description:
          type: string
          x-stoplight:
            id: vqndowi5uxn9y
        scorecard_identifier:
          type: string
          x-stoplight:
            id: 8ug477to6b52k
        recalibrate_info:
          $ref: '#/components/schemas/ScorecardRecalibrateInfo'
      required:
        - scorecard_name
        - timestamp
        - score
        - checks_statuses
        - description
        - scorecard_identifier
    ScorecardSummaryResponse:
      title: ScorecardSummaryResponse
      x-stoplight:
        id: ynl06zzfi94rh
      type: object
      description: 'Response for getting list for summary of score '
      properties:
        scorecards_summary:
          type: array
          x-stoplight:
            id: 1f4kjylmzpkq8
          items:
            $ref: '#/components/schemas/ScorecardSummaryInfo'
      required:
        - scorecards_summary
      x-internal: false
    ScorecardScore:
      title: ScorecardScore
      x-stoplight:
        id: ynku3ttnf3cx6
      type: object
      x-internal: false
      description: Score info for single score card
      properties:
        score:
          type: integer
          x-stoplight:
            id: h22nwhcbzelge
        description:
          type: string
          x-stoplight:
            id: zcv3hpqtum3sy
        scorecard_name:
          type: string
          x-stoplight:
            id: nci7recn0sy8r
      required:
        - score
        - description
        - scorecard_name
    ScorecardScoreResponse:
      title: ScorecardScoreResponse
      x-stoplight:
        id: mzt5uyu7qe0wo
      type: object
      x-internal: false
      description: Response for getting only scores for scorecards
      properties:
        scorecard_scores:
          type: array
          x-stoplight:
            id: awwxj6rf39qgz
          items:
            $ref: '#/components/schemas/ScorecardScore'
        overall_score:
          type: integer
          x-stoplight:
            id: d2sok8uuzgwog
      required:
        - scorecard_scores
        - overall_score
    EntityScores:
      title: EntityScores
      x-stoplight:
        id: pm2xjutml29k8
      type: object
      x-internal: false
      description: Scores for each backstage entity
      properties:
        name:
          type: string
          x-stoplight:
            id: c0ds57kufm40y
        title:
          type: string
          x-stoplight:
            id: 3br5wu0kv0evq
        kind:
          type: string
          x-stoplight:
            id: yyu76dpyv8le4
        namespace:
          type: string
          x-stoplight:
            id: ndpcgr677rusf
        scores:
          type: array
          items:
            $ref: '#/components/schemas/ScorecardScore'
      required:
        - name
        - title
        - kind
        - namespace
        - scores
    EntityScoresResponse:
      title: EntityScoresResponse
      x-stoplight:
        id: 6jzf10wfckw9o
      type: object
      description: Response for each entity scores
      x-internal: false
      properties:
        entity:
          $ref: '#/components/schemas/EntityScores'
    ScorecardGraphSummaryInfo:
      title: ScorecardGraphSummaryInfo
      x-stoplight:
        id: yue93ode0kqe9
      type: object
      description: Scorecard graph summary
      x-internal: true
      properties:
        scorecard_identifier:
          type: string
          x-stoplight:
            id: sgnwvhqpiw7w3
        timestamp:
          type: integer
          x-stoplight:
            id: 5s7wtkrmax6su
          format: int64
        score:
          type: integer
          x-stoplight:
            id: z8oob1b8f6t8z
      required:
        - scorecard_identifier
        - timestamp
        - score
    ScorecardGraphSummaryInfoResponse:
      title: ScorecardGraphSummaryInfoResponse
      x-stoplight:
        id: 9phrnuoo1d9pe
      type: object
      x-internal: true
      properties:
        scorecard_graph_summary:
          type: array
          items:
            $ref: '#/components/schemas/ScorecardGraphSummaryInfo'
      required:
        - scorecard_graph_summary
      description: Response for scorecard graph summary
    ScorecardRecalibrateResponse:
      title: ScorecardRecalibrateResponse
      x-stoplight:
        id: 832327nsai3xw
      type: object
      properties:
        recalibrated_scores:
          $ref: '#/components/schemas/ScorecardSummaryInfo'
      required:
        - recalibrated_scores
    ScorecardRecalibrateResponseV2:
      title: ScorecardRecalibrateResponseV2
      x-stoplight:
        id: 6ooyo1l1t3jkn
      type: object
      properties:
        info:
          $ref: '#/components/schemas/ScorecardRecalibrateInfo'
    DataSourceDataPointInfo:
      title: DataSourceDataPointInfo
      x-stoplight:
        id: jip4iam34alsh
      type: object
      description: Request Content for fetching the data point data from data source
      x-internal: false
      properties:
        data_source_location:
          $ref: '#/components/schemas/DataSourceLocationInfo'
        catalog_info_yaml:
          type: string
          x-stoplight:
            id: p0wrxgotcawcm
      required:
        - data_source_location
        - catalog_info_yaml
    DataPointInputValues:
      title: DataPointInputValues
      x-stoplight:
        id: pmbxi4kgowomt
      type: object
      properties:
        data_point_identifier:
          type: string
          x-stoplight:
            id: bulmbn2grsz1a
        data_source_identifier:
          type: string
          x-stoplight:
            id: auomnn2gppz9a
        input_values:
          type: array
          x-stoplight:
            id: ojz53dfz4w06d
          items:
            $ref: '#/components/schemas/InputValue'
      required:
        - data_point_identifier
        - values
      description: Data point values Info for Request
      x-internal: false
    DataSourceLocationInfo:
      title: DataSourceLocationInfo
      x-stoplight:
        id: ky5xrxrsqr6br
      type: object
      description: Data Source Location Info for request
      x-internal: false
      properties:
        data_points:
          type: array
          items:
            $ref: '#/components/schemas/DataPointInputValues'
      required:
        - data_points
    DataSourceDataPointInfoResponse:
      title: DataSourceDataPointInfoResponse
      x-stoplight:
        id: ygs9m3sxopb3z
      type: object
      description: Response for getting the data point data
      x-internal: true
      properties:
        resource:
          type: object
          x-stoplight:
            id: z7oe3qfj53oge
      required:
        - resource
    DataSourceDataPointInfoRequest:
      title: DataSourceDataPointInfoRequest
      x-stoplight:
        id: m7ipn0ebg4yz8
      type: object
      description: Request for getting the data point data
      x-internal: true
      properties:
        request:
          $ref: '#/components/schemas/DataSourceDataPointInfo'
      required:
        - request
    DefaultSaveResponse:
      title: DefaultSaveResponse
      x-stoplight:
        id: 4dbdqgfzqv8nz
      type: object
      description: 'Default response for Save/Edit operations '
      properties:
        status:
          type: string
          x-stoplight:
            id: cskevfqvaydbn
      required:
        - status
    DataSourceDataPointsMap:
      title: DataSourceDataPointsMap
      x-stoplight:
        id: cpgfpfbu0mtuc
      type: object
      properties:
        data_source:
          $ref: '#/components/schemas/DataSource'
        data_points:
          type: array
          x-stoplight:
            id: hvxvu8nzkm4zd
          items:
            $ref: '#/components/schemas/DataPoint'
      required:
        - data_source
        - data_points
      description: Mapping of data source with data points
    DataSourceDataPointsMapResponse:
      title: DataSourceDataPointsMapResponse
      x-stoplight:
        id: hkryihjz7x491
      type: object
      properties:
        data_source_data_points_map:
          x-stoplight:
            id: gjgcug67oivlg
          type: array
          items:
            $ref: '#/components/schemas/DataSourceDataPointsMap'
      required:
        - data_source_data_points_map
      description: Response for getting the data sources and data points map
    ClusterConfig:
      title: ClusterConfig
      x-stoplight:
        id: p3z26e6oxw2g7
      type: object
      properties:
        url:
          type: string
          x-stoplight:
            id: jkgnyf93137ih
        token:
          type: string
          x-stoplight:
            id: 46kek5s2hu6ff
        name:
          type: string
          x-stoplight:
            id: jdhh8cesnek6e
      description: Kubernetes Cluster configuration
    KubernetesConfig:
      title: KubernetesConfig
      x-stoplight:
        id: bka2fmwsy2h8r
      type: object
      description: Kubernetes data source config
      properties:
        clusters:
          type: array
          x-stoplight:
            id: a2xxxtl7ss1wn
          items:
            $ref: '#/components/schemas/ClusterConfig'
        label_selector:
          type: string
          x-stoplight:
            id: au25s8h8q4qzc
        namespace:
          type: string
          x-stoplight:
            id: fl26s8h9q4qzc
        data_source_location:
          $ref: '#/components/schemas/DataSourceLocationInfo'
    KubernetesRequest:
      title: KubernetesRequest
      x-stoplight:
        id: tnm7lax8bnuqn
      type: object
      properties:
        request:
          $ref: '#/components/schemas/KubernetesConfig'
    ScmConfig:
      title: ScmConfig
      x-stoplight:
        id: 4lnqpy92i93nn
      type: object
      description: Scm data source config
      properties:
        token:
          type: string
          x-stoplight:
            id: trwbwp52ghvr1
        repo_scm:
          type: string
          x-stoplight:
            id: ild5tcji7lp79
        repo_owner:
          type: string
          x-stoplight:
            id: jsd5zcji6lp79
        repo_name:
          type: string
          x-stoplight:
            id: 4g3czqv7rubhe
        repo_branch:
          type: string
          x-stoplight:
            id: utj0sh93p6jpf
        repo_sub_folder:
          type: string
          x-stoplight:
            id: oiao02rw7ueem
        data_source_location:
          $ref: '#/components/schemas/DataSourceLocationInfo'
    ScmRequest:
      title: ScmRequest
      x-stoplight:
        id: qdoqi2ofwsxrr
      type: object
      properties:
        request:
          $ref: '#/components/schemas/ScmConfig'
    ScorecardRecalibrateIdentifiers:
      title: ScorecardRecalibrateIdentifiers
      x-stoplight:
        id: dq24ve7fntvl7
      type: object
      properties:
        scorecard_identifier:
          type: string
          x-stoplight:
            id: ext9tyc3dprj6
        entity_identifier:
          type: string
          x-stoplight:
            id: 988nefyoe6o5e
      description: Identifiers needed for score recalibration
    ScorecardRecalibrateRequest:
      title: ScorecardRecalibrateRequest
      x-stoplight:
        id: wyhtihipnwd7n
      type: object
      properties:
        identifiers:
          $ref: '#/components/schemas/ScorecardRecalibrateIdentifiers'
    LicenseUsageSaveRequest:
      title: LicenseUsageSaveRequest
      x-stoplight:
        id: p4t22zv37yivm
      type: object
      description: User details and accessedAt to capture license usage
      properties:
        user_identifier:
          type: string
          x-stoplight:
            id: kwshwrjsp0kw0
        email:
          type: string
          x-stoplight:
            id: gg9ozxyv4slx8
        user_name:
          type: string
          x-stoplight:
            id: gg9ozxyv4slx8
        accessed_at:
          type: integer
          x-stoplight:
            id: w7yl3d8j1xce2
          format: int64
      required:
        - user_identifier
        - email
        - user_name
        - accessed_at
    LicenseUsageSaveResponse:
      title: LicenseUsageSaveResponse
      x-stoplight:
        id: zavwissy2n6kj
      type: object
      description: Response for license usage save
      properties:
        status:
          type: string
          x-stoplight:
            id: uva00wdpw7tkp
      required:
        - status
    InputDetails:
      title: InputDetails
      x-stoplight:
        id: 9bevzs2ntadh9
      type: object
      properties:
        key:
          type: string
          x-stoplight:
            id: raxmdmy2r7q9y
        description:
          type: string
          x-stoplight:
            id: aqhb6cu8ooj5t
        required:
          type: boolean
          x-stoplight:
            id: q7eabpypob3ty
      required:
        - key
        - description
        - required
    InputValue:
      title: InputValue
      x-stoplight:
        id: optt6zoyoj558
      type: object
      properties:
        key:
          type: string
          x-stoplight:
            id: g1gwgcsubi0n0
        value:
          type: string
          x-stoplight:
            id: uf1wutejszt8j
      required:
        - key
        - value
    ScorecardStats:
      title: ScorecardStats
      x-stoplight:
        id: mfzfyuj9dxi9v
      type: object
      description: ScorecardStats
      x-internal: false
      properties:
        name:
          type: string
          x-stoplight:
            id: skt0gj9ivt90s
        namespace:
          type: string
          x-stoplight:
            id: oklu13i7o6ebd
        owner:
          type: string
          x-stoplight:
            id: uiiw13t7o6uda
        system:
          type: string
          x-stoplight:
            id: up1h022u2v98y
        kind:
          type: string
          x-stoplight:
            id: azw80jiyldmxq
        type:
          type: string
          x-stoplight:
            id: oijvwg17eyejq
        score:
          type: integer
          x-stoplight:
            id: ehz071o8ft8bg
      required:
        - name
        - namespace
        - owner
        - system
        - kind
        - type
        - score
    ScorecardStatsResponse:
      title: ScorecardStatsResponse
      x-stoplight:
        id: csadnzoryu4um
      description: ScorecardStatsResponse
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: czewiwd87fr8u
        timestamp:
          type: integer
          x-stoplight:
            id: 5p8wtkrmax6su
          format: int64
        stats:
          type: array
          x-stoplight:
            id: f4tm5re3zal0h
          items:
            $ref: '#/components/schemas/ScorecardStats'
      required:
        - name
        - stats
    CheckStats:
      title: CheckStats
      x-stoplight:
        id: mgzeoij8ddi8f
      type: object
      description: CheckStats
      x-internal: false
      properties:
        name:
          type: string
          x-stoplight:
            id: tkt0gj9ivt90s
        namespace:
          type: string
          x-stoplight:
            id: pklu13i8o9rdb
        owner:
          type: string
          x-stoplight:
            id: piiw13t7o6uda
        system:
          type: string
          x-stoplight:
            id: pp1h022u2v98y
        kind:
          type: string
          x-stoplight:
            id: bzw80jiyldmxq
        type:
          type: string
          x-stoplight:
            id: pijvwg17eyejq
        status:
          type: string
          x-stoplight:
            id: fhz071o8ft8bg
      required:
        - name
        - namespace
        - owner
        - system
        - kind
        - type
        - status
    CheckStatsResponse:
      title: CheckStatsResponse
      x-stoplight:
        id: 1hhr4bzpt278k
      type: object
      description: CheckStatsResponse
      x-internal: false
      properties:
        name:
          type: string
          x-stoplight:
            id: 5kkekddw3r1zh
        timestamp:
          type: integer
          x-stoplight:
            id: 5e8wpkrsax6xu
          format: int64
        stats:
          x-stoplight:
            id: nd4na7s04suxx
          type: array
          items:
            $ref: '#/components/schemas/CheckStats'
      required:
        - name
        - stats
    CheckGraph:
      title: CheckGraph
      x-stoplight:
        id: 7z8uudt72xmej
      type: object
      properties:
        timestamp:
          type: integer
          x-stoplight:
            id: 549864xz1sb1m
          format: int64
        count:
          type: integer
          x-stoplight:
            id: irv1t5g39uexj
    ScorecardRecalibrateInfo:
      title: ScorecardRecalibrateInfo
      x-stoplight:
        id: a5yovd00yo89y
      type: object
      properties:
        start_time:
          type: integer
          x-stoplight:
            id: dsc57yz269flx
          format: int64
        started_by:
          $ref: '#/components/schemas/User'
    User:
      title: User
      x-stoplight:
        id: p693c8e19hig1
      type: object
      properties:
        uuid:
          type: string
          x-stoplight:
            id: akz3uywxq3fcy
        name:
          type: string
          x-stoplight:
            id: j5y9u9hxapibd
        email:
          type: string
          x-stoplight:
            id: zrikcrbyjl7pk
      description: ''
    DefaultPluginDetailedInfo:
      title: DefaultPluginDetailedInfo
      x-stoplight:
        id: om79yzqsehzdj
      allOf:
        - $ref: '#/components/schemas/PluginDetailedInfo'
      description: Metadata for default plugin
    CustomPluginDetailedInfo:
      title: CustomPluginDetailedInfo
      x-stoplight:
        id: 7d5vhhxgcinuj
      description: Metadata for custom plugin
      allOf:
        - $ref: '#/components/schemas/PluginDetailedInfo'
        - type: object
          x-stoplight:
            id: a3azbqof3qaa4
          properties:
            artifact:
              $ref: '#/components/schemas/Artifact'
            package_name:
              type: string
              x-stoplight:
                id: 6tclf6gflwbnm
    Artifact:
      title: Artifact
      x-stoplight:
        id: 647wjmduc547h
      type: object
      description: Artifact details for custom plugin
      properties:
        type:
          type: string
          x-stoplight:
            id: jkdjdyi0psnta
          enum:
            - NPM
            - ZIP
        url:
          type: string
          x-stoplight:
            id: kmk65kswz6xuz
      required:
        - type
        - url
    CustomPluginInfoRequest:
      title: CustomPluginInfoRequest
      x-stoplight:
        id: szco1w9ni5gg2
      type: object
      properties:
        info:
          $ref: '#/components/schemas/CustomPluginDetailedInfo'
    CustomPluginInfoResponse:
      title: CustomPluginInfoResponse
      x-stoplight:
        id: r9u1gb8tlw8jm
      type: object
      properties:
        info:
          $ref: '#/components/schemas/CustomPluginDetailedInfo'
    BackstageHarnessSyncRequest:
      title: BackstageHarnessSyncRequest
      type: object
      properties:
        entity_identifier:
          type: string
        action:
          type: string
          enum:
            - create
            - update
            - upsert
            - delete
        sync_mode:
          type: string
          enum:
            - sync
            - async
        user:
          $ref: '#/components/schemas/User'
      required:
        - entity_identifier
        - action
        - sync_mode
    BackstageHarnessSyncEntitiesResponse:
      title: BackstageHarnessSyncEntitiesResponse
      type: object
      description: Response for backstage harness entities sync
      properties:
        status:
          type: string
      required:
        - status
    CustomPropertyByFieldDeleteResponse:
      title: CustomPropertyByFieldDeleteResponse
      x-stoplight:
        id: 6mjc0h4a2gtq6
      type: object
      required:
        - property
        - entities_with_deletion
      properties:
        property:
          type: string
          x-stoplight:
            id: oo229sv9sf7by
        entities_with_deletion:
          $ref: '#/components/schemas/CustomPropertyEntitiesCount'
    CustomPropertyEntitiesCount:
      title: CustomPropertyEntitiesCount
      x-stoplight:
        id: gipskdfrfr4se
      type: object
      required:
        - count
      properties:
        count:
          type: integer
          x-stoplight:
            id: 88y9vxs5v3tqc
        entity_refs:
          type: array
          x-stoplight:
            id: 8lpmsukk6dl4l
          items:
            x-stoplight:
              id: ilcf2ihl97863
            type: string
    CustomPropertyFilterRequest:
      title: CustomPropertyFilterRequest
      x-stoplight:
        id: r7b8oidy5wmw3
      description: Custom Property filter request for ingestion
      allOf:
        - $ref: '#/components/schemas/PropertyValue'
        - type: object
          required:
            - filter
          properties:
            filter:
              $ref: '#/components/schemas/ScorecardFilter'
            skip_entity_refs:
              type: array
              x-stoplight:
                id: 9rtf97h3uu9z3
              items:
                x-stoplight:
                  id: etzt6sp88w5iz
                type: string
    CustomPropertyFilterDeleteRequest:
      title: CustomPropertyFilterDeleteRequest
      x-stoplight:
        id: r7b8oidy5ppw3
      description: Custom Property filter delete request
      type: object
      required:
        - property
        - filter
      properties:
        property:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        filter:
          $ref: '#/components/schemas/ScorecardFilter'
        skip_entity_refs:
          type: array
          x-stoplight:
            id: 9rtf97h3uu9z3
          items:
            x-stoplight:
              id: etzt6sp88w5iz
            type: string
    CustomPropertiesBase:
      title: CustomPropertiesBase
      x-stoplight:
        id: blleozqeppo3p
      type: object
      description: Custom properties base
      properties:
        entity_ref:
          type: string
          x-stoplight:
            id: f60m7omezo34z
        property:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        value:
          type: object
          x-stoplight:
            id: 00wv958ee37z0
        mode:
          type: string
          x-stoplight:
            id: ngeqasui9chk4
          enum:
            - append
            - replace
    PropertyValue:
      title: PropertyValue
      x-stoplight:
        id: awleozpepzo2p
      type: object
      description: Value overrides for custom property
      required:
        - property
        - value
      properties:
        property:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        value:
          type: object
          x-stoplight:
            id: 00wv958ee37z0
        mode:
          type: string
          x-stoplight:
            id: ngeqasui9chk4
          enum:
            - append
            - replace
    EntityValue:
      title: EntityValue
      x-stoplight:
        id: bpqeozlezzo2s
      type: object
      description: Value overrides for custom property
      required:
        - entity_ref
      properties:
        entity_ref:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        value:
          type: object
          x-stoplight:
            id: 00wv958ee37z0
    CustomPropertyByFieldResponse:
      title: CustomPropertyByFieldResponse
      x-stoplight:
        id: wc4i06fegoodx
      type: object
      required:
        - property
        - entities_with_additions
        - entities_with_updates
      properties:
        property:
          type: string
          x-stoplight:
            id: ix5gx2623nliy
        entities_with_additions:
          $ref: '#/components/schemas/CustomPropertyEntitiesCount'
        entities_with_updates:
          $ref: '#/components/schemas/CustomPropertyEntitiesCount'
    CustomPropertyResponse:
      title: CustomPropertyResponse
      x-stoplight:
        id: ud6i06fagpppl
      type: object
      required:
        - status
        - message
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - ERROR
          x-stoplight:
            id: ix5gx2623nliy
        message:
          type: string
          x-stoplight:
            id: ix5gx2623nliy
    CustomPropertyByEntityGetResponse:
      title: CustomPropertyByEntityGetResponse
      x-stoplight:
        id: nn908nicqnzps
      type: object
      properties:
        properties:
          type: array
          x-stoplight:
            id: 8t9gstypcz6rq
          items:
            $ref: '#/components/schemas/PropertyValue'
    CustomPropertyByFieldGetResponse:
      title: CustomPropertyByFieldGetResponse
      x-stoplight:
        id: pq996nicsnzus
      type: object
      properties:
        entity_refs:
          type: array
          x-stoplight:
            id: 8t9gstypcz6rq
          items:
            $ref: '#/components/schemas/EntityValue'
        mode:
          type: string
          x-stoplight:
            id: xhepwtso50sls
    CustomPropertyByEntityRequest:
      title: CustomPropertyByEntityRequest
      x-stoplight:
        id: 5tvio8q8l1dpd
      allOf:
        - $ref: '#/components/schemas/CustomPropertiesBase'
        - type: object
          properties:
            properties:
              type: array
              x-stoplight:
                id: 8t9gstypcz6rq
              items:
                $ref: '#/components/schemas/PropertyValue'
    CustomPropertyByEntityDeleteRequest:
      title: CustomPropertyByEntityDeleteRequest
      x-stoplight:
        id: 8tpio8p8l2bpe
      required:
        - entity_ref
      properties:
        entity_ref:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        property:
          type: string
          x-stoplight:
            id: 8t9gstypcz6rq
        properties:
          type: array
          x-stoplight:
            id: 9rtf97h3uu9z3
          items:
            x-stoplight:
              id: etzt6sp88w5iz
            type: string
    CustomPropertyByFieldRequest:
      title: CustomPropertyByFieldRequest
      x-stoplight:
        id: 5tvio9q9l2dpd
      allOf:
        - $ref: '#/components/schemas/CustomPropertiesBase'
        - type: object
          properties:
            entity_refs:
              type: array
              x-stoplight:
                id: 8t9gstypcz6rq
              items:
                $ref: '#/components/schemas/EntityValue'
            value:
              type: object
              x-stoplight:
                id: botemn13q8oum
    CustomPropertyByFieldDeleteRequest:
      title: CustomPropertyByFieldDeleteRequest
      x-stoplight:
        id: 9tpio9p9l2bpe
      required:
        - property
      properties:
        property:
          type: string
          x-stoplight:
            id: e60m6bmezo34y
        entity_ref:
          type: string
          x-stoplight:
            id: botemn13q8oum
        entity_refs:
          type: array
          x-stoplight:
            id: 9rtf97h3uu9z3
          items:
            x-stoplight:
              id: etzt6sp88w5iz
            type: string
    WorkflowsInfo:
      title: WorkflowsInfo
      x-stoplight:
        id: 866tz63x57k0x
      type: object
      description: Model for storing the workflows info
      required:
        - name
        - kind
        - owner
        - uid
        - type
      properties:
        name:
          type: string
          x-stoplight:
            id: vnbg0l0j8mgza
        description:
          type: string
          x-stoplight:
            id: hknsgi5o004yz
        kind:
          type: string
          x-stoplight:
            id: 5zns4zkrymy84
        owner:
          type: string
          x-stoplight:
            id: fiu5eamaodjbe
        uid:
          type: string
          x-stoplight:
            id: zh1vswqa2gpfu
        title:
          type: string
          x-stoplight:
            id: gf19zc78mgkhc
        type:
          type: string
          x-stoplight:
            id: v9nvaq6hcgwc5
        icon:
          type: string
          x-stoplight:
            id: wf2635s4o4q3e
    Group:
      title: Group
      x-stoplight:
        id: jraoj2djmfey2
      type: object
      required:
        - name
        - identifier
      properties:
        name:
          type: string
          x-stoplight:
            id: ecm59972w2ose
        description:
          type: string
          x-stoplight:
            id: oztyyv8qf5t61
        icon:
          type: string
          x-stoplight:
            id: w18j21yz63srs
        workflows:
          type: array
          x-stoplight:
            id: lybolo6pxkrni
          items:
            $ref: '#/components/schemas/WorkflowsInfo'
        order:
          type: integer
          x-stoplight:
            id: 9y93xwkkr90ir
        identifier:
          type: string
          x-stoplight:
            id: qvx6zkkojf3z1
    EntitiesGroups:
      title: Entities Groups
      description: >-
        Represents a group of entities organized by organization and project,
        providing a hierarchical view of entities within the system.
      type: object
      properties:
        org_identifier:
          type: string
          description: Unique identifier of the organization
        org_name:
          type: string
          description: Display name of the organization
        project_identifier:
          type: string
          description: Unique identifier of the project
        project_name:
          type: string
          description: Display name of the project
        group_identifier:
          type: string
          description: Unique identifier of the group
        group_name:
          type: string
          description: Display name of the group
        group_description:
          type: string
          description: Description of the group
        group_icon:
          type: string
          description: Icon URL representing the group
        order:
          type: integer
          description: Display order for the group
        workflows:
          type: array
          items:
            type: string
          description: Workflows associated with the group
        total:
          type: integer
          description: Total number of entities in the group
        entities:
          type: array
          items:
            $ref: '#/components/schemas/EntityResponse'
          description: Entities belonging to the group
    GroupRequest:
      title: GroupRequest
      x-stoplight:
        id: uueeep23y7awo
      type: object
      properties:
        group:
          $ref: '#/components/schemas/Group'
    GroupResponse:
      title: GroupResponse
      x-stoplight:
        id: ogke44btl75gm
      type: object
      properties:
        group:
          $ref: '#/components/schemas/Group'
    GroupsYamlResponse:
      title: GroupYaml
      x-stoplight:
        id: d862zg9wbkg0t
      type: object
      properties:
        yaml:
          type: string
          x-stoplight:
            id: l0fjq91pgtgl5
    WorkflowsInfoResponse:
      title: WorkflowsInfoResponse
      x-stoplight:
        id: glueaqvly22p3
      type: object
      properties:
        workflows:
          type: array
          x-stoplight:
            id: dhf5s9geavdi2
          items:
            $ref: '#/components/schemas/WorkflowsInfo'
    Card:
      title: Card
      x-stoplight:
        id: khimyne453c42
      type: object
      x-internal: true
      description: Home Page Layout Cards
      discriminator:
        propertyName: type
        mapping:
          LEARN_MORE: '#/components/schemas/LearnMoreCard'
          TOP_VISITED: '#/components/schemas/TopVisitedCard'
          RECENTLY_VISITED: '#/components/schemas/RecentlyVisitedCard'
          MARKDOWN: '#/components/schemas/MarkdownCard'
          VIDEO: '#/components/schemas/VideoCard'
          CUSTOM_LINK: '#/components/schemas/CustomLinkCard'
          SELF_SERVICE: '#/components/schemas/SelfServiceCard'
          GITHUB: '#/components/schemas/GithubCard'
      required:
        - default_card
        - type
        - title
        - draft
        - identifier
      properties:
        default_card:
          type: boolean
          x-stoplight:
            id: s4rlxamcgghw2
        type:
          x-stoplight:
            id: 1swjrc8l5pbcp
          type: string
          enum:
            - LEARN_MORE
            - TOP_VISITED
            - RECENTLY_VISITED
            - STARRED_ENTITIES
            - MARKDOWN
            - VIDEO
            - CUSTOM_LINK
            - SELF_SERVICE
            - GITHUB
        title:
          type: string
          x-stoplight:
            id: 3c15n5f5znxzy
        draft:
          type: boolean
          x-stoplight:
            id: z7iwwsvonakjg
        identifier:
          type: string
          x-stoplight:
            id: 08fsslff0gc7p
        icon_url:
          type: string
          x-stoplight:
            id: c5jwirnush8mw
    LearnMoreCard:
      title: LearnMoreCard
      x-stoplight:
        id: 4lzdtd7dff8zu
      x-discriminator-value: LEARN_MORE
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: h3tz4vxrbxtjs
          required:
            - size
            - type
          properties:
            description:
              type: string
              x-stoplight:
                id: hob2cl82ifz06
            size:
              type: string
              x-stoplight:
                id: tvh3heq8okn67
            type:
              x-stoplight:
                id: hkoivd4wiu1iu
              type: string
              enum:
                - LEARN_MORE
      x-internal: true
    TopVisitedCard:
      title: TopVisitedCard
      x-stoplight:
        id: m7hoy1gn0v1k5
      x-discriminator-value: TOP_VISITED
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: 5j0xgqlt3yd4k
          required:
            - size
            - type
          properties:
            description:
              type: string
              x-stoplight:
                id: qw6x6xkdrkm29
            size:
              type: string
              x-stoplight:
                id: vh56q1lupdsvh
            type:
              x-stoplight:
                id: ex97ilz87facq
              type: string
              enum:
                - TOP_VISITED
    RecentlyVisitedCard:
      title: RecentlyVisitedCard
      x-stoplight:
        id: 1i5ksikl60hj2
      x-discriminator-value: RECENTLY_VISITED
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: 9dcvqmqu0vmyr
          required:
            - type
            - size
          properties:
            type:
              x-stoplight:
                id: hysmuwztrco9m
              type: string
              enum:
                - RECENTLY_VISITED
            description:
              type: string
              x-stoplight:
                id: 2zk1b2i27ndxh
            size:
              type: string
              x-stoplight:
                id: d86po14co3y2u
    StarredEntitiesCard:
      title: StarredEntitiesCard
      x-stoplight:
        id: 6go56r5l9pw5i
      x-discriminator-value: STARRED_ENTITIES
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: eoi55yj342n8t
          required:
            - type
            - size
          properties:
            description:
              type: string
              x-stoplight:
                id: z7ok1yz4wpvkp
            type:
              x-stoplight:
                id: bo6ytc8ye71mr
              type: string
              enum:
                - STARRED_ENTITIES
            size:
              type: string
              x-stoplight:
                id: 2b7sm5d32gi0m
    MarkdownCard:
      title: MarkdownCard
      x-stoplight:
        id: pf6hmrip039m3
      x-discriminator-value: MARKDOWN
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: s2iscjtgbag4u
          required:
            - size
            - markdown
            - type
          properties:
            size:
              type: string
              x-stoplight:
                id: 4jdoz1l4z35vg
            markdown:
              type: string
              x-stoplight:
                id: cuhajyaa2etej
            type:
              x-stoplight:
                id: z2ou3om9iztbr
              type: string
              enum:
                - MARKDOWN
            description:
              type: string
              x-stoplight:
                id: jyz2x09vfz1oe
    VideoCard:
      title: VideoCard
      x-stoplight:
        id: 49pkntslbrtt9
      x-discriminator-value: VIDEO
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: ax1vjqn85e6nt
          required:
            - size
            - url
            - type
          properties:
            size:
              type: string
              x-stoplight:
                id: j654ol7h61322
            url:
              type: string
              x-stoplight:
                id: 5vdojnxp9r99q
            type:
              x-stoplight:
                id: 09ia6lef8t2dv
              type: string
              enum:
                - VIDEO
            description:
              type: string
              x-stoplight:
                id: 4bu579fusn3oa
    CustomLinkCard:
      title: CustomLinkCard
      x-stoplight:
        id: 783vgfgsud01c
      x-discriminator-value: CUSTOM_LINK
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: r8sbdlsrva2l8
          required:
            - size
            - links
            - type
          properties:
            size:
              type: string
              x-stoplight:
                id: o2ea6f32fr0lf
            links:
              type: array
              x-stoplight:
                id: qera0maj9pypa
              items:
                $ref: '#/components/schemas/LinksInfo'
            type:
              x-stoplight:
                id: jrvenxvsxhtvd
              type: string
              enum:
                - CUSTOM_LINK
            description:
              type: string
              x-stoplight:
                id: f0zdkkr5p9lvu
    LinksInfo:
      title: LinksInfo
      x-stoplight:
        id: hs6wffpa1vsmr
      type: object
      required:
        - icon
        - title
        - url
        - identifier
      properties:
        icon:
          type: string
          x-stoplight:
            id: 8tq6yxtmtp8jt
        title:
          type: string
          x-stoplight:
            id: l7xnxrlom0i2n
        url:
          type: string
          x-stoplight:
            id: 739ho9wpegobn
        identifier:
          type: string
          x-stoplight:
            id: qzinj0rideh67
    SelfServiceCard:
      title: SelfServiceCard
      x-stoplight:
        id: 3aa0r0uzbggg0
      x-discriminator-value: SELF_SERVICE
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: cdi4u1wg394gb
          required:
            - size
            - type
          properties:
            size:
              type: string
              x-stoplight:
                id: 18gz6gz1curjl
            type:
              x-stoplight:
                id: s3mcc22q06wpr
              type: string
              enum:
                - SELF_SERVICE
    GithubCard:
      title: GithubCard
      x-stoplight:
        id: 0yx2ck021z2fa
      x-discriminator-value: GITHUB
      allOf:
        - $ref: '#/components/schemas/Card'
        - type: object
          x-stoplight:
            id: xbbuk5a5b828j
          required:
            - size
            - type
          properties:
            size:
              type: string
              x-stoplight:
                id: xbbuk5a5b828k
            type:
              x-stoplight:
                id: g9wz1jrs1t4xj
              type: string
              enum:
                - GITHUB
    HeaderInfo:
      title: HeaderInfo
      x-stoplight:
        id: 40s7em3fy3i26
      type: object
      required:
        - header_text
        - quick_links
      properties:
        header_text:
          type: string
          x-stoplight:
            id: ejy8owdfu3a7w
        quick_links:
          type: array
          x-stoplight:
            id: c37mcmjbsb0ew
          items:
            $ref: '#/components/schemas/LinksInfo'
    BannerInfo:
      title: BannerInfo
      x-stoplight:
        id: sh7q54y2x3w6n
      type: object
      required:
        - banner_enabled
      properties:
        image:
          $ref: '#/components/schemas/UploadInfo'
        video:
          $ref: '#/components/schemas/UploadInfo'
        type:
          type: string
          x-stoplight:
            id: 6qi1pn6df9w3y
        banner_enabled:
          type: boolean
          x-stoplight:
            id: acof9j24ugx2m
    HomePageLayoutInfo:
      title: HomePageLaout
      x-stoplight:
        id: 46lg0j8o4jyx3
      type: object
      required:
        - header
        - banner
        - cards
      properties:
        header:
          $ref: '#/components/schemas/HeaderInfo'
        banner:
          $ref: '#/components/schemas/BannerInfo'
        cards:
          type: array
          x-stoplight:
            id: l98ox7834hcmr
          items:
            $ref: '#/components/schemas/Card'
    CardResponse:
      title: CardResponse
      x-stoplight:
        id: pwxdpumn5p2nf
      type: object
      required:
        - card
      properties:
        card:
          $ref: '#/components/schemas/Card'
    HomePageLayoutResponse:
      title: HomePageLayoutResponse
      x-stoplight:
        id: frc0lddsqe2py
      type: object
      required:
        - home_page_layout
      properties:
        home_page_layout:
          $ref: '#/components/schemas/HomePageLayoutInfo'
    HomePageLayoutRequest:
      title: HomePageLayoutRequest
      x-stoplight:
        id: 3zfmlb9fjyabb
      type: object
      required:
        - home_page_layout
      properties:
        home_page_layout:
          $ref: '#/components/schemas/HomePageLayoutInfo'
    HomePageLayoutYamlResponse:
      title: HomePageLayoutYamlResponse
      x-stoplight:
        id: tjtix0kc16tuq
      type: object
      required:
        - yaml
      properties:
        yaml:
          type: string
          x-stoplight:
            id: p80gq93dymf9w
    UploadInfo:
      title: UploadInfo
      x-stoplight:
        id: i16ow38yt6ko6
      type: object
      properties:
        url:
          type: string
          x-stoplight:
            id: vuah9tjeklkgo
        uploads:
          type: array
          x-stoplight:
            id: h8egu2hf2jyn3
          items:
            x-stoplight:
              id: ngwwqfsxkzrsl
            type: string
        selected:
          type: string
          x-stoplight:
            id: 3f7t4n7o9ftip
    CardIconResponse:
      title: CardIconInfo
      x-stoplight:
        id: 3n6zz2mg3vjie
      type: object
      required:
        - icon_url
      properties:
        icon_url:
          type: string
          x-stoplight:
            id: 28g2dkx7xtnpl
    DeleteHomePageLayoutIconRequest:
      title: DeleteHomePageLayoutIcom
      x-stoplight:
        id: eambi0iwmbtf4
      type: object
      required:
        - icon_url
      properties:
        icon_url:
          type: string
          x-stoplight:
            id: 3orajqsokg0my
    EntityRequest:
      title: Entity Request Body
      description: >-
        Request body for creating or updating an Entity, containing the entity
        YAML definition as a string.
      type: object
      properties:
        yaml:
          type: string
          description: >-
            Entity YAML definition as a string. Should conform to either the
            Harness entity format or the Backstage entity format, depending on
            the operation.
      required:
        - yaml
    EntityResponse:
      title: Entity Response Body
      description: >-
        Detailed information about an Entity, including its metadata,
        relationships, and YAML representation.
      type: object
      properties:
        identifier:
          type: string
          description: Unique identifier of the entity within its scope and kind
        entity_ref:
          type: string
          description: Full entity reference in the format scope/kind/identifier
        orgIdentifier:
          type: string
          description: Identifier of the organization that the entity belongs to
        org_name:
          type: string
          description: Display name of the organization that the entity belongs to
        projectIdentifier:
          type: string
          description: Identifier of the project that the entity belongs to
        project_name:
          type: string
          description: Display name of the project that the entity belongs to
        scope:
          type: string
          enum:
            - ACCOUNT
            - ORGANIZATION
            - PROJECT
          description: Scope of the entity (account, organization, or project level)
        referenceType:
          type: string
          enum:
            - INLINE
            - GIT
          description: Type of reference for the entity (inline definition or Git-sourced)
        kind:
          type: string
          enum:
            - api
            - component
            - group
            - resource
            - user
            - workflow
          description: Kind of the entity (defines its core purpose)
        type:
          type: string
          description: Type of the entity within its kind (e.g., Service, Website)
        name:
          type: string
          description: Display name of the entity
        description:
          type: string
          description: Descriptive text about the entity
        owner:
          type: string
          description: Owner reference for the entity (user or group)
        tags:
          type: array
          items:
            type: string
          description: Tags associated with the entity for categorization
        lifecycle:
          type: string
          description: Lifecycle stage of the entity (e.g., experimental, production)
        metadata:
          type: object
          description: Additional metadata associated with the entity
        git_details:
          $ref: '#/components/schemas/GitDetails1'
        cache_response_data:
          $ref: '#/components/schemas/CacheResponseData'
        entity_validity_details:
          type: object
          properties:
            is_valid:
              type: boolean
            error_messages:
              type: array
              items:
                type: string
        scorecards:
          type: object
          properties:
            average:
              type: number
              description: Average score across all scorecards
            scores:
              type: array
              items:
                type: object
                properties:
                  scorecard:
                    type: string
                    description: Name of the scorecard
                  score:
                    type: number
                    description: Numeric score (typically 0-100)
                  total_checks:
                    type: number
                    description: Total number of checks in the scorecard
                  passed_checks:
                    type: number
                    description: Number of checks that passed
          description: Scorecard information for the entity
        yaml:
          type: string
          description: Complete entity YAML definition
        starred:
          type: boolean
          description: Whether the entity is marked as a favorite by the current user
        status:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                description: Type of status information
              level:
                type: string
                description: Severity level (info, warning, error)
              message:
                type: string
                description: Status message text
          description: Status information for the entity
        groups:
          type: array
          items:
            type: object
            properties:
              org_identifier:
                type: string
                description: Organization identifier
              org_name:
                type: string
                description: Organization name
              project_identifier:
                type: string
                description: Project identifier
              project_name:
                type: string
                description: Project name
              scope:
                type: string
                enum:
                  - ACCOUNT
                  - ORGANIZATION
                  - PROJECT
                description: Scope level
              group_identifier:
                type: string
                description: Group identifier
              group_name:
                type: string
                description: Group display name
              group_description:
                type: string
                description: Group description
              group_icon:
                type: string
                description: Group icon URL
          description: Groups that the entity belongs to
      required:
        - identifier
        - entity_ref
        - scope
        - referenceType
        - kind
        - yaml
    EntityCreateRequest:
      title: Entity Create Request Body
      description: Entity Create Request Body
      type: object
      properties:
        yaml:
          type: string
          description: Entity YAML (to be passed as a String).
        git_details:
          $ref: '#/components/schemas/GitCreateDetails2'
      required:
        - yaml
    EntityUpdateRequest:
      title: Entity Update Request Body
      description: Entity Update Request Body
      type: object
      properties:
        yaml:
          type: string
          description: Entity YAML (to be passed as a String).
        git_details:
          $ref: '#/components/schemas/GitUpdateDetails2'
      required:
        - yaml
    EntityMoveRequest:
      title: EntityMoveRequest
      description: Request body for moving an entity
      type: object
      properties:
        git_details:
          $ref: '#/components/schemas/GitMoveDetails1'
        entity_move_operation_type:
          $ref: '#/components/schemas/EntityMoveOperationType'
      required:
        - git_details
        - entity_move_operation_type
    EntitiesByRefsRequest:
      title: EntitiesByRefsRequest
      x-stoplight:
        id: yksr06ck7tvb2
      type: object
      properties:
        entity_refs:
          type: array
          x-stoplight:
            id: kmulpu20417o7
          items:
            x-stoplight:
              id: t7219d30v5hya
            type: string
    EntityFilterQueryRequest:
      title: EntityFilterQueryRequest
      x-stoplight:
        id: kygda92tf0cz1
      type: object
      properties:
        entity_refs:
          type: array
          x-stoplight:
            id: v224elukw745g
          items:
            x-stoplight:
              id: 17xzqu8gnc2vm
            type: string
    GitMetadataUpdateRequest:
      title: GitMetadataUpdateRequest
      x-stoplight:
        id: bpd31demfes1n
      type: object
      properties:
        connector_ref:
          type: string
          description: Harness connector id used for entity CRUD operations
        repo_name:
          type: string
          description: Name of the repository.
        file_path:
          type: string
          description: File path of the entity in the repository.
        branch_name:
          type: string
          description: Name of the branch.
    GitDetails1:
      title: Git Details
      x-stoplight:
        id: p1h9vvkuks7kq
      type: object
      description: Git Experience related details of the Entity.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          object_id: abcdXYZ
          base_branch: old_branch
          commit_id: abcdXYZ
          connector_ref: git_connector
          store_type: REMOTE
          repo_name: example_repository
          is_harness_code_repo: false
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        file_url:
          type: string
          description: File URL of the Entity.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        object_id:
          type: string
          description: Object identifier (for Github only).
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        commit_id:
          type: string
          description: Commit identifier.
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          description: Specifies whether the Entity is to be stored in Git or not.
          enum:
            - INLINE
            - REMOTE
        repo_name:
          type: string
          description: Name of the repository.
        repo_url:
          type: string
          description: Repository URL of the Entity.
        is_harness_code_repo:
          type: boolean
          description: Is Git Experience repo harness code.
    CacheResponseData:
      title: CacheResponseData
      x-stoplight:
        id: 5twby12bhyems
      type: object
      x-examples:
        example-1:
          cache_state: VALID_CACHE
          ttl_left: 9223372036854776000
          last_updated_at: 9223372036854776000
      properties:
        cache_state:
          type: string
          enum:
            - VALID_CACHE
            - STALE_CACHE
            - UNKNOWN
          description: Tells the state of cache.
        ttl_left:
          type: integer
          format: int64
          description: Time left till cache expriry.
        last_updated_at:
          type: integer
          format: int64
          description: Time when the cache was last updated at.
        is_sync_enabled:
          type: boolean
    GitCreateDetails2:
      title: Create Git Details
      x-stoplight:
        id: p1h9vvkuks7kq
      type: object
      description: Contains parameters related to creating an Entity for Git Experience.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          base_branch: old_branch
          connector_ref: git_connector
          store_type: REMOTE
          repo_name: example_repository
          is_harness_code_repo: false
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        file_path:
          type: string
          description: File path of the Entity in the repository.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          description: Specifies whether the Entity is to be stored in Git or not.
          enum:
            - INLINE
            - REMOTE
        repo_name:
          type: string
          description: Name of the repository.
        is_harness_code_repo:
          type: boolean
          description: Is Git Experience repo harness code.
    GitUpdateDetails2:
      title: Update Git Details
      x-stoplight:
        id: w2ue8wampbxe3
      type: object
      description: Contains parameters related to updating an Entity for Git Experience.
      x-examples:
        example-update-git:
          branch_name: branch
          commit_message: Added Harness Git Experience
          last_object_id: abcdXYZ
          base_branch: old_branch
          last_commit_id: abcdXYZ
          connector_ref: git_connector
          store_type: REMOTE
          repo_name: example_repository
          file_path: /folder/file.json
          is_harness_code_repo: false
      properties:
        branch_name:
          type: string
          description: Name of the branch.
        commit_message:
          type: string
          description: Commit message used for the merge commit.
        last_object_id:
          type: string
          description: Last object identifier (for Github only).
        base_branch:
          type: string
          description: >-
            Name of the default branch (this checks out a new branch titled by
            branch_name).
        last_commit_id:
          type: string
          description: Last commit identifier.
        connector_ref:
          type: string
          description: >-
            Identifier of the Harness Connector used for CRUD operations on the
            Entity.
        store_type:
          type: string
          enum:
            - INLINE
            - REMOTE
          description: Specifies whether the Entity is to be stored in Git or not.
        repo_name:
          type: string
          description: Name of the repository.
        file_path:
          type: string
        is_harness_code_repo:
          type: boolean
          description: Is Git Experience repo harness code.
    GitImportDetails1:
      title: Import Git Details
      x-stoplight:
        id: 2ij8fppk6n5pq
      type: object
      properties:
        connector_ref:
          type: string
        repo_name:
          type: string
        branch_name:
          type: string
        file_path:
          type: string
        is_harness_code_repo:
          type: boolean
      description: Parameters related to importing an entity for Git.
    GitMoveDetails1:
      title: Move Git Details
      x-stoplight:
        id: ua9qwi7im72e0
      type: object
      description: Parameters related to moving an entity for Git Experience.
      x-examples:
        example-create-git:
          branch_name: branch
          file_path: /folder/file.json
          commit_message: Added Harness Git Experience
          base_branch: old_branch
          connector_ref: git_connector
          repo_name: example_repository
          is_harness_code_repo: false
      properties:
        branch_name:
          type: string
          description: >-
            Name of the branch. When moving an inline pipeline or a remote
            pipeline, this branch is where the remote entity is created or
            fetched.
        file_path:
          type: string
          description: File path of the entity in the repository.
        commit_message:
          type: string
          description: Merge commit message.
        base_branch:
          type: string
          description: Default branch name. This checks out the branch titled branch_name
        connector_ref:
          type: string
          description: Harness connector id used for entity CRUD operations
        repo_name:
          type: string
          description: Name of the repository.
        is_harness_code_repo:
          type: boolean
          description: Is Git Experience repo harness code.
      required:
        - branch_name
        - file_path
        - connector_ref
        - repo_name
    EntityMoveOperationType:
      type: string
      enum:
        - INLINE_TO_REMOTE
        - REMOTE_TO_INLINE
      description: Operation type to move the entity
      x-stoplight:
        id: 2x10v7rnqfd1z
    EntityConvertResponse:
      title: Entity Convert Response
      description: >-
        Result of converting an Entity between formats (Backstage to Harness or
        vice versa), containing the converted YAML definition.
      type: object
      properties:
        yaml:
          type: string
          description: Converted entity YAML definition in the target format
      required:
        - yaml
    EntityKindsResponse:
      title: Entity Kinds Response
      description: >-
        Information about an Entity Kind, including its display name,
        description, and the count of entities of this kind in the system.
      type: object
      properties:
        kind:
          type: string
          description: Kind identifier (e.g., component, api)
        display_name:
          type: string
          description: Human-readable display name for the kind
        description:
          type: string
          description: Description of the entity kind and its purpose
        total:
          type: integer
          description: Total number of entities of this kind in the system
    EntityFiltersResponse:
      title: Entity Filters Response
      description: >-
        Filter options for Entities, including the filter name and its possible
        values. Used for building dynamic filter UIs.
      type: object
      properties:
        filter:
          type: string
          description: Name of the filter (e.g., type, lifecycle, owner)
        values:
          type: object
          description: Available values for the filter (depends on the filter type)
    EntityJsonSchemaResponse:
      title: Entity JSON Schema Response
      description: >-
        JSON Schema for validating Entity definitions, which can be used for
        client-side validation before submitting entity operations.
      type: object
    EntitiesGroupsResponse:
      title: Entities Groups Response
      description: >-
        Entities organized in hierarchical groups based on account,
        organization, and project, along with count information for each level.
      type: object
      properties:
        data:
          type: object
          properties:
            account:
              type: object
              properties:
                with_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntitiesGroups'
                  description: Account-level entities organized into groups
                without_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntityResponse'
                  description: Account-level entities not associated with any group
              description: Account-level entities
            org:
              type: object
              properties:
                with_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntitiesGroups'
                  description: Organization-level entities organized into groups
                without_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntityResponse'
                  description: Organization-level entities not associated with any group
              description: Organization-level entities
            project:
              type: object
              properties:
                with_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntitiesGroups'
                  description: Project-level entities organized into groups
                without_group:
                  type: array
                  items:
                    $ref: '#/components/schemas/EntityResponse'
                  description: Project-level entities not associated with any group
              description: Project-level entities
          description: Grouped entity data
        count:
          type: object
          properties:
            total:
              type: integer
              description: Total number of entities across all scopes
            total_owned:
              type: integer
              description: >-
                Total number of entities owned by the current user or their
                groups
            total_starred:
              type: integer
              description: Total number of entities marked as favorites by the current user
            account:
              type: array
              items:
                $ref: '#/components/schemas/EntitiesGroups'
              description: Entity counts at the account level by group
            org:
              type: array
              items:
                type: object
                properties:
                  org_identifier:
                    type: string
                    description: Organization identifier
                  org_name:
                    type: string
                    description: Organization name
                  groups:
                    type: array
                    items:
                      $ref: '#/components/schemas/EntitiesGroups'
                    description: Entity counts by group within the organization
              description: Entity counts at the organization level
            project:
              type: array
              items:
                type: object
                properties:
                  org_identifier:
                    type: string
                    description: Organization identifier
                  org_name:
                    type: string
                    description: Organization name
                  project_identifier:
                    type: string
                    description: Project identifier
                  project_name:
                    type: string
                    description: Project name
                  groups:
                    type: array
                    items:
                      $ref: '#/components/schemas/EntitiesGroups'
                    description: Entity counts by group within the project
              description: Entity counts at the project level
          description: Count information for entities by scope and group
    EnvironmentProxyCreateRequest:
      title: EnvironmentProxyCreateRequest
      description: >-
        Information Environment to be created in catalog - environment name,
        identifier, owner, blueprint identifier, overrides
      x-stoplight:
        id: s9ja1fpx8qh9l
      type: object
      required:
        - environment_name
        - environment_identifier
        - owner
        - environment_blueprint_identifier
        - overrides
      properties:
        environment_name:
          type: string
          description: Environment Name
          x-stoplight:
            id: 5s137p3i9fgql
        environment_identifier:
          type: string
          description: Environment Identifier
          x-stoplight:
            id: 6pmebr31waga3
        owner:
          type: string
          description: Owner
          x-stoplight:
            id: 9z7etkk6xkx0f
        environment_blueprint_identifier:
          type: string
          description: Environment BluePrint Identifier
          x-stoplight:
            id: 0viiddkxmp9tf
        overrides:
          type: string
          description: Overrides in Yaml format
          x-stoplight:
            id: or7liwjgk3ytj
        tags:
          type: array
          description: Tags
          x-stoplight:
            id: 2oos0v1c5l74z
          items:
            x-stoplight:
              id: 2eo499jnlwm1g
            type: string
        description:
          type: string
          description: Description
          x-stoplight:
            id: ojutyvaelfa6y
    EnvironmentProxyUpdateRequest:
      title: EnvironmentProxyUpdateRequest
      x-stoplight:
        id: 9adjz79py8fu0
      type: object
      properties:
        overrides:
          type: string
          description: Overrides in Yaml format
          x-stoplight:
            id: 16pk3frz1hxht
        target_state:
          description: Target state of environment
          x-stoplight:
            id: vf9ks00g6mrhn
          enum:
            - running
            - inactive
            - instantiated
            - paused
    ApprovePipelineExecutionRequestBody:
      type: object
      properties:
        action:
          type: string
          enum:
            - APPROVE
            - REJECT
        approvalID:
          type: string
          description: ID of the approval
        message:
          type: string
          description: Message to send with the approval
      required:
        - approvalID
        - action
    Backend:
      type: object
      properties:
        steps:
          type: object
          properties:
            apply:
              type: object
              additionalProperties: true
            create:
              type: object
              additionalProperties: true
            delete:
              type: object
              additionalProperties: true
            destroy:
              type: object
              additionalProperties: true
            pause:
              type: object
              additionalProperties: true
            resume:
              type: object
              additionalProperties: true
          required:
            - apply
            - destroy
        type:
          type: string
        values:
          type: object
          additionalProperties: true
      required:
        - type
      additionalProperties: false
    CatalogEntity:
      type: object
      properties:
        backend:
          $ref: '#/components/schemas/Backend'
        identifier:
          type: string
        interface:
          $ref: '#/components/schemas/Interface'
      required:
        - identifier
      additionalProperties: false
    CompileError:
      type: object
      properties:
        message:
          type: string
      required:
        - message
    CompileRequestBody:
      type: object
      properties:
        environmentYaml:
          type: string
          description: Environment to compile
        orgIdentifier:
          type: string
          description: Org is the organization identifier.
        projectIdentifier:
          type: string
          description: Project is the project identifier.
        targetState:
          $ref: '#/components/schemas/State'
      description: Scope for the request, including account, org and project.
      required:
        - environmentYaml
        - targetState
    CompileResponseBody:
      type: object
      properties:
        combinedOverrides:
          $ref: '#/components/schemas/EnvironmentOverrides'
        configOptions:
          $ref: '#/components/schemas/EnvironmentConfigOptions'
        errors:
          type: array
          items:
            $ref: '#/components/schemas/CompileError'
        infrastructure:
          $ref: '#/components/schemas/Infrastructure1'
      required:
        - configOptions
        - errors
    Component:
      type: object
      properties:
        apiVersion:
          type: string
        identifier:
          type: string
        kind:
          type: string
        metadata:
          $ref: '#/components/schemas/Metadata'
        name:
          type: string
        orgIdentifier:
          type: string
        owner:
          type: string
        projectIdentifier:
          type: string
        scope:
          type: string
        spec:
          $ref: '#/components/schemas/ComponentSpec'
        type:
          type: string
      required:
        - spec
        - apiVersion
        - identifier
        - name
        - kind
    ComponentSpec:
      type: object
      properties:
        deploymentPipelines:
          type: array
          items:
            $ref: '#/components/schemas/DeploymentPipeline'
          description: List of deployment pipelines associated with the component
        harnessService:
          type: object
          properties:
            identifier:
              type: string
              description: Identifier of the Harness service
            orgIdentifier:
              type: string
              description: Identifier of the Harness organization
            projectIdentifier:
              type: string
              description: Identifier of the Harness project
          required:
            - identifier
    Dependency:
      type: object
      properties:
        identifier:
          type: string
        optional:
          type: boolean
      required:
        - identifier
      additionalProperties: false
    DeploymentPipeline:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the deployment pipeline
        inputset:
          type: string
          description: Input set for the deployment pipeline
        type:
          type: string
          description: >-
            Type of the deployment pipeline, can be 'install' and 'uninstall'.
            Defaults to 'install'.
        variables:
          type: object
          description: Variables for the deployment pipeline
          additionalProperties: true
      required:
        - identifier
    EntityBase:
      type: object
      properties:
        apiVersion:
          type: string
        identifier:
          type: string
        metadata:
          $ref: '#/components/schemas/Metadata'
        name:
          type: string
        orgIdentifier:
          type: string
        owner:
          type: string
        projectIdentifier:
          type: string
        scope:
          type: string
        type:
          type: string
      required:
        - apiVersion
        - identifier
        - name
        - kind
      additionalProperties: false
    EntityConfigOptions:
      type: object
      properties:
        inputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InterfaceInput'
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - inputs
    EntityDependency:
      type: object
      properties:
        identifier:
          type: string
        optional:
          type: boolean
      required:
        - identifier
      additionalProperties: false
    EntityOverrides:
      type: object
      properties:
        config:
          type: object
          description: Configuration overrides for the entity
          additionalProperties: true
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - config
      additionalProperties: false
    EntityRef:
      type: object
      properties:
        identifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
      required:
        - identifier
    Environment2:
      type: object
      properties:
        apiVersion:
          type: string
        identifier:
          type: string
        kind:
          type: string
        metadata:
          $ref: '#/components/schemas/Metadata'
        name:
          type: string
        orgIdentifier:
          type: string
        owner:
          type: string
        projectIdentifier:
          type: string
        scope:
          type: string
        spec:
          $ref: '#/components/schemas/EnvironmentSpec'
        type:
          type: string
      required:
        - spec
        - apiVersion
        - identifier
        - name
        - kind
    EnvironmentBlueprint:
      type: object
      properties:
        apiVersion:
          type: string
        identifier:
          type: string
        kind:
          type: string
          enum:
            - EnvironmentBlueprint
        metadata:
          $ref: '#/components/schemas/Metadata'
        name:
          type: string
        orgIdentifier:
          type: string
        owner:
          type: string
        projectIdentifier:
          type: string
        scope:
          type: string
        spec:
          $ref: '#/components/schemas/EnvironmentBlueprintSpec'
        type:
          type: string
      required:
        - spec
        - apiVersion
        - identifier
        - name
        - kind
    EnvironmentBlueprintMetadata:
      type: object
      properties:
        version:
          type: string
    EnvironmentBlueprintSpec:
      type: object
      properties:
        entities:
          type: array
          items:
            $ref: '#/components/schemas/CatalogEntity'
        inputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InterfaceInput'
        outputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EnvironmentOutput'
        ownedBy:
          type: array
          items:
            type: string
      required:
        - entities
    EnvironmentConfig:
      type: object
      properties:
        apiVersion:
          type: string
        identifier:
          type: string
        kind:
          type: string
          enum:
            - EnvironmentConfig
        metadata:
          $ref: '#/components/schemas/Metadata'
        name:
          type: string
        orgIdentifier:
          type: string
        owner:
          type: string
        projectIdentifier:
          type: string
        scope:
          type: string
        spec:
          $ref: '#/components/schemas/EnvironmentConfigSpec'
        type:
          type: string
      required:
        - spec
        - apiVersion
        - identifier
        - name
        - kind
    EnvironmentConfigOptions:
      type: object
      properties:
        entities:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EntityConfigOptions'
        inputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InterfaceInput'
      required:
        - inputs
        - entities
    EnvironmentConfigSpec:
      type: object
      properties:
        config:
          type: object
          additionalProperties: true
        entities:
          type: object
          additionalProperties:
            type: object
            additionalProperties: true
    EnvironmentOutput:
      type: object
      properties:
        description:
          type: string
        type:
          type: string
          enum:
            - string
            - integer
            - number
            - object
            - boolean
            - array
        value: {}
      required:
        - value
      additionalProperties: false
    EnvironmentOverrides:
      type: object
      properties:
        config:
          type: object
          description: Configuration overrides for the environment
          additionalProperties: true
        entities:
          type: object
          description: Entity-specific overrides
          additionalProperties:
            $ref: '#/components/schemas/EntityOverrides'
      required:
        - config
        - entities
      additionalProperties: false
    EnvironmentSpec:
      type: object
      properties:
        basedOn:
          $ref: '#/components/schemas/EntityRef'
        config:
          $ref: '#/components/schemas/EnvironmentConfigSpec'
        environmentBlueprint:
          $ref: '#/components/schemas/EntityRef'
        overrides:
          $ref: '#/components/schemas/EnvironmentOverrides'
        ownedBy:
          type: array
          items:
            type: string
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - environmentBlueprint
        - targetState
        - overrides
    Error:
      type: object
      properties:
        code:
          type: string
        details:
          type: object
          additionalProperties:
            type: string
        message:
          type: string
        name:
          type: string
      required:
        - name
        - message
    ExecuteRequestBody:
      type: object
      properties:
        infrastructureYaml:
          type: string
          description: infrastructure to Execute
        orgIdentifier:
          type: string
          description: Org is the organization identifier.
        projectIdentifier:
          type: string
          description: Project is the project identifier.
      description: Scope for the request, including account, org and project.
      required:
        - infrastructureYaml
    ExecutionEvent:
      type: object
      properties:
        createdAt:
          type: string
        event:
          $ref: '#/components/schemas/InfrastructureProgress'
        message:
          type: string
          description: Message associated with the event
      required:
        - event
        - createdAt
    ExecutionOutput:
      type: object
      properties:
        description:
          type: string
          description: Description of the output
        value:
          description: Value of the output
      required:
        - value
      additionalProperties: false
    ForceStateRequestBody:
      type: object
      properties:
        infrastructureID:
          type: string
          description: ID of the infrastructure
        state:
          $ref: '#/components/schemas/State'
      description: Scope for the request, including account, org and project.
      required:
        - infrastructureID
    Implementation:
      type: object
      properties:
        backend:
          type: string
        steps:
          $ref: '#/components/schemas/Steps'
        values:
          type: object
          additionalProperties: true
      required:
        - backend
        - steps
      additionalProperties: false
    InfraInstance:
      type: object
      properties:
        dependencies:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Dependency'
        identifier:
          type: string
        implementation:
          $ref: '#/components/schemas/Implementation'
        metadata:
          type: object
          additionalProperties: true
        outputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Output'
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - identifier
      additionalProperties: false
    Infrastructure1:
      type: object
      properties:
        identifier:
          type: string
        instances:
          type: array
          items:
            $ref: '#/components/schemas/InfraInstance'
        metadata:
          type: object
          additionalProperties: true
        outputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Output'
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - identifier
        - targetState
      additionalProperties: false
    InfrastructureExecution:
      type: object
      properties:
        approvals:
          type: array
          items:
            $ref: '#/components/schemas/InstanceApproval'
        completedInstanceIds:
          type: array
          items:
            type: string
          description: Instances fully updated by the execution
        events:
          type: array
          items:
            $ref: '#/components/schemas/ExecutionEvent'
        id:
          type: string
        infrastructureId:
          type: string
        instanceIds:
          type: array
          items:
            type: string
          description: Instances updated by the execution
        message:
          type: string
          description: Message associated with the execution
        outputs:
          type: object
          description: Outputs of the infrastructure execution
          additionalProperties:
            $ref: '#/components/schemas/ExecutionOutput'
        pipelineUrl:
          type: string
        progress:
          $ref: '#/components/schemas/InfrastructureProgress'
        spec:
          $ref: '#/components/schemas/Infrastructure1'
        specRevision:
          type: integer
          format: int64
        startedAt:
          type: string
        stoppedAt:
          type: string
        targetState:
          $ref: '#/components/schemas/State'
      required:
        - id
        - infrastructureId
        - instanceIds
        - specRevision
        - spec
        - startedAt
        - targetState
        - progress
        - completedInstanceIds
    InfrastructureExecutionList:
      type: object
      properties:
        executions:
          type: array
          items:
            $ref: '#/components/schemas/InfrastructureExecution'
        total:
          type: integer
          format: int64
    InfrastructureList:
      type: object
      properties:
        infrastructures:
          type: array
          items:
            $ref: '#/components/schemas/InfrastructureOutput'
        total:
          type: integer
          format: int64
    InfrastructureOutput:
      type: object
      properties:
        activeExecutions:
          type: array
          items:
            $ref: '#/components/schemas/InfrastructureExecution'
        identifier:
          type: string
          description: ID of the infrastructure
        spec:
          $ref: '#/components/schemas/InfrastructureSpec'
        state:
          $ref: '#/components/schemas/InfrastructureState'
      required:
        - identifier
        - state
        - activeExecutions
    InfrastructureProgress:
      type: object
      properties:
        progress:
          type: string
          enum:
            - unknown
            - pending
            - processing
            - done
            - failed
            - aborted
            - deleted
            - replaced
      required:
        - progress
    InfrastructureSpec:
      type: object
      properties:
        createdAt:
          type: string
          description: date (RFC3339) when the spec was created
        infrastructure:
          $ref: '#/components/schemas/Infrastructure1'
        revision:
          type: integer
          format: int64
    InfrastructureSpecList:
      type: object
      properties:
        specs:
          type: array
          items:
            $ref: '#/components/schemas/InfrastructureSpec'
        total:
          type: integer
          format: int64
    InfrastructureState:
      type: object
      properties:
        createdAt:
          type: string
          description: date (RFC3339) when the spec was created
        sessionEndedAt:
          type: string
        sessionStartedAt:
          type: string
        updatedAt:
          type: string
          description: date (RFC3339) when the spec was updated
    Input:
      type: object
      properties:
        type:
          type: string
          enum:
            - string
            - integer
            - number
            - object
            - boolean
            - array
        value: {}
      required:
        - type
      additionalProperties: false
    Instance:
      type: object
      properties:
        appliedRevision:
          type: integer
          description: Revision of the instance that is currently active
          format: int64
        backend:
          type: string
        createdAt:
          type: string
        currentState:
          $ref: '#/components/schemas/State'
        id:
          type: string
        infrastructureId:
          type: string
        message:
          type: string
        outputs:
          type: object
          additionalProperties:
            type: string
        progress:
          $ref: '#/components/schemas/InstanceProgress'
        step:
          $ref: '#/components/schemas/InstanceStep'
        targetRevision:
          type: integer
          description: Target revision of the instance
          format: int64
        targetState:
          $ref: '#/components/schemas/State'
        updatedAt:
          type: string
        url:
          type: string
    InstanceApproval:
      type: object
      properties:
        instanceId:
          type: string
        pipelineApprovals:
          type: array
          items:
            $ref: '#/components/schemas/PipelineApproval'
      required:
        - instanceId
        - pipelineApprovals
    InstanceEvent:
      type: object
      properties:
        createdAt:
          type: string
        event:
          $ref: '#/components/schemas/State'
        id:
          type: string
        infrastructureId:
          type: string
        infrastructureRevision:
          type: integer
          format: int64
        instanceId:
          type: string
    InstanceEventList:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/InstanceEvent'
        total:
          type: integer
          format: int64
    InstanceList:
      type: object
      properties:
        instances:
          type: array
          items:
            $ref: '#/components/schemas/Instance'
        total:
          type: integer
          format: int64
    InstanceProgress:
      type: object
      properties:
        progress:
          type: string
          enum:
            - unknown
            - pending
            - running
            - done
            - failed
            - aborted
            - skipped
      required:
        - progress
    InstanceStep:
      type: object
      properties:
        step:
          type: string
          enum:
            - unknown
            - apply
            - destroy
            - create
            - delete
            - pause
            - resume
      required:
        - step
    Interface:
      type: object
      properties:
        dependencies:
          type: array
          items:
            $ref: '#/components/schemas/EntityDependency'
        inputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InterfaceInput'
        outputs:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InterfaceOutput'
      additionalProperties: false
    InterfaceInput:
      type: object
      properties:
        default: {}
        type:
          type: string
          enum:
            - string
            - integer
            - number
            - object
            - boolean
            - array
        value: {}
      required:
        - type
      additionalProperties: false
    InterfaceOutput:
      type: object
      properties:
        optional:
          type: boolean
        type:
          type: string
          enum:
            - string
            - integer
            - number
            - object
            - boolean
            - array
      required:
        - type
      additionalProperties: false
    Metadata:
      type: object
      properties:
        description:
          type: string
        tags:
          type: array
          items:
            type: string
    Output:
      type: object
      properties:
        description:
          type: string
        type:
          type: string
          enum:
            - string
            - integer
            - number
            - object
            - boolean
            - array
        value: {}
      required:
        - value
      additionalProperties: false
    PipelineApproval:
      type: object
      properties:
        approvalID:
          type: string
        deadline:
          type: string
        message:
          type: string
        orgID:
          type: string
        pipelineExecutionId:
          type: string
        pipelineId:
          type: string
        pipelineUrl:
          type: string
        projectID:
          type: string
      required:
        - approvalID
        - pipelineExecutionId
        - orgID
        - projectID
        - message
    SchemasRequestBody:
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Org is the organization identifier.
        projectIdentifier:
          type: string
          description: Project is the project identifier.
      description: Scope for the request, including account, org and project.
    SchemasResponseBody:
      type: object
      properties:
        environmentBlueprintSchema:
          type: string
          description: Environment blueprint schema
        environmentSchema:
          type: string
          description: Environment schema
      required:
        - environmentBlueprintSchema
        - environmentSchema
    State:
      type: object
      properties:
        state:
          type: string
          enum:
            - unknown
            - inactive
            - instantiated
            - running
            - paused
      required:
        - state
    Steps:
      type: object
      properties:
        apply:
          type: object
          additionalProperties: true
        create:
          type: object
          additionalProperties: true
        delete:
          type: object
          additionalProperties: true
        destroy:
          type: object
          additionalProperties: true
        pause:
          type: object
          additionalProperties: true
        resume:
          type: object
          additionalProperties: true
      required:
        - apply
        - destroy
      additionalProperties: false
    Failure:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
      description: This is Failure entity as defied in Harness
    ValidationError:
      type: object
      properties:
        fieldId:
          type: string
        error:
          type: string
    Error1:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
        metadata:
          $ref: '#/components/schemas/ErrorMetadata2'
      description: This is Error entity as defined in Harness
    ErrorMetadata2:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    ResponseMessage:
      type: object
      properties:
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        level:
          type: string
          enum:
            - INFO
            - ERROR
        message:
          type: string
        exception:
          type: object
          properties:
            stackTrace:
              type: array
              items:
                type: object
                properties:
                  classLoaderName:
                    type: string
                  moduleName:
                    type: string
                  moduleVersion:
                    type: string
                  methodName:
                    type: string
                  fileName:
                    type: string
                  lineNumber:
                    type: integer
                    format: int32
                  nativeMethod:
                    type: boolean
                  className:
                    type: string
            message:
              type: string
            suppressed:
              type: array
              items:
                type: object
                properties:
                  stackTrace:
                    type: array
                    items:
                      type: object
                      properties:
                        classLoaderName:
                          type: string
                        moduleName:
                          type: string
                        moduleVersion:
                          type: string
                        methodName:
                          type: string
                        fileName:
                          type: string
                        lineNumber:
                          type: integer
                          format: int32
                        nativeMethod:
                          type: boolean
                        className:
                          type: string
                  message:
                    type: string
                  localizedMessage:
                    type: string
            localizedMessage:
              type: string
        failureTypes:
          type: array
          items:
            type: string
            enum:
              - EXPIRED
              - DELEGATE_PROVISIONING
              - CONNECTIVITY
              - AUTHENTICATION
              - VERIFICATION_FAILURE
              - APPLICATION_ERROR
              - AUTHORIZATION_ERROR
              - TIMEOUT_ERROR
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
        additionalInfo:
          type: object
          additionalProperties:
            type: string
    Account:
      type: object
      properties:
        identifier:
          type: string
          description: Account Identifier.
        name:
          type: string
          description: Name of the Account.
        companyName:
          type: string
          description: Name of the Company.
        accountType:
          type: string
          description: Type of the Account
        accountStatus:
          type: string
          description: Status of the Account
        cluster:
          type: string
          description: Name of the cluster associated with this Account.
        defaultExperience:
          type: string
          description: Default experience of the Account.
          enum:
            - NG
            - CG
        authenticationMechanism:
          type: string
          description: Authentication mechanism associated with the account.
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
        serviceAccountConfig:
          $ref: '#/components/schemas/ServiceAccountConfig'
        createdAt:
          type: integer
          description: Account creation time in epoch
          format: int64
        expiryTime:
          type: integer
          description: Account's license expiry time in epoch
          format: int64
        ringName:
          type: string
          description: Specifies delegate ring version for account
        subdomainURL:
          type: string
          description: Specifies subdomain url for account
        sessionTimeoutInMinutes:
          type: integer
          description: SessionTimeout in minutes
          format: int32
        publicAccessEnabled:
          type: boolean
          description: Specifies if Account has public access enabled.
        absoluteSessionTimeoutInMinutes:
          type: integer
          description: Absolute SessionTimeout in minutes
          format: int32
        productLed:
          type: boolean
        oauthEnabled:
          type: boolean
        twoFactorAdminEnforced:
          type: boolean
        nextGenEnabled:
          type: boolean
        crossGenerationAccessEnabled:
          type: boolean
        cannyUsernameAbbreviationEnabled:
          type: boolean
        harnessSupportAccessAllowed:
          type: boolean
      description: Account details defined in Harness.
    ResponseDTOAccount:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Account'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceAccountConfig:
      type: object
      properties:
        apiKeyLimit:
          type: integer
          format: int64
        tokenLimit:
          type: integer
          format: int64
      description: Service Account configuration associated with this Account.
    ResponseDTOBoolean:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: boolean
        metaData:
          type: object
        correlationId:
          type: string
    ByteString:
      type: object
      properties:
        empty:
          type: boolean
        validUtf8:
          type: boolean
    Declaration:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        fullNameBytes:
          $ref: '#/components/schemas/ByteString'
        reserved:
          type: boolean
        type:
          type: string
        number:
          type: integer
          format: int32
        fullName:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Declaration'
        parserForType:
          $ref: '#/components/schemas/ParserDeclaration'
        serializedSize:
          type: integer
          format: int32
        repeated:
          type: boolean
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    DeclarationOrBuilder:
      type: object
      properties:
        fullNameBytes:
          $ref: '#/components/schemas/ByteString'
        reserved:
          type: boolean
        type:
          type: string
        number:
          type: integer
          format: int32
        fullName:
          type: string
        repeated:
          type: boolean
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    Descriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/DescriptorProto'
        options:
          $ref: '#/components/schemas/MessageOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        containingType:
          $ref: '#/components/schemas/Descriptor'
        nestedTypes:
          type: array
          items:
            $ref: '#/components/schemas/Descriptor'
        enumTypes:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptor'
        fields:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        oneofs:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptor'
        name:
          type: string
        extendable:
          type: boolean
        realOneofs:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptor'
    DescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/MessageOptions'
        fieldCount:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/DescriptorProto'
        reservedRangeList:
          type: array
          items:
            $ref: '#/components/schemas/ReservedRange'
        reservedNameList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        extensionRangeList:
          type: array
          items:
            $ref: '#/components/schemas/ExtensionRange'
        oneofDeclCount:
          type: integer
          format: int32
        nestedTypeCount:
          type: integer
          format: int32
        enumTypeCount:
          type: integer
          format: int32
        extensionCount:
          type: integer
          format: int32
        extensionRangeCount:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        enumTypeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProto'
        enumTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProtoOrBuilder'
        extensionList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        extensionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        optionsOrBuilder:
          $ref: '#/components/schemas/MessageOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        fieldList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        fieldOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        nestedTypeList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProto'
        nestedTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProtoOrBuilder'
        extensionRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ExtensionRangeOrBuilder'
        oneofDeclList:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptorProto'
        oneofDeclOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptorProtoOrBuilder'
        reservedRangeCount:
          type: integer
          format: int32
        reservedRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ReservedRangeOrBuilder'
        reservedNameCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    DescriptorProtoOrBuilder:
      type: object
      properties:
        name:
          type: string
        options:
          $ref: '#/components/schemas/MessageOptions'
        fieldCount:
          type: integer
          format: int32
        reservedRangeList:
          type: array
          items:
            $ref: '#/components/schemas/ReservedRange'
        reservedNameList:
          type: array
          items:
            type: string
        extensionRangeList:
          type: array
          items:
            $ref: '#/components/schemas/ExtensionRange'
        oneofDeclCount:
          type: integer
          format: int32
        nestedTypeCount:
          type: integer
          format: int32
        enumTypeCount:
          type: integer
          format: int32
        extensionCount:
          type: integer
          format: int32
        extensionRangeCount:
          type: integer
          format: int32
        enumTypeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProto'
        enumTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProtoOrBuilder'
        extensionList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        extensionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        optionsOrBuilder:
          $ref: '#/components/schemas/MessageOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        fieldList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        fieldOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        extensionRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ExtensionRangeOrBuilder'
        oneofDeclList:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptorProto'
        oneofDeclOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptorProtoOrBuilder'
        reservedRangeCount:
          type: integer
          format: int32
        reservedRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ReservedRangeOrBuilder'
        reservedNameCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EditionDefault:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        value:
          type: string
        initialized:
          type: boolean
        edition:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        defaultInstanceForType:
          $ref: '#/components/schemas/EditionDefault'
        parserForType:
          $ref: '#/components/schemas/ParserEditionDefault'
        serializedSize:
          type: integer
          format: int32
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EditionDefaultOrBuilder:
      type: object
      properties:
        value:
          type: string
        edition:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EntityGitDetails1:
      type: object
      properties:
        valid:
          type: boolean
          description: Indicates if the Entity is valid
        invalidYaml:
          type: string
          description: This has the Git File content if the entity is invalid
      description: This contains Validity Details of the Entity
    EnumDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/EnumDescriptorProto'
        options:
          $ref: '#/components/schemas/EnumOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        containingType:
          $ref: '#/components/schemas/Descriptor'
        values:
          type: array
          items:
            $ref: '#/components/schemas/EnumValueDescriptor'
        name:
          type: string
        closed:
          type: boolean
    EnumDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/EnumOptions'
        defaultInstanceForType:
          $ref: '#/components/schemas/EnumDescriptorProto'
        reservedRangeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumReservedRange'
        reservedNameList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        parserForType:
          $ref: '#/components/schemas/ParserEnumDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/EnumOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        reservedRangeCount:
          type: integer
          format: int32
        reservedRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumReservedRangeOrBuilder'
        reservedNameCount:
          type: integer
          format: int32
        valueCount:
          type: integer
          format: int32
        valueOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumValueDescriptorProtoOrBuilder'
        valueList:
          type: array
          items:
            $ref: '#/components/schemas/EnumValueDescriptorProto'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EnumDescriptorProtoOrBuilder:
      type: object
      properties:
        name:
          type: string
        options:
          $ref: '#/components/schemas/EnumOptions'
        reservedRangeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumReservedRange'
        reservedNameList:
          type: array
          items:
            type: string
        optionsOrBuilder:
          $ref: '#/components/schemas/EnumOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        reservedRangeCount:
          type: integer
          format: int32
        reservedRangeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumReservedRangeOrBuilder'
        reservedNameCount:
          type: integer
          format: int32
        valueCount:
          type: integer
          format: int32
        valueOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumValueDescriptorProtoOrBuilder'
        valueList:
          type: array
          items:
            $ref: '#/components/schemas/EnumValueDescriptorProto'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EnumOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/EnumOptions'
        parserForType:
          $ref: '#/components/schemas/ParserEnumOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        deprecatedLegacyJsonFieldConflicts:
          type: boolean
        allowAlias:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EnumOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        deprecatedLegacyJsonFieldConflicts:
          type: boolean
        allowAlias:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EnumReservedRange:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/EnumReservedRange'
        parserForType:
          $ref: '#/components/schemas/ParserEnumReservedRange'
        serializedSize:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EnumReservedRangeOrBuilder:
      type: object
      properties:
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EnumValueDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/EnumValueDescriptorProto'
        options:
          $ref: '#/components/schemas/EnumValueOptions'
        fullName:
          type: string
        type:
          $ref: '#/components/schemas/EnumDescriptor'
        name:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        number:
          type: integer
          format: int32
    EnumValueDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        number:
          type: integer
          format: int32
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/EnumValueOptions'
        defaultInstanceForType:
          $ref: '#/components/schemas/EnumValueDescriptorProto'
        parserForType:
          $ref: '#/components/schemas/ParserEnumValueDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/EnumValueOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EnumValueDescriptorProtoOrBuilder:
      type: object
      properties:
        name:
          type: string
        number:
          type: integer
          format: int32
        options:
          $ref: '#/components/schemas/EnumValueOptions'
        optionsOrBuilder:
          $ref: '#/components/schemas/EnumValueOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EnumValueOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/EnumValueOptions'
        parserForType:
          $ref: '#/components/schemas/ParserEnumValueOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        featureSupport:
          $ref: '#/components/schemas/FeatureSupport'
        featureSupportOrBuilder:
          $ref: '#/components/schemas/FeatureSupportOrBuilder'
        debugRedact:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EnumValueOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        featureSupport:
          $ref: '#/components/schemas/FeatureSupport'
        featureSupportOrBuilder:
          $ref: '#/components/schemas/FeatureSupportOrBuilder'
        debugRedact:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    EnvironmentGroup:
      type: object
      properties:
        envGroup:
          $ref: '#/components/schemas/EnvironmentGroupResponse'
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastModifiedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
      description: This is the view of Environment Group Entity defined in Harness
    EnvironmentGroupResponse:
      type: object
      properties:
        accountId:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier for the Entity.
        name:
          type: string
          description: Name of the Entity
        description:
          type: string
          description: Description of the entity
        color:
          type: string
          description: Color Code for the Entity
        deleted:
          type: boolean
          description: Deletion status for Entity
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        envIdentifiers:
          type: array
          description: Environment Identifiers linked with Environment Group Identity
          items:
            type: string
            description: Environment Identifiers linked with Environment Group Identity
        envResponse:
          type: array
          description: Info of Environments linked with Entity
          items:
            $ref: '#/components/schemas/EnvironmentResponse1'
        yaml:
          type: string
          description: Yaml of the Environment Group
        gitDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
      description: This is the Environment Group Entity defined in Harness
    EnvironmentResponse1:
      type: object
      properties:
        environment:
          $ref: '#/components/schemas/EnvironmentResponseDetails'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        entityValidityDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
    EnvironmentResponseDetails:
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          type: string
        color:
          type: string
        type:
          type: string
          enum:
            - PreProduction
            - Production
        deleted:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
        yaml:
          type: string
      description: This is the Environment entity defined in Harness
    ExtensionRange:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/ExtensionRangeOptions'
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/ExtensionRange'
        parserForType:
          $ref: '#/components/schemas/ParserExtensionRange'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/ExtensionRangeOptionsOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExtensionRangeOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/ExtensionRangeOptions'
        parserForType:
          $ref: '#/components/schemas/ParserExtensionRangeOptions'
        serializedSize:
          type: integer
          format: int32
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        declarationCount:
          type: integer
          format: int32
        declarationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/DeclarationOrBuilder'
        declarationList:
          type: array
          items:
            $ref: '#/components/schemas/CvDeclaration'
        verification:
          type: string
          enum:
            - DECLARATION
            - UNVERIFIED
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExtensionRangeOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        declarationCount:
          type: integer
          format: int32
        declarationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/DeclarationOrBuilder'
        declarationList:
          type: array
          items:
            $ref: '#/components/schemas/CvDeclaration'
        verification:
          type: string
          enum:
            - DECLARATION
            - UNVERIFIED
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    ExtensionRangeOrBuilder:
      type: object
      properties:
        options:
          $ref: '#/components/schemas/ExtensionRangeOptions'
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/ExtensionRangeOptionsOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    FeatureSet:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/FeatureSet'
        enumType:
          type: string
          enum:
            - ENUM_TYPE_UNKNOWN
            - OPEN
            - CLOSED
        parserForType:
          $ref: '#/components/schemas/ParserFeatureSet'
        serializedSize:
          type: integer
          format: int32
        messageEncoding:
          type: string
          enum:
            - MESSAGE_ENCODING_UNKNOWN
            - LENGTH_PREFIXED
            - DELIMITED
        utf8Validation:
          type: string
          enum:
            - UTF8_VALIDATION_UNKNOWN
            - VERIFY
            - NONE
        fieldPresence:
          type: string
          enum:
            - FIELD_PRESENCE_UNKNOWN
            - EXPLICIT
            - IMPLICIT
            - LEGACY_REQUIRED
        repeatedFieldEncoding:
          type: string
          enum:
            - REPEATED_FIELD_ENCODING_UNKNOWN
            - PACKED
            - EXPANDED
        jsonFormat:
          type: string
          enum:
            - JSON_FORMAT_UNKNOWN
            - ALLOW
            - LEGACY_BEST_EFFORT
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FeatureSetOrBuilder:
      type: object
      properties:
        enumType:
          type: string
          enum:
            - ENUM_TYPE_UNKNOWN
            - OPEN
            - CLOSED
        messageEncoding:
          type: string
          enum:
            - MESSAGE_ENCODING_UNKNOWN
            - LENGTH_PREFIXED
            - DELIMITED
        utf8Validation:
          type: string
          enum:
            - UTF8_VALIDATION_UNKNOWN
            - VERIFY
            - NONE
        fieldPresence:
          type: string
          enum:
            - FIELD_PRESENCE_UNKNOWN
            - EXPLICIT
            - IMPLICIT
            - LEGACY_REQUIRED
        repeatedFieldEncoding:
          type: string
          enum:
            - REPEATED_FIELD_ENCODING_UNKNOWN
            - PACKED
            - EXPANDED
        jsonFormat:
          type: string
          enum:
            - JSON_FORMAT_UNKNOWN
            - ALLOW
            - LEGACY_BEST_EFFORT
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    FeatureSupport:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/FeatureSupport'
        parserForType:
          $ref: '#/components/schemas/ParserFeatureSupport'
        serializedSize:
          type: integer
          format: int32
        editionIntroduced:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        editionDeprecated:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        deprecationWarning:
          type: string
        deprecationWarningBytes:
          $ref: '#/components/schemas/ByteString'
        editionRemoved:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FeatureSupportOrBuilder:
      type: object
      properties:
        editionIntroduced:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        editionDeprecated:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        deprecationWarning:
          type: string
        deprecationWarningBytes:
          $ref: '#/components/schemas/ByteString'
        editionRemoved:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    FieldDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/FieldDescriptorProto'
        options:
          $ref: '#/components/schemas/FieldOptions'
        fullName:
          type: string
        jsonName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        extensionScope:
          $ref: '#/components/schemas/Descriptor'
        type:
          type: string
          enum:
            - DOUBLE
            - FLOAT
            - INT64
            - UINT64
            - INT32
            - FIXED64
            - FIXED32
            - BOOL
            - STRING
            - GROUP
            - MESSAGE
            - BYTES
            - UINT32
            - ENUM
            - SFIXED32
            - SFIXED64
            - SINT32
            - SINT64
        containingType:
          $ref: '#/components/schemas/Descriptor'
        messageType:
          $ref: '#/components/schemas/Descriptor'
        containingOneof:
          $ref: '#/components/schemas/OneofDescriptor'
        enumType:
          $ref: '#/components/schemas/EnumDescriptor'
        defaultValue:
          type: object
        javaType:
          type: string
          enum:
            - INT
            - LONG
            - FLOAT
            - DOUBLE
            - BOOLEAN
            - STRING
            - BYTE_STRING
            - ENUM
            - MESSAGE
        name:
          type: string
        number:
          type: integer
          format: int32
        required:
          type: boolean
        optional:
          type: boolean
        repeated:
          type: boolean
        mapField:
          type: boolean
        extension:
          type: boolean
        liteType:
          type: string
          enum:
            - DOUBLE
            - FLOAT
            - INT64
            - UINT64
            - INT32
            - FIXED64
            - FIXED32
            - BOOL
            - STRING
            - GROUP
            - MESSAGE
            - BYTES
            - UINT32
            - ENUM
            - SFIXED32
            - SFIXED64
            - SINT32
            - SINT64
        packable:
          type: boolean
        liteJavaType:
          type: string
          enum:
            - INT
            - LONG
            - FLOAT
            - DOUBLE
            - BOOLEAN
            - STRING
            - BYTE_STRING
            - ENUM
            - MESSAGE
        realContainingOneof:
          $ref: '#/components/schemas/OneofDescriptor'
        packed:
          type: boolean
    FieldDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        label:
          type: string
          enum:
            - LABEL_OPTIONAL
            - LABEL_REPEATED
            - LABEL_REQUIRED
        name:
          type: string
        typeName:
          type: string
        type:
          type: string
          enum:
            - TYPE_DOUBLE
            - TYPE_FLOAT
            - TYPE_INT64
            - TYPE_UINT64
            - TYPE_INT32
            - TYPE_FIXED64
            - TYPE_FIXED32
            - TYPE_BOOL
            - TYPE_STRING
            - TYPE_GROUP
            - TYPE_MESSAGE
            - TYPE_BYTES
            - TYPE_UINT32
            - TYPE_ENUM
            - TYPE_SFIXED32
            - TYPE_SFIXED64
            - TYPE_SINT32
            - TYPE_SINT64
        defaultValue:
          type: string
        number:
          type: integer
          format: int32
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/FieldOptions'
        typeNameBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/FieldDescriptorProto'
        parserForType:
          $ref: '#/components/schemas/ParserFieldDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/FieldOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        jsonName:
          type: string
        proto3Optional:
          type: boolean
        oneofIndex:
          type: integer
          format: int32
        extendee:
          type: string
        extendeeBytes:
          $ref: '#/components/schemas/ByteString'
        defaultValueBytes:
          $ref: '#/components/schemas/ByteString'
        jsonNameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FieldDescriptorProtoOrBuilder:
      type: object
      properties:
        label:
          type: string
          enum:
            - LABEL_OPTIONAL
            - LABEL_REPEATED
            - LABEL_REQUIRED
        name:
          type: string
        typeName:
          type: string
        type:
          type: string
          enum:
            - TYPE_DOUBLE
            - TYPE_FLOAT
            - TYPE_INT64
            - TYPE_UINT64
            - TYPE_INT32
            - TYPE_FIXED64
            - TYPE_FIXED32
            - TYPE_BOOL
            - TYPE_STRING
            - TYPE_GROUP
            - TYPE_MESSAGE
            - TYPE_BYTES
            - TYPE_UINT32
            - TYPE_ENUM
            - TYPE_SFIXED32
            - TYPE_SFIXED64
            - TYPE_SINT32
            - TYPE_SINT64
        defaultValue:
          type: string
        number:
          type: integer
          format: int32
        options:
          $ref: '#/components/schemas/FieldOptions'
        typeNameBytes:
          $ref: '#/components/schemas/ByteString'
        optionsOrBuilder:
          $ref: '#/components/schemas/FieldOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        jsonName:
          type: string
        proto3Optional:
          type: boolean
        oneofIndex:
          type: integer
          format: int32
        extendee:
          type: string
        extendeeBytes:
          $ref: '#/components/schemas/ByteString'
        defaultValueBytes:
          $ref: '#/components/schemas/ByteString'
        jsonNameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    FieldOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        retention:
          type: string
          enum:
            - RETENTION_UNKNOWN
            - RETENTION_RUNTIME
            - RETENTION_SOURCE
        editionDefaultsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EditionDefaultOrBuilder'
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/FieldOptions'
        parserForType:
          $ref: '#/components/schemas/ParserFieldOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        packed:
          type: boolean
        targetsList:
          type: array
          items:
            type: string
            enum:
              - TARGET_TYPE_UNKNOWN
              - TARGET_TYPE_FILE
              - TARGET_TYPE_EXTENSION_RANGE
              - TARGET_TYPE_MESSAGE
              - TARGET_TYPE_FIELD
              - TARGET_TYPE_ONEOF
              - TARGET_TYPE_ENUM
              - TARGET_TYPE_ENUM_ENTRY
              - TARGET_TYPE_SERVICE
              - TARGET_TYPE_METHOD
        targetsCount:
          type: integer
          format: int32
        editionDefaultsList:
          type: array
          items:
            $ref: '#/components/schemas/EditionDefault'
        editionDefaultsCount:
          type: integer
          format: int32
        featureSupport:
          $ref: '#/components/schemas/FeatureSupport'
        featureSupportOrBuilder:
          $ref: '#/components/schemas/FeatureSupportOrBuilder'
        ctype:
          type: string
          enum:
            - STRING
            - CORD
            - STRING_PIECE
        jstype:
          type: string
          enum:
            - JS_NORMAL
            - JS_STRING
            - JS_NUMBER
        lazy:
          type: boolean
        unverifiedLazy:
          type: boolean
        weak:
          type: boolean
        debugRedact:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FieldOptionsOrBuilder:
      type: object
      properties:
        retention:
          type: string
          enum:
            - RETENTION_UNKNOWN
            - RETENTION_RUNTIME
            - RETENTION_SOURCE
        editionDefaultsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EditionDefaultOrBuilder'
        features:
          $ref: '#/components/schemas/FeatureSet'
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        packed:
          type: boolean
        targetsList:
          type: array
          items:
            type: string
            enum:
              - TARGET_TYPE_UNKNOWN
              - TARGET_TYPE_FILE
              - TARGET_TYPE_EXTENSION_RANGE
              - TARGET_TYPE_MESSAGE
              - TARGET_TYPE_FIELD
              - TARGET_TYPE_ONEOF
              - TARGET_TYPE_ENUM
              - TARGET_TYPE_ENUM_ENTRY
              - TARGET_TYPE_SERVICE
              - TARGET_TYPE_METHOD
        targetsCount:
          type: integer
          format: int32
        editionDefaultsList:
          type: array
          items:
            $ref: '#/components/schemas/EditionDefault'
        editionDefaultsCount:
          type: integer
          format: int32
        featureSupport:
          $ref: '#/components/schemas/FeatureSupport'
        featureSupportOrBuilder:
          $ref: '#/components/schemas/FeatureSupportOrBuilder'
        ctype:
          type: string
          enum:
            - STRING
            - CORD
            - STRING_PIECE
        jstype:
          type: string
          enum:
            - JS_NORMAL
            - JS_STRING
            - JS_NUMBER
        lazy:
          type: boolean
        unverifiedLazy:
          type: boolean
        weak:
          type: boolean
        debugRedact:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    FileDescriptor:
      type: object
      properties:
        proto:
          $ref: '#/components/schemas/CvFileDescriptorProto'
        options:
          $ref: '#/components/schemas/FileOptions'
        messageTypes:
          type: array
          items:
            $ref: '#/components/schemas/Descriptor'
        enumTypes:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptor'
        services:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDescriptor'
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        dependencies:
          type: array
          items:
            $ref: '#/components/schemas/FileDescriptor'
        publicDependencies:
          type: array
          items:
            $ref: '#/components/schemas/FileDescriptor'
        name:
          type: string
        package:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        fullName:
          type: string
    FileDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        package:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/FileOptions'
        edition:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        defaultInstanceForType:
          $ref: '#/components/schemas/FileDescriptorProto'
        syntax:
          type: string
        enumTypeCount:
          type: integer
          format: int32
        extensionCount:
          type: integer
          format: int32
        publicDependencyCount:
          type: integer
          format: int32
        dependencyCount:
          type: integer
          format: int32
        messageTypeCount:
          type: integer
          format: int32
        serviceCount:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserFileDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        packageBytes:
          $ref: '#/components/schemas/ByteString'
        dependencyList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        publicDependencyList:
          type: array
          items:
            type: integer
            format: int32
        weakDependencyList:
          type: array
          items:
            type: integer
            format: int32
        weakDependencyCount:
          type: integer
          format: int32
        messageTypeList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProto'
        messageTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProtoOrBuilder'
        enumTypeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProto'
        enumTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProtoOrBuilder'
        serviceList:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDescriptorProto'
        serviceOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDescriptorProtoOrBuilder'
        extensionList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        extensionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        optionsOrBuilder:
          $ref: '#/components/schemas/FileOptionsOrBuilder'
        sourceCodeInfo:
          $ref: '#/components/schemas/SourceCodeInfo'
        sourceCodeInfoOrBuilder:
          $ref: '#/components/schemas/SourceCodeInfoOrBuilder'
        syntaxBytes:
          $ref: '#/components/schemas/ByteString'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FileOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/FileOptions'
        parserForType:
          $ref: '#/components/schemas/ParserFileOptions'
        serializedSize:
          type: integer
          format: int32
        javaStringCheckUtf8:
          type: boolean
        javaPackageBytes:
          $ref: '#/components/schemas/ByteString'
        javaOuterClassname:
          type: string
        javaOuterClassnameBytes:
          $ref: '#/components/schemas/ByteString'
        javaMultipleFiles:
          type: boolean
        javaGenerateEqualsAndHash:
          type: boolean
        optimizeFor:
          type: string
          enum:
            - SPEED
            - CODE_SIZE
            - LITE_RUNTIME
        goPackage:
          type: string
        javaPackage:
          type: string
        goPackageBytes:
          $ref: '#/components/schemas/ByteString'
        ccGenericServices:
          type: boolean
        javaGenericServices:
          type: boolean
        pyGenericServices:
          type: boolean
        deprecated:
          type: boolean
        ccEnableArenas:
          type: boolean
        objcClassPrefix:
          type: string
        objcClassPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        csharpNamespace:
          type: string
        csharpNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        swiftPrefix:
          type: string
        swiftPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        phpClassPrefix:
          type: string
        phpClassPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        phpNamespace:
          type: string
        phpNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        phpMetadataNamespace:
          type: string
        phpMetadataNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        rubyPackage:
          type: string
        rubyPackageBytes:
          $ref: '#/components/schemas/ByteString'
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FileOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        javaStringCheckUtf8:
          type: boolean
        javaPackageBytes:
          $ref: '#/components/schemas/ByteString'
        javaOuterClassname:
          type: string
        javaOuterClassnameBytes:
          $ref: '#/components/schemas/ByteString'
        javaMultipleFiles:
          type: boolean
        javaGenerateEqualsAndHash:
          type: boolean
        optimizeFor:
          type: string
          enum:
            - SPEED
            - CODE_SIZE
            - LITE_RUNTIME
        goPackage:
          type: string
        javaPackage:
          type: string
        goPackageBytes:
          $ref: '#/components/schemas/ByteString'
        ccGenericServices:
          type: boolean
        javaGenericServices:
          type: boolean
        pyGenericServices:
          type: boolean
        deprecated:
          type: boolean
        ccEnableArenas:
          type: boolean
        objcClassPrefix:
          type: string
        objcClassPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        csharpNamespace:
          type: string
        csharpNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        swiftPrefix:
          type: string
        swiftPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        phpClassPrefix:
          type: string
        phpClassPrefixBytes:
          $ref: '#/components/schemas/ByteString'
        phpNamespace:
          type: string
        phpNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        phpMetadataNamespace:
          type: string
        phpMetadataNamespaceBytes:
          $ref: '#/components/schemas/ByteString'
        rubyPackage:
          type: string
        rubyPackageBytes:
          $ref: '#/components/schemas/ByteString'
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    GovernanceMetadata2:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        deny:
          type: boolean
        detailsList:
          type: array
          items:
            $ref: '#/components/schemas/PolicySetMetadata1'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        detailsCount:
          type: integer
          format: int32
        detailsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicySetMetadataOrBuilder'
        entityBytes:
          $ref: '#/components/schemas/ByteString'
        actionBytes:
          $ref: '#/components/schemas/ByteString'
        message:
          type: string
        id:
          type: string
        type:
          type: string
        timestamp:
          type: integer
          format: int64
        initialized:
          type: boolean
        entity:
          type: string
        status:
          type: string
        action:
          type: string
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserGovernanceMetadata'
        defaultInstanceForType:
          $ref: '#/components/schemas/GovernanceMetadata2'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
      description: GovernanceMetadata for OPA evaluation
    Location:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        pathList:
          type: array
          items:
            type: integer
            format: int32
        pathCount:
          type: integer
          format: int32
        spanList:
          type: array
          items:
            type: integer
            format: int32
        spanCount:
          type: integer
          format: int32
        leadingComments:
          type: string
        leadingCommentsBytes:
          $ref: '#/components/schemas/ByteString'
        trailingComments:
          type: string
        trailingCommentsBytes:
          $ref: '#/components/schemas/ByteString'
        leadingDetachedCommentsCount:
          type: integer
          format: int32
        leadingDetachedCommentsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Location'
        parserForType:
          $ref: '#/components/schemas/ParserLocation'
        serializedSize:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    LocationOrBuilder:
      type: object
      properties:
        pathList:
          type: array
          items:
            type: integer
            format: int32
        pathCount:
          type: integer
          format: int32
        spanList:
          type: array
          items:
            type: integer
            format: int32
        spanCount:
          type: integer
          format: int32
        leadingComments:
          type: string
        leadingCommentsBytes:
          $ref: '#/components/schemas/ByteString'
        trailingComments:
          type: string
        trailingCommentsBytes:
          $ref: '#/components/schemas/ByteString'
        leadingDetachedCommentsCount:
          type: integer
          format: int32
        leadingDetachedCommentsList:
          type: array
          items:
            type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    Message:
      type: object
      properties:
        parserForType:
          $ref: '#/components/schemas/ParserMessage'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/MessageLite'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
    MessageLite:
      type: object
      properties:
        parserForType:
          $ref: '#/components/schemas/ParserMessageLite'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/MessageLite'
    MessageOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/MessageOptions'
        messageSetWireFormat:
          type: boolean
        parserForType:
          $ref: '#/components/schemas/ParserMessageOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        mapEntry:
          type: boolean
        noStandardDescriptorAccessor:
          type: boolean
        deprecatedLegacyJsonFieldConflicts:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    MessageOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        messageSetWireFormat:
          type: boolean
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        mapEntry:
          type: boolean
        noStandardDescriptorAccessor:
          type: boolean
        deprecatedLegacyJsonFieldConflicts:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    MethodDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/MethodDescriptorProto'
        options:
          $ref: '#/components/schemas/MethodOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        service:
          $ref: '#/components/schemas/ServiceDescriptor'
        inputType:
          $ref: '#/components/schemas/Descriptor'
        outputType:
          $ref: '#/components/schemas/Descriptor'
        clientStreaming:
          type: boolean
        serverStreaming:
          type: boolean
        name:
          type: string
    MethodDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        inputTypeBytes:
          $ref: '#/components/schemas/ByteString'
        outputTypeBytes:
          $ref: '#/components/schemas/ByteString'
        clientStreaming:
          type: boolean
        serverStreaming:
          type: boolean
        name:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/MethodOptions'
        outputType:
          type: string
        inputType:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/MethodDescriptorProto'
        parserForType:
          $ref: '#/components/schemas/ParserMethodDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/MethodOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    MethodDescriptorProtoOrBuilder:
      type: object
      properties:
        inputTypeBytes:
          $ref: '#/components/schemas/ByteString'
        outputTypeBytes:
          $ref: '#/components/schemas/ByteString'
        clientStreaming:
          type: boolean
        serverStreaming:
          type: boolean
        name:
          type: string
        options:
          $ref: '#/components/schemas/MethodOptions'
        outputType:
          type: string
        inputType:
          type: string
        optionsOrBuilder:
          $ref: '#/components/schemas/MethodOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    MethodOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        idempotencyLevel:
          type: string
          enum:
            - IDEMPOTENCY_UNKNOWN
            - NO_SIDE_EFFECTS
            - IDEMPOTENT
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/MethodOptions'
        parserForType:
          $ref: '#/components/schemas/ParserMethodOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    MethodOptionsOrBuilder:
      type: object
      properties:
        idempotencyLevel:
          type: string
          enum:
            - IDEMPOTENCY_UNKNOWN
            - NO_SIDE_EFFECTS
            - IDEMPOTENT
        features:
          $ref: '#/components/schemas/FeatureSet'
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    NamePart:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        isExtension:
          type: boolean
        namePart:
          type: string
        namePartBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/NamePart'
        parserForType:
          $ref: '#/components/schemas/ParserNamePart'
        serializedSize:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    NamePartOrBuilder:
      type: object
      properties:
        isExtension:
          type: boolean
        namePart:
          type: string
        namePartBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    OneofDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/OneofDescriptorProto'
        options:
          $ref: '#/components/schemas/OneofOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        containingType:
          $ref: '#/components/schemas/Descriptor'
        fieldCount:
          type: integer
          format: int32
        fields:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        name:
          type: string
    OneofDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/OneofOptions'
        defaultInstanceForType:
          $ref: '#/components/schemas/OneofDescriptorProto'
        parserForType:
          $ref: '#/components/schemas/ParserOneofDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/OneofOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    OneofDescriptorProtoOrBuilder:
      type: object
      properties:
        name:
          type: string
        options:
          $ref: '#/components/schemas/OneofOptions'
        optionsOrBuilder:
          $ref: '#/components/schemas/OneofOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    OneofOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/OneofOptions'
        parserForType:
          $ref: '#/components/schemas/ParserOneofOptions'
        serializedSize:
          type: integer
          format: int32
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    OneofOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    Parser:
      type: object
    ParserDeclaration:
      type: object
    ParserDescriptorProto:
      type: object
    ParserEditionDefault:
      type: object
    ParserEnumDescriptorProto:
      type: object
    ParserEnumOptions:
      type: object
    ParserEnumReservedRange:
      type: object
    ParserEnumValueDescriptorProto:
      type: object
    ParserEnumValueOptions:
      type: object
    ParserExtensionRange:
      type: object
    ParserExtensionRangeOptions:
      type: object
    ParserFeatureSet:
      type: object
    ParserFeatureSupport:
      type: object
    ParserFieldDescriptorProto:
      type: object
    ParserFieldOptions:
      type: object
    ParserFileDescriptorProto:
      type: object
    ParserFileOptions:
      type: object
    ParserGovernanceMetadata:
      type: object
    ParserLocation:
      type: object
    ParserMessage:
      type: object
    ParserMessageLite:
      type: object
    ParserMessageOptions:
      type: object
    ParserMethodDescriptorProto:
      type: object
    ParserMethodOptions:
      type: object
    ParserNamePart:
      type: object
    ParserOneofDescriptorProto:
      type: object
    ParserOneofOptions:
      type: object
    ParserPolicyMetadata:
      type: object
    ParserPolicySetMetadata:
      type: object
    ParserReservedRange:
      type: object
    ParserServiceDescriptorProto:
      type: object
    ParserServiceOptions:
      type: object
    ParserSourceCodeInfo:
      type: object
    ParserUninterpretedOption:
      type: object
    PolicyMetadata1:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyId:
          type: string
        policyName:
          type: string
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        denyMessagesCount:
          type: integer
          format: int32
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        severity:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        status:
          type: string
        error:
          type: string
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserPolicyMetadata'
        defaultInstanceForType:
          $ref: '#/components/schemas/PolicyMetadata1'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PolicyMetadataOrBuilder:
      type: object
      properties:
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          items:
            type: string
        denyMessagesCount:
          type: integer
          format: int32
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        policyId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policyName:
          type: string
        severity:
          type: string
        identifier:
          type: string
        status:
          type: string
        error:
          type: string
        orgId:
          type: string
        created:
          type: integer
          format: int64
        accountId:
          type: string
        projectId:
          type: string
        updated:
          type: integer
          format: int64
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    PolicySetMetadata1:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadata1'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserPolicySetMetadata'
        defaultInstanceForType:
          $ref: '#/components/schemas/PolicySetMetadata1'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PolicySetMetadataOrBuilder:
      type: object
      properties:
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadata1'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    ProtocolStringList:
      type: array
      properties:
        empty:
          type: boolean
      items:
        type: string
    ReservedRange:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/ReservedRange'
        parserForType:
          $ref: '#/components/schemas/ParserReservedRange'
        serializedSize:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ReservedRangeOrBuilder:
      type: object
      properties:
        start:
          type: integer
          format: int32
        end:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    ResponseDTOEnvironmentGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentGroup'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/ServiceDescriptorProto'
        options:
          $ref: '#/components/schemas/ServiceOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        methods:
          type: array
          items:
            $ref: '#/components/schemas/MethodDescriptor'
        name:
          type: string
    ServiceDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/ServiceOptions'
        defaultInstanceForType:
          $ref: '#/components/schemas/ServiceDescriptorProto'
        parserForType:
          $ref: '#/components/schemas/ParserServiceDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        optionsOrBuilder:
          $ref: '#/components/schemas/ServiceOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        methodList:
          type: array
          items:
            $ref: '#/components/schemas/MethodDescriptorProto'
        methodCount:
          type: integer
          format: int32
        methodOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/MethodDescriptorProtoOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ServiceDescriptorProtoOrBuilder:
      type: object
      properties:
        name:
          type: string
        options:
          $ref: '#/components/schemas/ServiceOptions'
        optionsOrBuilder:
          $ref: '#/components/schemas/ServiceOptionsOrBuilder'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        methodList:
          type: array
          items:
            $ref: '#/components/schemas/MethodDescriptorProto'
        methodCount:
          type: integer
          format: int32
        methodOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/MethodDescriptorProtoOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    ServiceOptions:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        features:
          $ref: '#/components/schemas/FeatureSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/ServiceOptions'
        parserForType:
          $ref: '#/components/schemas/ParserServiceOptions'
        serializedSize:
          type: integer
          format: int32
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ServiceOptionsOrBuilder:
      type: object
      properties:
        features:
          $ref: '#/components/schemas/FeatureSet'
        deprecated:
          type: boolean
        featuresOrBuilder:
          $ref: '#/components/schemas/FeatureSetOrBuilder'
        uninterpretedOptionList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOption'
        uninterpretedOptionCount:
          type: integer
          format: int32
        uninterpretedOptionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/UninterpretedOptionOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    SourceCodeInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/SourceCodeInfo'
        parserForType:
          $ref: '#/components/schemas/ParserSourceCodeInfo'
        serializedSize:
          type: integer
          format: int32
        locationCount:
          type: integer
          format: int32
        locationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LocationOrBuilder'
        locationList:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        allFieldsRaw:
          type: object
          additionalProperties:
            type: object
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    SourceCodeInfoOrBuilder:
      type: object
      properties:
        locationCount:
          type: integer
          format: int32
        locationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LocationOrBuilder'
        locationList:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    UninterpretedOption:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        stringValue:
          $ref: '#/components/schemas/ByteString'
        doubleValue:
          type: number
          format: double
        nameCount:
          type: integer
          format: int32
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/UninterpretedOption'
        parserForType:
          $ref: '#/components/schemas/ParserUninterpretedOption'
        serializedSize:
          type: integer
          format: int32
        identifierValue:
          type: string
        identifierValueBytes:
          $ref: '#/components/schemas/ByteString'
        positiveIntValue:
          type: integer
          format: int64
        negativeIntValue:
          type: integer
          format: int64
        aggregateValue:
          type: string
        aggregateValueBytes:
          $ref: '#/components/schemas/ByteString'
        nameList:
          type: array
          items:
            $ref: '#/components/schemas/NamePart'
        nameOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/NamePartOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    UninterpretedOptionOrBuilder:
      type: object
      properties:
        stringValue:
          $ref: '#/components/schemas/ByteString'
        doubleValue:
          type: number
          format: double
        nameCount:
          type: integer
          format: int32
        identifierValue:
          type: string
        identifierValueBytes:
          $ref: '#/components/schemas/ByteString'
        positiveIntValue:
          type: integer
          format: int64
        negativeIntValue:
          type: integer
          format: int64
        aggregateValue:
          type: string
        aggregateValueBytes:
          $ref: '#/components/schemas/ByteString'
        nameList:
          type: array
          items:
            $ref: '#/components/schemas/NamePart'
        nameOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/NamePartOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    UnknownFieldSet:
      type: object
      properties:
        empty:
          type: boolean
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/UnknownFieldSet'
        parserForType:
          $ref: '#/components/schemas/Parser'
        serializedSize:
          type: integer
          format: int32
        serializedSizeAsMessageSet:
          type: integer
          format: int32
    EnvironmentGroupRequest:
      required:
        - yaml
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          pattern: ^[a-zA-Z_][0-9a-zA-Z_]{0,127}$
          type: string
          description: Identifier of the Environment Group.
        color:
          type: string
          description: Color of the Environment Group.
        yaml:
          type: string
          description: Yaml of the Environment Group.
      description: This is the EnvironmentGroupRequest entity defined in Harness
    EnvironmentGroupDelete:
      type: object
      properties:
        deleted:
          type: boolean
          description: Value true, when the Entity is deleted
        accountId:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier for the Entity.
      description: This is the view of Environment Group Delete Response defined in Harness
    ResponseDTOEnvironmentGroupDelete:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentGroupDelete'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseEnvironmentGroup:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/EnvironmentGroup'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseEnvironmentGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseEnvironmentGroup'
        metaData:
          type: object
        correlationId:
          type: string
    FilterProperties:
      required:
        - filterType
      type: object
      properties:
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
      description: Properties of the Filter entity defined in Harness.
      discriminator:
        propertyName: filterType
    AppDynamicsConnectorDTO:
      required:
        - accountname
        - controllerUrl
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            username:
              type: string
            accountname:
              type: string
            controllerUrl:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
            passwordRef:
              type: string
            clientSecretRef:
              type: string
            clientId:
              type: string
            authType:
              type: string
              enum:
                - UsernamePassword
                - ApiClientToken
    ArtifactoryAuthCredentials:
      type: object
      description: >-
        This entity contains the details of credentials for Artifactory
        Authentication
    ArtifactoryAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
        spec:
          $ref: '#/components/schemas/ArtifactoryAuthCredentials'
      description: This entity contains the details for Artifactory Authentication
    ArtifactoryConnector:
      required:
        - artifactoryServerUrl
      type: object
      description: This entity contains the details of the Artifactory Connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            artifactoryServerUrl:
              type: string
            auth:
              $ref: '#/components/schemas/ArtifactoryAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
    ArtifactoryUsernamePasswordAuth:
      required:
        - passwordRef
      type: object
      description: >-
        This entity contains the details of the Artifactory Username and
        Password
      allOf:
        - $ref: '#/components/schemas/ArtifactoryAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    AwsCodeCommitAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - HTTPS
        spec:
          $ref: '#/components/schemas/AwsCodeCommitCredentials'
      description: This contains details of the AWS Code Commit credentials
    AwsCodeCommitConnector:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of the AWS Code Commit connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            authentication:
              $ref: '#/components/schemas/AwsCodeCommitAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Repo
                - Region
    AwsCodeCommitCredentials:
      type: object
      description: This interface for details of the AWS Code Commit credentials
    AwsCodeCommitHttpsCredentials:
      required:
        - spec
        - type
      type: object
      description: >-
        This contains details of the AWS Code Commit credentials used via HTTPS
        connections
      allOf:
        - $ref: '#/components/schemas/AwsCodeCommitCredentials'
        - type: object
          properties:
            type:
              type: string
              enum:
                - AWSCredentials
            spec:
              $ref: '#/components/schemas/AwsCodeCommitHttpsCredentialsSpec'
    AwsCodeCommitHttpsCredentialsSpec:
      type: object
      description: >-
        This contains details of the AWS Code Commit credentials specs such as
        references of username and password used via HTTPS connections
    AwsCodeCommitSecretKeyAccessKey:
      required:
        - secretKeyRef
      type: object
      description: This contains details of the AWS Code Commit secret references
      allOf:
        - $ref: '#/components/schemas/AwsCodeCommitHttpsCredentialsSpec'
        - type: object
          properties:
            accessKey:
              type: string
            accessKeyRef:
              type: string
            secretKeyRef:
              type: string
    AwsConnector:
      required:
        - credential
      type: object
      description: This contains details of the AWS connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/AwsCredential'
            awsSdkClientBackOffStrategyOverride:
              $ref: '#/components/schemas/AwsSdkClientBackoffStrategy'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
    AwsCredential:
      required:
        - type
      type: object
      properties:
        crossAccountAccess:
          $ref: '#/components/schemas/CrossAccountAccess'
        type:
          type: string
          enum:
            - InheritFromDelegate
            - ManualConfig
            - Irsa
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/AwsCredentialSpec'
        region:
          type: string
      description: This contains details of the AWS connector credential
    AwsCredentialSpec:
      type: object
      description: This contains AWS connector credential spec
    AwsCurAttributes:
      required:
        - reportName
        - s3BucketName
      type: object
      properties:
        reportName:
          type: string
        s3BucketName:
          type: string
        region:
          type: string
        s3Prefix:
          type: string
      description: This contains AWS cost and usage reports attributes
    AwsEqualJitterBackoffStrategy:
      type: object
      description: >-
        Backoff strategy that uses equal jitter for computing the delay before
        the next retry.
      allOf:
        - $ref: '#/components/schemas/AwsSdkBackOffStrategySpec'
        - type: object
          properties:
            baseDelay:
              type: integer
              format: int64
            maxBackoffTime:
              type: integer
              format: int64
            retryCount:
              type: integer
              format: int32
    AwsFixedDelayBackoffStrategy:
      type: object
      description: >-
        Simple backoff strategy that always uses a fixed delay for the delay
        before the next retry attempt.
      allOf:
        - $ref: '#/components/schemas/AwsSdkBackOffStrategySpec'
        - type: object
          properties:
            fixedBackoff:
              type: integer
              format: int64
            retryCount:
              type: integer
              format: int32
    AwsFullJitterBackoffStrategy:
      type: object
      description: >-
        Backoff strategy that uses a full jitter strategy for computing the next
        backoff delay.
      allOf:
        - $ref: '#/components/schemas/AwsSdkBackOffStrategySpec'
        - type: object
          properties:
            baseDelay:
              type: integer
              format: int64
            maxBackoffTime:
              type: integer
              format: int64
            retryCount:
              type: integer
              format: int32
    AwsKmsConnector:
      required:
        - credential
        - region
      type: object
      description: This has configuration details for the AWS KMS Secret Manager.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/AwsKmsConnectorCredential'
            kmsArn:
              type: string
              description: ARN for AWS KMS.
            kmsArnInPlainText:
              type: string
            region:
              type: string
              description: Region for AWS KMS.
            isDefault:
              type: boolean
              writeOnly: true
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            awsOidcTokenExchangeDetailsForDelegate:
              $ref: '#/components/schemas/AwsOidcTokenExchangeDetailsForDelegate'
            ignoreTestConnection:
              type: boolean
            executeOnDelegate:
              type: boolean
              description: >-
                Should the secret manager execute operations on the delegate, or
                via Harness platform
            default:
              type: boolean
    AwsKmsConnectorCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: >-
            This indicates AWS credential types, Manual Credential, Assume IAM
            Role, Assume STS Role.
          enum:
            - AssumeIAMRole
            - AssumeSTSRole
            - ManualConfig
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/AwsKmsCredentialSpec'
      description: Returns the configuration details for the AWS KMS Secret Manager.
    AwsKmsCredentialSpec:
      type: object
      description: >-
        This is interface that returns credentials specific to all roles for the
        AWS KMS Secret Manager.
    AwsKmsCredentialSpecAssumeIAM:
      required:
        - delegateSelectors
      type: object
      description: >-
        Returns the Delegate Selectors used by this AWS KMS Secret Manager
        Connector.
      allOf:
        - $ref: '#/components/schemas/AwsKmsCredentialSpec'
        - type: object
          properties:
            delegateSelectors:
              maxItems: 2147483647
              minItems: 1
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
    AwsKmsCredentialSpecAssumeSTS:
      required:
        - delegateSelectors
        - roleArn
      type: object
      description: >-
        Returns Delegate selectors, Role ARN and STS role duration used by AWS
        KMS Secret Manager.
      allOf:
        - $ref: '#/components/schemas/AwsKmsCredentialSpec'
        - type: object
          properties:
            delegateSelectors:
              maxItems: 2147483647
              minItems: 1
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            roleArn:
              type: string
              description: Role ARN for the Delegate with STS Role.
            externalName:
              type: string
              description: External Name.
            assumeStsRoleDuration:
              type: integer
              description: This is the time duration for STS Role.
              format: int32
    AwsKmsCredentialSpecManualConfig:
      required:
        - accessKey
        - secretKey
      type: object
      description: >-
        This contains the AWS KMS Secret Manager's secret reference access key
        and secret key.
      allOf:
        - $ref: '#/components/schemas/AwsKmsCredentialSpec'
        - type: object
          properties:
            accessKey:
              type: string
              description: Access Key for AWS authentication.
            secretKey:
              type: string
              description: Secret Key for AWS authentication.
    AwsManualConfigSpec:
      required:
        - secretKeyRef
      type: object
      description: This contains AWS manual credentials connector spec
      allOf:
        - $ref: '#/components/schemas/AwsCredentialSpec'
        - type: object
          properties:
            accessKey:
              type: string
            accessKeyRef:
              type: string
            secretKeyRef:
              type: string
            sessionTokenRef:
              type: string
    AwsOidcSpec:
      required:
        - iamRoleArn
      type: object
      description: This contains AWS OIDC credentials connector spec
      allOf:
        - $ref: '#/components/schemas/AwsCredentialSpec'
        - type: object
          properties:
            iamRoleArn:
              type: string
    AwsOidcTokenExchangeDetailsForDelegate:
      type: object
      properties:
        oidcIdToken:
          type: string
        idTokenExpiryTime:
          type: integer
          format: int64
    AwsSMCredentialSpecAssumeIAM:
      type: object
      allOf:
        - $ref: '#/components/schemas/AwsSecretManagerCredentialSpec'
    AwsSMCredentialSpecAssumeSTS:
      required:
        - roleArn
      type: object
      description: Returns credentials for the AWS Secret Manager for the IAM role.
      allOf:
        - $ref: '#/components/schemas/AwsSecretManagerCredentialSpec'
        - type: object
          properties:
            roleArn:
              type: string
              description: Role ARN for the Delegate with STS Role.
            externalId:
              type: string
              description: External Name.
            assumeStsRoleDuration:
              type: integer
              description: This is the time duration for STS Role.
              format: int32
    AwsSMCredentialSpecManualConfig:
      required:
        - secretKey
      type: object
      description: >-
        Returns secret reference access key and secret key of AWS Secret
        Manager.
      allOf:
        - $ref: '#/components/schemas/AwsSecretManagerCredentialSpec'
        - type: object
          properties:
            accessKey:
              type: string
              description: Access Key for AWS authentication.
            accessKeyPlainText:
              type: string
              description: Access Key for AWS authentication as plain text.
            secretKey:
              type: string
              description: Secret Key for AWS authentication.
    AwsSdkClientBackOffStrategySpec:
      type: object
      description: This contains AWS Sdk Client BackOff strategy spec
    AwsSdkClientBackoffStrategy:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - FixedDelayBackoffStrategy
            - EqualJitterBackoffStrategy
            - FullJitterBackoffStrategy
        spec:
          $ref: '#/components/schemas/AwsSdkClientBackOffStrategySpec'
      description: This contains details of the AWS SDK Client Backoff Strategy
    AwsSecretManager:
      required:
        - credential
        - region
      type: object
      description: Returns AWS Secret Manager configuration details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/AwsSecretManagerCredential'
            region:
              type: string
              description: Region for AWS SM.
            secretNamePrefix:
              type: string
              description: Text that is prepended to the Secret name as a prefix.
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            awsOidcTokenExchangeDetailsForDelegate:
              $ref: '#/components/schemas/AwsOidcTokenExchangeDetailsForDelegate'
            ignoreTestConnection:
              type: boolean
            executeOnDelegate:
              type: boolean
              description: >-
                Should the secret manager execute operations on the delegate, or
                via Harness platform
            usePutSecret:
              type: boolean
              description: Whether to update secret value using putSecretValue action.
            forceDeleteWithoutRecovery:
              type: boolean
              description: Whether to delete the secret without any recovery window.
            recoveryWindowInDays:
              type: integer
              description: Number of days a Secret can be recovered after it is deleted.
              format: int64
            default:
              type: boolean
    AwsSecretManagerCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: >-
            This indicates AWS credential types, Manual Credential, Assume IAM
            Role, Assume STS Role.
          enum:
            - AssumeIAMRole
            - AssumeSTSRole
            - ManualConfig
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/AwsSecretManagerCredentialSpec'
      description: >-
        This contains the credential type and configuration of the AWS Secret
        Manager.
    AwsSecretManagerCredentialSpec:
      type: object
      description: >-
        This is interface that returns credentials specific to all roles for the
        AWS Secret Manager.
    AzureArtifactsAuthentication:
      required:
        - spec
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/AzureArtifactsHttpCredentials'
      description: This contains details of the information needed for Azure DevOps access
    AzureArtifactsConnector:
      required:
        - auth
        - azureArtifactsUrl
      type: object
      description: This contains details of AzureArtifacts connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            azureArtifactsUrl:
              type: string
              description: HTTP URL for Azure Artifacts Registry
            auth:
              $ref: '#/components/schemas/AzureArtifactsAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              description: Selected Connectivity Modes
              items:
                type: string
                description: Selected Connectivity Modes
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    AzureArtifactsHttpCredentials:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - PersonalAccessToken
        spec:
          $ref: '#/components/schemas/AzureArtifactsUsernameToken'
      description: >-
        This contains details of the AzureArtifacts credentials used via HTTP
        connections
    AzureArtifactsUsernameToken:
      required:
        - tokenRef
      type: object
      properties:
        tokenRef:
          type: string
      description: >-
        This contains details of the AzureArtifacts credentials Specs such as
        references of username and token
    AzureAuth:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Secret
            - Certificate
        spec:
          $ref: '#/components/schemas/AzureAuthCredential'
      description: This contains azure auth details
    AzureAuthCredential:
      type: object
      description: This contains azure auth credentials
    AzureClientKeyCert:
      required:
        - certificateRef
      type: object
      description: This contains azure client key certificate details
      allOf:
        - $ref: '#/components/schemas/AzureAuthCredential'
        - type: object
          properties:
            certificateRef:
              type: string
    AzureClientSecretKey:
      required:
        - secretRef
      type: object
      description: This contains azure client secret key details
      allOf:
        - $ref: '#/components/schemas/AzureAuthCredential'
        - type: object
          properties:
            secretRef:
              type: string
    AzureConnector:
      required:
        - azureEnvironmentType
        - credential
      type: object
      description: This contains details of the Azure connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/AzureCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            azureEnvironmentType:
              type: string
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    AzureCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - InheritFromDelegate
            - ManualConfig
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/AzureCredentialSpec'
      description: This contains Azure connector credentials
    AzureCredentialSpec:
      type: object
      description: This contains Azure connector credentials spec
    AzureInheritFromDelegateDetails:
      required:
        - auth
      type: object
      description: This contains Azure inherit from delegate credentials connector details
      allOf:
        - $ref: '#/components/schemas/AzureCredentialSpec'
        - type: object
          properties:
            auth:
              $ref: '#/components/schemas/AzureMSIAuth'
    AzureKeyVaultConnector:
      required:
        - subscription
        - vaultName
      type: object
      description: Returns configuration details for the Azure Key Vault Secret Manager.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            clientId:
              type: string
              description: Application ID of the Azure App.
            secretKey:
              type: string
              description: >-
                This is the Harness text secret with the Azure authentication
                key as its value.
            tenantId:
              type: string
              description: >-
                The Azure Active Directory (AAD) directory ID where you created
                your application.
            vaultName:
              type: string
              description: The Azure Vault name
            subscription:
              type: string
              description: Azure Subscription ID.
            vaultConfiguredManually:
              type: boolean
            azureEnvironmentType:
              type: string
              description: >-
                This specifies the Azure Environment type, which is AZURE by
                default.
              enum:
                - AZURE
                - AZURE_US_GOVERNMENT
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            useManagedIdentity:
              type: boolean
              description: Boolean value to indicate if managed identity is used
            azureManagedIdentityType:
              type: string
              description: Managed Identity Type
              enum:
                - SystemAssignedManagedIdentity
                - UserAssignedManagedIdentity
            managedClientId:
              type: string
              description: Client Id of the ManagedIdentity resource
            ignoreTestConnection:
              type: boolean
            enablePurge:
              type: boolean
              description: Boolean value to indicate if purge is enabled
            default:
              type: boolean
    AzureMSIAuth:
      type: object
      description: This contains azure MSI auth details
    AzureManualDetails:
      required:
        - applicationId
        - auth
        - tenantId
      type: object
      description: This contains Azure manual credentials connector details
      allOf:
        - $ref: '#/components/schemas/AzureCredentialSpec'
        - type: object
          properties:
            applicationId:
              type: string
              description: Application ID of the Azure App.
            tenantId:
              type: string
              description: >-
                The Azure Active Directory (AAD) directory ID where you created
                your application.
            auth:
              $ref: '#/components/schemas/AzureAuth'
    AzureOidcSpec:
      required:
        - applicationId
        - tenantId
      type: object
      description: This contains Azure OIDC credentials connector details
      allOf:
        - $ref: '#/components/schemas/AzureCredentialSpec'
        - type: object
          properties:
            tenantId:
              type: string
              description: >-
                The Azure Active Directory (AAD) directory ID where you created
                your application.
            applicationId:
              type: string
              description: Application ID of the Azure App.
            audience:
              type: string
              description: Audience (Optional)
    AzureRepoApiAccess:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Token
        spec:
          $ref: '#/components/schemas/AzureRepoApiAccessSpec'
      description: >-
        This contains details of the information needed for Azure Repo API
        access
    AzureRepoApiAccessSpec:
      type: object
      description: >-
        This contains details of the information such as references of username
        and password needed for Azure Repo API access
    AzureRepoAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - Ssh
        spec:
          $ref: '#/components/schemas/AzureRepoCredentials'
      description: This contains details of the information needed for Azure DevOps access
    AzureRepoConfig:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of AzureRepo connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
              description: SSH | HTTP URL based on type of connection
            validationRepo:
              type: string
              description: >-
                The repo to validate AzureRepo credentials. Only valid for
                Account type connector
            authentication:
              $ref: '#/components/schemas/AzureRepoAuthentication'
            apiAccess:
              $ref: '#/components/schemas/AzureRepoApiAccess'
            delegateSelectors:
              uniqueItems: true
              type: array
              description: Selected Connectivity Modes
              items:
                type: string
                description: Selected Connectivity Modes
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              description: Project | Repository connector type
              enum:
                - Project
                - Repo
    AzureRepoCredentials:
      type: object
      description: This is a interface for details of the Azure DevOps credentials
    AzureRepoHttpCredentials:
      required:
        - spec
        - type
      type: object
      description: >-
        This contains details of the AzureRepo credentials used via HTTP
        connections
      allOf:
        - $ref: '#/components/schemas/AzureRepoCredentials'
        - type: object
          properties:
            type:
              type: string
              enum:
                - UsernameToken
            spec:
              $ref: '#/components/schemas/AzureRepoHttpCredentialsSpec'
    AzureRepoHttpCredentialsSpec:
      type: object
      description: >-
        This is a interface for details of the AzureRepo credentials Specs such
        as references of username and password
    AzureRepoSshCredentials:
      required:
        - sshKeyRef
      type: object
      description: >-
        This contains details of the AzureRepo credentials used via SSH
        connections
      allOf:
        - $ref: '#/components/schemas/AzureRepoCredentials'
        - type: object
          properties:
            sshKeyRef:
              type: string
    AzureRepoTokenSpec:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of token
        needed for AzureRepo API access
      allOf:
        - $ref: '#/components/schemas/AzureRepoApiAccessSpec'
        - type: object
          properties:
            tokenRef:
              type: string
    AzureRepoUsernameToken:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the AzureRepo credentials Specs such as
        references of username and token
      allOf:
        - $ref: '#/components/schemas/AzureRepoHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            tokenRef:
              type: string
    AzureSystemAssignedMSIAuth:
      type: object
      description: This contains azure SystemAssigned MSI auth details
      allOf:
        - $ref: '#/components/schemas/AzureAuthCredential'
    AzureUserAssignedMSIAuth:
      required:
        - clientId
      type: object
      description: This contains azure UserAssigned MSI auth details
      allOf:
        - $ref: '#/components/schemas/AzureAuthCredential'
        - type: object
          properties:
            clientId:
              type: string
              description: Client Id of the ManagedIdentity resource
    BambooAuthCredentialsDTO:
      type: object
      description: This contains details of credentials for Bamboo Authentication
    BambooAuthenticationDTO:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
            - Bearer Token(HTTP Header)
        spec:
          $ref: '#/components/schemas/BambooAuthCredentialsDTO'
      description: This entity contains the details for Bamboo Authentication
    BambooConnector:
      required:
        - bambooUrl
      type: object
      description: Bamboo Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            bambooUrl:
              type: string
            auth:
              $ref: '#/components/schemas/BambooAuthenticationDTO'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    BambooUserNamePasswordDTO:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the Bamboo Username and Password
      allOf:
        - $ref: '#/components/schemas/BambooAuthCredentialsDTO'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    BillingExportSpec:
      required:
        - containerName
        - directoryName
        - reportName
        - storageAccountName
        - subscriptionId
      type: object
      properties:
        storageAccountName:
          type: string
        containerName:
          type: string
        directoryName:
          type: string
        reportName:
          type: string
        subscriptionId:
          type: string
        billingType:
          type: string
          enum:
            - ACTUAL
            - AMORTIZED
      description: >-
        Returns Billing details like StorageAccount's Name, container's Name,
        directory's Name, report Name and subscription Id
    BitbucketAccessTokenApiAccess:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the Bitbucket Access Token for Bearer token
        authentication
      allOf:
        - $ref: '#/components/schemas/BitbucketApiAccess'
        - type: object
          properties:
            tokenRef:
              type: string
    BitbucketApiAccess:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernameToken
            - OAuth
            - AccessToken
        spec:
          $ref: '#/components/schemas/BitbucketApiAccess'
      description: This contains details of the information needed for Bitbucket API access
    BitbucketAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - Ssh
        spec:
          $ref: '#/components/schemas/BitbucketCredentials'
      description: This contains details of the information needed for Bitbucket access
    BitbucketConnector:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of Bitbucket connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            validationRepo:
              type: string
            authentication:
              $ref: '#/components/schemas/BitbucketAuthentication'
            apiAccess:
              $ref: '#/components/schemas/BitbucketApiAccess'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Account
                - Repo
    BitbucketCredentials:
      type: object
      description: This is a interface for details of the Bitbucket credentials
    BitbucketHttpCredentials:
      required:
        - spec
        - type
      type: object
      description: >-
        This contains details of the Bitbucket credentials used via HTTP
        connections
      allOf:
        - $ref: '#/components/schemas/BitbucketCredentials'
        - type: object
          properties:
            type:
              type: string
              enum:
                - UsernamePassword
            spec:
              $ref: '#/components/schemas/BitbucketHttpCredentialsSpec'
    BitbucketHttpCredentialsSpec:
      type: object
      description: >-
        This is a interface for details of the Bitbucket credentials Specs such
        as references of username and password
    BitbucketOauth:
      required:
        - refreshTokenRef
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of tokens
        needed for OAuth API access
      allOf:
        - $ref: '#/components/schemas/BitbucketApiAccess'
        - type: object
          properties:
            tokenRef:
              type: string
            refreshTokenRef:
              type: string
    BitbucketSshCredentials:
      required:
        - sshKeyRef
      type: object
      description: >-
        This contains details of the Bitbucket credentials used via SSH
        connections
      allOf:
        - $ref: '#/components/schemas/BitbucketCredentials'
        - type: object
          properties:
            sshKeyRef:
              type: string
    BitbucketUsernamePassword:
      required:
        - passwordRef
      type: object
      description: >-
        This contains details of the Bitbucket credentials Specs such as
        references of username and password
      allOf:
        - $ref: '#/components/schemas/BitbucketHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    BitbucketUsernameTokenApiAccess:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the Bitbucket API access credentials Specs such
        as references of username and token
      allOf:
        - $ref: '#/components/schemas/BitbucketApiAccess'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            tokenRef:
              type: string
    CEAwsConnector:
      required:
        - featuresEnabled
      type: object
      description: This contains the cost explorer of AWS connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            crossAccountAccess:
              $ref: '#/components/schemas/CrossAccountAccess'
            curAttributes:
              $ref: '#/components/schemas/AwsCurAttributes'
            awsAccountId:
              type: string
            isAWSGovCloudAccount:
              type: boolean
            featuresEnabled:
              type: array
              items:
                type: string
                enum:
                  - BILLING
                  - OPTIMIZATION
                  - VISIBILITY
                  - GOVERNANCE
                  - COMMITMENT_ORCHESTRATOR
                  - CLUSTER_ORCHESTRATOR
            autostoppingFeatures:
              type: array
              items:
                type: string
                enum:
                  - EC2
                  - SPOT
                  - ASG
                  - ECS
                  - RDS
                  - ALB
                  - PROXY
                  - AZURE_VM
                  - AZURE_APP_GATEWAY
                  - GCP_VM
                  - GCP_INSTANCE_GROUP
            ignoreTestConnection:
              type: boolean
            credential:
              $ref: '#/components/schemas/CeAwsCredential'
    CEAzureConnector:
      required:
        - featuresEnabled
        - subscriptionId
        - tenantId
      type: object
      description: This contains the cost explorer of Azure connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            featuresEnabled:
              type: array
              items:
                type: string
                enum:
                  - BILLING
                  - OPTIMIZATION
                  - VISIBILITY
                  - GOVERNANCE
                  - COMMITMENT_ORCHESTRATOR
                  - CLUSTER_ORCHESTRATOR
            autostoppingFeatures:
              type: array
              items:
                type: string
                enum:
                  - EC2
                  - SPOT
                  - ASG
                  - ECS
                  - RDS
                  - ALB
                  - PROXY
                  - AZURE_VM
                  - AZURE_APP_GATEWAY
                  - GCP_VM
                  - GCP_INSTANCE_GROUP
            tenantId:
              type: string
            subscriptionId:
              type: string
            billingExportSpec:
              $ref: '#/components/schemas/BillingExportSpec'
            billingExportSpec2:
              $ref: '#/components/schemas/BillingExportSpec'
            ignoreTestConnection:
              type: boolean
    CEKubernetesClusterConfigDTO:
      required:
        - connectorRef
        - featuresEnabled
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            connectorRef:
              type: string
            featuresEnabled:
              type: array
              items:
                type: string
                enum:
                  - BILLING
                  - OPTIMIZATION
                  - VISIBILITY
                  - GOVERNANCE
                  - COMMITMENT_ORCHESTRATOR
                  - CLUSTER_ORCHESTRATOR
            ignoreTestConnection:
              type: boolean
    CeAwsCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Default
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/CeAwsCredentialSpec'
        region:
          type: string
      description: This contains details of the CCM AWS connector credential
    CeAwsCredentialSpec:
      type: object
      description: This contains CCM AWS connector credential spec
    CeAwsOidcSpec:
      required:
        - iamRoleArn
      type: object
      description: This contains CCM AWS OIDC credentials connector spec
      allOf:
        - $ref: '#/components/schemas/CeAwsCredentialSpec'
        - type: object
          properties:
            iamRoleArn:
              type: string
    ConfluenceConnector:
      required:
        - apiAccessType
      type: object
      description: Confluence Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            apiAccessType:
              type: string
              enum:
                - TOKEN
                - OAUTH
            emailId:
              type: string
            confluenceUrl:
              type: string
            apiKeyRef:
              type: string
            accessTokenRef:
              type: string
            refreshTokenRef:
              type: string
            ignoreTestConnection:
              type: boolean
    ConnectorActivityDetails:
      type: object
      properties:
        lastActivityTime:
          type: integer
          description: >-
            This specifies the time of the most recent activity on the
            Connector.
          format: int64
      description: >-
        This contains details of any kind of activities corresponding to the
        Connector.
    ConnectorConfig:
      required:
        - connectorType
      type: object
      properties:
        connectorType:
          type: string
      description: This is the view of the ConnectorConfig entity defined in Harness
      discriminator:
        propertyName: connectorType
    ConnectorConnectivityDetails:
      type: object
      properties:
        status:
          type: string
          description: Connectivity status of a Connector.
          enum:
            - SUCCESS
            - FAILURE
            - PARTIAL
            - UNKNOWN
            - PENDING
        errorSummary:
          type: string
          description: Summary of errors.
        errors:
          type: array
          description: List of errors and their details.
          items:
            $ref: '#/components/schemas/ErrorDetail'
        testedAt:
          type: integer
          description: 'Time at which Test Connection was completed '
          format: int64
        lastTestedAt:
          type: integer
          format: int64
        lastConnectedAt:
          type: integer
          description: >-
            This is the last time at which the Connector was successfully
            connected.
          format: int64
        lastAlertSent:
          type: integer
          description: Last alert sent time when connector went down
          format: int64
      description: Details of the connectivity status of the Connector.
    ConnectorInfo:
      required:
        - identifier
        - name
        - spec
        - type
      type: object
      properties:
        name:
          type: string
          description: Name of the Connector.
        identifier:
          type: string
          description: Identifier of the Connector.
        description:
          type: string
          description: Description of the entity
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        type:
          type: string
          description: Type of the Connector.
          enum:
            - K8sCluster
            - Git
            - Splunk
            - AppDynamics
            - Prometheus
            - OpsGenie
            - Dynatrace
            - Vault
            - AzureKeyVault
            - DockerRegistry
            - Local
            - AwsKms
            - GcpKms
            - AwsSecretManager
            - Gcp
            - Aws
            - Azure
            - Artifactory
            - Jira
            - Nexus
            - Github
            - Gitlab
            - Bitbucket
            - Codecommit
            - CEAws
            - CEAzure
            - GcpCloudCost
            - CEK8sCluster
            - HttpHelmRepo
            - NewRelic
            - Datadog
            - SumoLogic
            - PagerDuty
            - CustomHealth
            - ServiceNow
            - ErrorTracking
            - Pdc
            - AzureRepo
            - Jenkins
            - OciHelmRepo
            - CustomSecretManager
            - ElasticSearch
            - GcpSecretManager
            - AzureArtifacts
            - Tas
            - Spot
            - Bamboo
            - TerraformCloud
            - SignalFX
            - Harness
            - Rancher
            - JDBC
            - Zoom
            - MsTeams
            - Confluence
            - Slack
            - Salesforce
            - LangSmith
            - MLFlow
        spec:
          $ref: '#/components/schemas/ConnectorConfig'
      description: This has the Connector details defined in Harness
    ConnectorResponse1:
      type: object
      properties:
        connector:
          $ref: '#/components/schemas/ConnectorInfo'
        createdAt:
          type: integer
          description: This is the time at which the Connector was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which the Connector was last modified.
          format: int64
        status:
          $ref: '#/components/schemas/ConnectorConnectivityDetails'
        activityDetails:
          $ref: '#/components/schemas/ConnectorActivityDetails'
        harnessManaged:
          type: boolean
          description: >-
            This indicates if this Connector is managed by Harness or not. If
            True, Harness can manage and modify this Connector.
        gitDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
        entityValidityDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
        isFavorite:
          type: boolean
      description: This has the Connector details along with its metadata.
    CrossAccountAccess:
      required:
        - crossAccountRoleArn
      type: object
      properties:
        crossAccountRoleArn:
          type: string
        externalId:
          type: string
      description: This contains AWS connector cross account access details
    CustomHealthConnectorDTO:
      required:
        - baseURL
        - method
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            baseURL:
              type: string
            headers:
              type: array
              items:
                $ref: '#/components/schemas/CustomHealthKeyAndValue'
            params:
              type: array
              items:
                $ref: '#/components/schemas/CustomHealthKeyAndValue'
            method:
              type: string
              enum:
                - GET
                - POST
            validationBody:
              type: string
            validationPath:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    CustomHealthKeyAndValue:
      required:
        - key
      type: object
      properties:
        key:
          type: string
        isValueEncrypted:
          type: boolean
          writeOnly: true
        encryptedValueRef:
          type: string
        value:
          type: string
        valueEncrypted:
          type: boolean
    CustomSecretManager:
      required:
        - template
      type: object
      description: This contains details of Custom Secret Manager connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            onDelegate:
              type: boolean
            connectorRef:
              type: string
              description: >-
                This is the authentication token used to connect underlying
                secret manager.
            host:
              type: string
            workingDirectory:
              type: string
            template:
              $ref: '#/components/schemas/TemplateLinkConfigForCustomSecretManager'
            timeout:
              maximum: 3600
              minimum: 1
              type: integer
              format: int64
            ignoreTestConnection:
              type: boolean
            default:
              type: boolean
    DatadogConnectorDTO:
      required:
        - apiKeyRef
        - applicationKeyRef
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            applicationKeyRef:
              type: string
            apiKeyRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    DockerAuthCredentials:
      type: object
      description: This contains details of credentials for Docker Authentication
    DockerAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
        spec:
          $ref: '#/components/schemas/DockerAuthCredentials'
      description: This entity contains the details for Docker Authentication
    DockerConnector:
      required:
        - dockerRegistryUrl
        - providerType
      type: object
      description: Docker Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            dockerRegistryUrl:
              type: string
            providerType:
              type: string
              description: This entity contains the details of the Docker Registry
              enum:
                - DockerHub
                - Harbor
                - Quay
                - Other
            auth:
              $ref: '#/components/schemas/DockerAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
    DockerUserNamePassword:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the Docker Username and Password
      allOf:
        - $ref: '#/components/schemas/DockerAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    DynatraceConnectorDTO:
      required:
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            apiTokenRef:
              type: string
            platformTokenRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    ELKConnectorDTO:
      required:
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            username:
              type: string
            apiKeyId:
              type: string
            passwordRef:
              type: string
            apiKeyRef:
              type: string
            authType:
              type: string
              enum:
                - UsernamePassword
                - ApiClientToken
                - None
                - Bearer Token(HTTP Header)
            ignoreTestConnection:
              type: boolean
    ErrorDetail:
      type: object
      properties:
        reason:
          type: string
        message:
          type: string
        code:
          type: integer
          format: int32
      description: Host error details
    ErrorTrackingConnectorDTO:
      required:
        - apiKeyRef
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            apiKeyRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    GcpBillingExportSpecDTO:
      required:
        - datasetId
        - tableId
      type: object
      properties:
        datasetId:
          type: string
        tableId:
          type: string
    GcpCcmConnectorCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Default
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/GcpCcmCredentialSpec'
      description: This contains CCM GCP connector credentials
    GcpCcmCredentialSpec:
      type: object
      description: This contains CCM GCP connector credentials spec
    GcpCcmOidcDetails:
      required:
        - gcpProjectId
        - providerId
        - serviceAccountEmail
        - workloadPoolId
      type: object
      description: This contains CCM GCP OIDC details
      allOf:
        - $ref: '#/components/schemas/GcpCcmCredentialSpec'
        - type: object
          properties:
            workloadPoolId:
              type: string
            providerId:
              type: string
            gcpProjectId:
              type: string
            serviceAccountEmail:
              type: string
    GcpCloudCostConnectorDTO:
      required:
        - featuresEnabled
        - projectId
        - serviceAccountEmail
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            featuresEnabled:
              type: array
              items:
                type: string
                enum:
                  - BILLING
                  - OPTIMIZATION
                  - VISIBILITY
                  - GOVERNANCE
                  - COMMITMENT_ORCHESTRATOR
                  - CLUSTER_ORCHESTRATOR
            projectId:
              type: string
            serviceAccountEmail:
              type: string
            billingExportSpec:
              $ref: '#/components/schemas/GcpBillingExportSpecDTO'
            autostoppingFeatures:
              type: array
              items:
                type: string
                enum:
                  - EC2
                  - SPOT
                  - ASG
                  - ECS
                  - RDS
                  - ALB
                  - PROXY
                  - AZURE_VM
                  - AZURE_APP_GATEWAY
                  - GCP_VM
                  - GCP_INSTANCE_GROUP
            ignoreTestConnection:
              type: boolean
            credential:
              $ref: '#/components/schemas/GcpCcmConnectorCredential'
    GcpConnector:
      required:
        - credential
      type: object
      description: This contains GCP connector details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/GcpConnectorCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
    GcpConnectorCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - InheritFromDelegate
            - ManualConfig
            - OidcAuthentication
        spec:
          $ref: '#/components/schemas/GcpCredentialSpec'
      description: This contains GCP connector credentials
    GcpCredentialSpec:
      type: object
      description: This contains GCP connector credentials spec
    GcpDelegateDetails:
      required:
        - delegateSelectors
      type: object
      description: This contains GCP connector delegate details
      allOf:
        - $ref: '#/components/schemas/GcpCredentialSpec'
        - type: object
          properties:
            delegateSelectors:
              maxItems: 2147483647
              minItems: 1
              uniqueItems: true
              type: array
              items:
                type: string
    GcpKmsConnector:
      required:
        - keyName
        - keyRing
        - projectId
        - region
      type: object
      description: This contains GCP KMS SecretManager configuration.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            projectId:
              type: string
              description: ID of the project on GCP.
            region:
              type: string
              description: Region for GCP KMS
            keyRing:
              type: string
              description: >-
                Name of the Key Ring where Google Cloud Symmetric Key is
                created.
            keyName:
              type: string
              description: Name of the Google Cloud Symmetric Key.
            credentials:
              type: string
              description: File Secret which is Service Account Key.
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            oidcDetails:
              $ref: '#/components/schemas/GcpOidcDetails'
            ignoreTestConnection:
              type: boolean
            executeOnDelegate:
              type: boolean
              description: >-
                Should the secret manager execute operations on the delegate, or
                via Harness platform
            default:
              type: boolean
    GcpManualDetails:
      required:
        - secretKeyRef
      type: object
      description: This contains GCP manual credentials details
      allOf:
        - $ref: '#/components/schemas/GcpCredentialSpec'
        - type: object
          properties:
            secretKeyRef:
              type: string
    GcpOidcDetails:
      required:
        - gcpProjectId
        - providerId
        - serviceAccountEmail
        - workloadPoolId
      type: object
      description: This contains GCP OIDC details
      allOf:
        - $ref: '#/components/schemas/GcpCredentialSpec'
        - type: object
          properties:
            workloadPoolId:
              type: string
            providerId:
              type: string
            gcpProjectId:
              type: string
            serviceAccountEmail:
              type: string
    GcpOidcTokenExchangeDetailsForDelegate:
      type: object
      properties:
        oidcIdToken:
          type: string
        oidcAccessTokenStsEndpoint:
          type: string
        oidcAccessTokenIamSaEndpoint:
          type: string
        gcpServiceAccountEmail:
          type: string
        oidcWorkloadAccessTokenRequestStructure:
          $ref: '#/components/schemas/OidcWorkloadAccessTokenRequest'
        oidcChartmuseumGcpConfigStructure:
          $ref: '#/components/schemas/OidcChartmuseumGcpConfig'
        idTokenExpiryTime:
          type: integer
          format: int64
    GcpSecretManager:
      type: object
      description: This contains details of GCP Secret Manager
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credentialsRef:
              type: string
              description: >-
                Reference to the secret containing credentials of IAM service
                account for Google Secret Manager
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            executeOnDelegate:
              type: boolean
              description: >-
                Should the secret manager execute operations on the delegate, or
                via Harness platform
            assumeCredentialsOnDelegate:
              type: boolean
              description: >-
                Boolean value to indicate that Credentials are taken from the
                Delegate.
            credential:
              $ref: '#/components/schemas/GcpConnectorCredential'
            gcpOidcTokenExchangeDetailsForDelegate:
              $ref: '#/components/schemas/GcpOidcTokenExchangeDetailsForDelegate'
            ignoreTestConnection:
              type: boolean
            default:
              type: boolean
    GitAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      description: >-
        This is a interface for details of the Generic Git authentication
        information
      discriminator:
        propertyName: type
    GitConfig:
      required:
        - connectionType
        - spec
        - type
        - url
      type: object
      description: This contains details of the Generic Git connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            validationRepo:
              type: string
            branchName:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            isAnonymous:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Http
                - Ssh
            connectionType:
              type: string
              enum:
                - Account
                - Repo
                - Project
            spec:
              $ref: '#/components/schemas/GitAuthentication'
    GitHTTPAuthenticationDTO:
      required:
        - passwordRef
      type: object
      description: >-
        This contains details of the Generic Git authentication information used
        via HTTP connections
      allOf:
        - $ref: '#/components/schemas/GitAuthentication'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    GitSSHAuthentication:
      required:
        - sshKeyRef
      type: object
      description: >-
        This contains details of the Generic Git authentication information used
        via SSH connections
      allOf:
        - $ref: '#/components/schemas/GitAuthentication'
        - type: object
          properties:
            sshKeyRef:
              type: string
    GithubApiAccess:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - GithubApp
            - Token
            - OAuth
        spec:
          $ref: '#/components/schemas/GithubApiAccessSpec'
      description: This contains details of the information needed for Github API access
    GithubApiAccessSpec:
      type: object
      description: >-
        This contains details of the information such as references of username
        and password needed for Github API access
    GithubApp:
      required:
        - privateKeyRef
      type: object
      description: >-
        This contains details of the Github App credentials Specs such as
        references of private key
      allOf:
        - $ref: '#/components/schemas/GithubHttpCredentialsSpec'
        - type: object
          properties:
            installationId:
              type: string
            applicationId:
              type: string
            installationIdRef:
              type: string
            applicationIdRef:
              type: string
            privateKeyRef:
              type: string
    GithubAppSpec:
      required:
        - privateKeyRef
      type: object
      description: >-
        This contains details of the Github API access credentials Specs such as
        references of private key
      allOf:
        - $ref: '#/components/schemas/GithubApiAccessSpec'
        - type: object
          properties:
            installationId:
              type: string
            applicationId:
              type: string
            installationIdRef:
              type: string
            applicationIdRef:
              type: string
            privateKeyRef:
              type: string
    GithubAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - Ssh
        spec:
          $ref: '#/components/schemas/GithubCredentials'
      description: This contains details of the information needed for Github access
    GithubConnector:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of Github connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            validationRepo:
              type: string
            authentication:
              $ref: '#/components/schemas/GithubAuthentication'
            apiAccess:
              $ref: '#/components/schemas/GithubApiAccess'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Account
                - Repo
    GithubCredentials:
      type: object
      description: This is a interface for details of the Github credentials
    GithubHttpCredentials:
      required:
        - type
      type: object
      description: >-
        This contains details of the Github credentials used via HTTP
        connections
      allOf:
        - $ref: '#/components/schemas/GithubCredentials'
        - type: object
          properties:
            type:
              type: string
              enum:
                - UsernamePassword
                - UsernameToken
                - OAuth
                - GithubApp
                - Anonymous
            spec:
              $ref: '#/components/schemas/GithubHttpCredentialsSpec'
    GithubHttpCredentialsSpec:
      type: object
      description: >-
        This is a interface for details of the Github credentials Specs such as
        references of username and password
    GithubOauth:
      required:
        - tokenRef
      type: object
      description: This contains details of the Github credentials Specs for oauth
      allOf:
        - $ref: '#/components/schemas/GithubHttpCredentialsSpec'
        - type: object
          properties:
            tokenRef:
              type: string
        - $ref: '#/components/schemas/GithubApiAccessSpec'
    GithubSshCredentials:
      required:
        - sshKeyRef
      type: object
      description: This contains details of the Github credentials used via SSH connections
      allOf:
        - $ref: '#/components/schemas/GithubCredentials'
        - type: object
          properties:
            sshKeyRef:
              type: string
    GithubTokenSpec:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of token
        needed for Github API access
      allOf:
        - $ref: '#/components/schemas/GithubApiAccessSpec'
        - type: object
          properties:
            tokenRef:
              type: string
    GithubUsernamePassword:
      required:
        - passwordRef
      type: object
      description: >-
        This contains details of the Github credentials Specs such as references
        of username and password
      allOf:
        - $ref: '#/components/schemas/GithubHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    GithubUsernameToken:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the Github credentials Specs such as references
        of username and token
      allOf:
        - $ref: '#/components/schemas/GithubHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            tokenRef:
              type: string
    GitlabApiAccess:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Token
            - OAuth
        spec:
          $ref: '#/components/schemas/GitlabApiAccessSpec'
      description: This contains details of the information needed for Gitlab API access
    GitlabApiAccessSpec:
      type: object
      description: >-
        This contains details of the information such as references of username
        and password needed for Gitlab API access
    GitlabAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - Ssh
        spec:
          $ref: '#/components/schemas/GitlabCredentials'
      description: This contains details of the information needed for Gitlab access
    GitlabConnector:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of Gitlab connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            validationRepo:
              type: string
            authentication:
              $ref: '#/components/schemas/GitlabAuthentication'
            apiAccess:
              $ref: '#/components/schemas/GitlabApiAccess'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            proxy:
              type: boolean
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Account
                - Repo
                - Project
    GitlabCredentials:
      type: object
      description: This is a interface for details of the Gitlab credentials
    GitlabHttpCredentials:
      required:
        - spec
        - type
      type: object
      description: >-
        This contains details of the Gitlab credentials used via HTTP
        connections
      allOf:
        - $ref: '#/components/schemas/GitlabCredentials'
        - type: object
          properties:
            type:
              type: string
              enum:
                - UsernamePassword
                - UsernameToken
                - Kerberos
                - OAuth
            spec:
              $ref: '#/components/schemas/GitlabHttpCredentialsSpec'
    GitlabHttpCredentialsSpec:
      type: object
      description: >-
        This is a interface for details of the Gitlab credentials Specs such as
        references of username and password
    GitlabKerberos:
      required:
        - kerberosKeyRef
      type: object
      description: >-
        This contains details of the Gitlab credentials Specs such as references
        of Keberos key
      allOf:
        - $ref: '#/components/schemas/GitlabHttpCredentialsSpec'
        - type: object
          properties:
            kerberosKeyRef:
              type: string
    GitlabOauth:
      required:
        - refreshTokenRef
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of tokens
        needed for Gitlab API access
      allOf:
        - $ref: '#/components/schemas/GitlabHttpCredentialsSpec'
        - type: object
          properties:
            tokenRef:
              type: string
            refreshTokenRef:
              type: string
        - $ref: '#/components/schemas/GitlabApiAccessSpec'
    GitlabSshCredentials:
      required:
        - sshKeyRef
      type: object
      description: This contains details of the Gitlab credentials used via SSH connections
      allOf:
        - $ref: '#/components/schemas/GitlabCredentials'
        - type: object
          properties:
            sshKeyRef:
              type: string
    GitlabTokenSpec:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of token
        needed for Gitlab API access
      allOf:
        - $ref: '#/components/schemas/GitlabApiAccessSpec'
        - type: object
          properties:
            tokenRef:
              type: string
            apiUrl:
              type: string
    GitlabUsernamePassword:
      required:
        - passwordRef
      type: object
      description: >-
        This contains details of the Gitlab credentials Specs such as references
        of username and password
      allOf:
        - $ref: '#/components/schemas/GitlabHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    GitlabUsernameToken:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the Gitlab credentials Specs such as references
        of username and token
      allOf:
        - $ref: '#/components/schemas/GitlabHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            tokenRef:
              type: string
    HarnessApiAccess:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Token
            - Jwt_Token
        spec:
          $ref: '#/components/schemas/HarnessApiAccessSpec'
      description: This contains details of the information needed for Harness API access
    HarnessApiAccessSpec:
      type: object
      description: >-
        This contains details of the information such as references of username
        and password needed for Harness API access
    HarnessAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Http
            - Ssh
        spec:
          $ref: '#/components/schemas/HarnessHttpCredentials'
      description: This contains details of the information needed for Harness access
    HarnessConnector:
      required:
        - authentication
        - type
        - url
      type: object
      description: This contains details of Harness connectors
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            validationRepo:
              type: string
            authentication:
              $ref: '#/components/schemas/HarnessAuthentication'
            apiAccess:
              $ref: '#/components/schemas/HarnessApiAccess'
            executeOnDelegate:
              type: boolean
            apiUrl:
              type: string
            gitBaseUrl:
              type: string
            vanityGitBaseUrl:
              type: string
            repoUiUrl:
              type: string
            slug:
              type: string
            accountId:
              type: string
            projectId:
              type: string
            orgId:
              type: string
            apiExternalUrl:
              type: string
            scopedRepoIdentifier:
              type: string
            ignoreTestConnection:
              type: boolean
            type:
              type: string
              enum:
                - Account
                - Repo
    HarnessHttpCredentials:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernameToken
        spec:
          $ref: '#/components/schemas/HarnessHttpCredentialsSpec'
      description: >-
        This contains details of the Harness credentials used via HTTP
        connections
    HarnessHttpCredentialsSpec:
      type: object
      description: >-
        This is a interface for details of the Harness credentials Specs such as
        references of username and password
    HarnessJWTTokenSpec:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of token
        needed for Harness API access
      allOf:
        - $ref: '#/components/schemas/HarnessApiAccessSpec'
        - type: object
          properties:
            tokenRef:
              type: string
    HarnessTokenSpec:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the information such as references of token
        needed for Harness API access
      allOf:
        - $ref: '#/components/schemas/HarnessApiAccessSpec'
        - type: object
          properties:
            tokenRef:
              type: string
    HarnessUsernameToken:
      required:
        - tokenRef
      type: object
      description: >-
        This contains details of the Harness credentials Specs such as
        references of username and token
      allOf:
        - $ref: '#/components/schemas/HarnessHttpCredentialsSpec'
        - type: object
          properties:
            username:
              type: string
            tokenRef:
              type: string
    HostDTO:
      required:
        - hostname
      type: object
      properties:
        hostname:
          type: string
        hostAttributes:
          type: object
          additionalProperties:
            type: string
      description: This entity contains the Host details
    HttpHelmAuthCredentials:
      type: object
      description: This contains http helm auth credentials
    HttpHelmAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
        spec:
          $ref: '#/components/schemas/HttpHelmAuthCredentials'
      description: This contains http helm authentication details
    HttpHelmConnector:
      required:
        - helmRepoUrl
      type: object
      description: This contains http helm connector details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            helmRepoUrl:
              type: string
            auth:
              $ref: '#/components/schemas/HttpHelmAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    HttpHelmUsernamePassword:
      required:
        - passwordRef
      type: object
      description: This contains http helm username password details
      allOf:
        - $ref: '#/components/schemas/HttpHelmAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    JDBCAuthCredentialsDTO:
      type: object
      description: This contains details of credentials for JDBC Authentication
    JDBCAuthenticationDTO:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - ServiceAccount
        spec:
          $ref: '#/components/schemas/JDBCAuthCredentialsDTO'
      description: This entity contains the details for JDBC Authentication
    JDBCConnector:
      required:
        - url
      type: object
      description: This contains details of the JDBC connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            auth:
              $ref: '#/components/schemas/JDBCAuthenticationDTO'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    JDBCServiceAccountDTO:
      required:
        - serviceAccountTokenRef
      type: object
      description: This entity contains kubernetes service account details
      allOf:
        - $ref: '#/components/schemas/JDBCAuthCredentialsDTO'
        - type: object
          properties:
            serviceAccountTokenRef:
              type: string
    JDBCUserNamePasswordDTO:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the JDBC Username and Password
      allOf:
        - $ref: '#/components/schemas/JDBCAuthCredentialsDTO'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    JenkinsAuthCredentialsDTO:
      type: object
      description: This contains details of credentials for Docker Authentication
    JenkinsAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
            - Bearer Token(HTTP Header)
        spec:
          $ref: '#/components/schemas/JenkinsAuthCredentialsDTO'
      description: This entity contains the details for Jenkins Authentication
    JenkinsBearerTokenDTO:
      required:
        - tokenRef
      type: object
      description: This entity contains the details of the Jenkins Bearer token
      allOf:
        - $ref: '#/components/schemas/JenkinsAuthCredentialsDTO'
        - type: object
          properties:
            tokenRef:
              type: string
    JenkinsConnector:
      required:
        - jenkinsUrl
      type: object
      description: Jenkins Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            jenkinsUrl:
              type: string
            auth:
              $ref: '#/components/schemas/JenkinsAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    JenkinsUserNamePasswordDTO:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the Jenkins Username and Password
      allOf:
        - $ref: '#/components/schemas/JenkinsAuthCredentialsDTO'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    JiraAuthCredentials:
      type: object
      description: This contains details of credentials for Jira Authentication
    JiraAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - PersonalAccessToken
        spec:
          $ref: '#/components/schemas/JiraAuthCredentials'
      description: This entity contains the details for Jira Authentication
    JiraConnector:
      required:
        - auth
        - jiraUrl
      type: object
      description: JIRA Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            jiraUrl:
              type: string
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            auth:
              $ref: '#/components/schemas/JiraAuthentication'
            ignoreTestConnection:
              type: boolean
    JiraPATPassword:
      required:
        - patRef
      type: object
      description: This entity contains the details of the Jira PAT
      allOf:
        - $ref: '#/components/schemas/JiraAuthCredentials'
        - type: object
          properties:
            patRef:
              type: string
    JiraUserNamePassword:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the Jira Username and Password
      allOf:
        - $ref: '#/components/schemas/JiraAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    KubernetesAuth:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - ClientKeyCert
            - ServiceAccount
            - OpenIdConnect
        spec:
          $ref: '#/components/schemas/KubernetesAuthCredential'
      description: This contains kubernetes auth details
    KubernetesAuthCredential:
      type: object
      description: This contains kubernetes auth credentials
    KubernetesClientKeyCert:
      required:
        - clientCertRef
        - clientKeyRef
      type: object
      description: This contains kubernetes client key certificate details
      allOf:
        - $ref: '#/components/schemas/KubernetesAuthCredential'
        - type: object
          properties:
            caCertRef:
              type: string
            clientCertRef:
              type: string
            clientKeyRef:
              type: string
            clientKeyPassphraseRef:
              type: string
            clientKeyAlgo:
              type: string
    KubernetesClusterConfig:
      required:
        - credential
      type: object
      description: This contains kubernetes cluster config details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/KubernetesCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    KubernetesClusterDetails:
      required:
        - auth
        - masterUrl
      type: object
      description: This contains kubernetes cluster details
      allOf:
        - $ref: '#/components/schemas/KubernetesCredentialSpec'
        - type: object
          properties:
            masterUrl:
              type: string
            auth:
              $ref: '#/components/schemas/KubernetesAuth'
    KubernetesCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - InheritFromDelegate
            - ManualConfig
        spec:
          $ref: '#/components/schemas/KubernetesCredentialSpec'
      description: This contains kubernetes credentials details
    KubernetesCredentialSpec:
      type: object
      description: This contains kubernetes credentials spec details
    KubernetesOpenIdConnect:
      required:
        - oidcClientIdRef
        - oidcIssuerUrl
        - oidcPasswordRef
      type: object
      description: This contains kubernetes open id connect details
      allOf:
        - $ref: '#/components/schemas/KubernetesAuthCredential'
        - type: object
          properties:
            oidcIssuerUrl:
              type: string
            oidcUsername:
              type: string
            oidcUsernameRef:
              type: string
            oidcClientIdRef:
              type: string
            oidcPasswordRef:
              type: string
            oidcSecretRef:
              type: string
            oidcScopes:
              type: string
    KubernetesServiceAccount:
      required:
        - serviceAccountTokenRef
      type: object
      description: This contains kubernetes service account details
      allOf:
        - $ref: '#/components/schemas/KubernetesAuthCredential'
        - type: object
          properties:
            serviceAccountTokenRef:
              type: string
            caCertRef:
              type: string
    KubernetesUserNamePassword:
      required:
        - passwordRef
      type: object
      description: This contains kubernetes username password details
      allOf:
        - $ref: '#/components/schemas/KubernetesAuthCredential'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    LangSmithApiKeyDTO:
      required:
        - apiKeyRef
      type: object
      description: This entity contains langsmith api key details
      allOf:
        - $ref: '#/components/schemas/LangSmithAuthCredentialsDTO'
        - type: object
          properties:
            apiKeyRef:
              type: string
    LangSmithAuthCredentialsDTO:
      type: object
      description: This contains details of credentials for LangSmith Authentication
    LangSmithAuthenticationDTO:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - ApiKey
        spec:
          $ref: '#/components/schemas/LangSmithAuthCredentialsDTO'
      description: This entity contains the details for LangSmith Authentication
    LangSmithConnector:
      required:
        - baseUrl
      type: object
      description: This contains details of the LangSmith connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            baseUrl:
              type: string
            auth:
              $ref: '#/components/schemas/LangSmithAuthenticationDTO'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    LocalConnector:
      type: object
      description: This contains the local connector information.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            ignoreTestConnection:
              type: boolean
            default:
              type: boolean
    MLFlowApiKeyDTO:
      type: object
      description: This entity contains MLFlow API key details
      allOf:
        - $ref: '#/components/schemas/MLFlowAuthCredentials'
    MLFlowAuthCredentials:
      type: object
      description: This contains details of credentials for MLFlow Authentication
    MLFlowAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Anonymous
        spec:
          $ref: '#/components/schemas/MLFlowAuthCredentials'
      description: This entity contains the details for MLFlow Authentication
    MLFlowConnector:
      required:
        - auth
        - baseUrl
      type: object
      description: This contains details of the MLFlow connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            baseUrl:
              type: string
            auth:
              $ref: '#/components/schemas/MLFlowAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    MsTeamsConnector:
      required:
        - apiAccessType
      type: object
      description: MsTeams Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            tenantId:
              type: string
            clientId:
              type: string
            apiAccessType:
              type: string
              enum:
                - TOKEN
                - OAUTH
            clientSecretRef:
              type: string
            accessTokenRef:
              type: string
            refreshTokenRef:
              type: string
            ignoreTestConnection:
              type: boolean
    NameValuePairWithDefault:
      required:
        - name
        - type
        - value
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        type:
          type: string
        useAsDefault:
          type: boolean
    NewRelicConnectorDTO:
      required:
        - apiKeyRef
        - newRelicAccountId
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            newRelicAccountId:
              type: string
            url:
              type: string
            apiKeyRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    NexusAuthCredentials:
      type: object
      description: This entity contains the details of credentials for Nexus Authentication
    NexusAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: This entity contains the details of Nexus Authentication Type
          enum:
            - UsernamePassword
            - Anonymous
        spec:
          $ref: '#/components/schemas/NexusAuthCredentials'
      description: This entity contains the details for Nexus Authentication
    NexusConnector:
      required:
        - nexusServerUrl
        - version
      type: object
      description: Nexus Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            nexusServerUrl:
              type: string
            version:
              type: string
            auth:
              $ref: '#/components/schemas/NexusAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    NexusUsernamePasswordAuth:
      required:
        - passwordRef
      type: object
      description: This entity contains the details of the Nexus Username and Password
      allOf:
        - $ref: '#/components/schemas/NexusAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    OciHelmAuthCredentials:
      type: object
      description: This contains oci helm auth credentials
    OciHelmAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - Anonymous
        spec:
          $ref: '#/components/schemas/OciHelmAuthCredentials'
      description: This contains oci helm authentication details
    OciHelmConnector:
      required:
        - helmRepoUrl
      type: object
      description: This contains Oci helm connector details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            helmRepoUrl:
              type: string
            auth:
              $ref: '#/components/schemas/OciHelmAuthentication'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    OciHelmUsernamePassword:
      required:
        - passwordRef
      type: object
      description: This contains oci helm username password details
      allOf:
        - $ref: '#/components/schemas/OciHelmAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    OidcAccessTokenOptions:
      type: object
      properties:
        userProject:
          type: string
    OidcChartmuseumGcpConfig:
      type: object
      properties:
        type:
          type: string
        audience:
          type: string
        subject_token_type:
          type: string
        token_url:
          type: string
        service_account_impersonation_url:
          type: string
    OidcWorkloadAccessTokenRequest:
      type: object
      properties:
        audience:
          type: string
        grant_type:
          type: string
        requested_token_type:
          type: string
        scope:
          type: string
        subject_token_type:
          type: string
        subject_token:
          type: string
        options:
          $ref: '#/components/schemas/OidcAccessTokenOptions'
    OpsGenieConnectorDTO:
      required:
        - url
        - username
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            apiKeyRef:
              type: string
            username:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    PageResponseCcmK8sConnectorResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ccmK8sConnectorResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    PagerDutyConnectorDTO:
      required:
        - apiTokenRef
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            apiTokenRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    PhysicalDataCenterConnectorDTO:
      type: object
      description: This contains Physical Data Center connector details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
            hosts:
              type: array
              items:
                $ref: '#/components/schemas/HostDTO'
    PrometheusConnectorDTO:
      required:
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            username:
              type: string
            passwordRef:
              type: string
            headers:
              type: array
              items:
                $ref: '#/components/schemas/CustomHealthKeyAndValue'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    RancherAuthentication:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - BearerToken
        spec:
          $ref: '#/components/schemas/RancherConnectorConfigAuthentication'
      description: This contains rancher authentication details
    RancherConnector:
      type: object
      description: This contains Rancher connector details
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
            credential:
              $ref: '#/components/schemas/RancherConnectorConfig'
    RancherConnectorBearerTokenAuthentication:
      required:
        - passwordRef
      type: object
      description: This contains rancher bearer token auth details
      allOf:
        - $ref: '#/components/schemas/RancherConnectorConfigAuthentication'
        - type: object
          properties:
            passwordRef:
              type: string
    RancherConnectorConfig:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - ManualConfig
        spec:
          $ref: '#/components/schemas/RancherConnectorConfigAuth'
      description: This contains rancher connector config details
    RancherConnectorConfigAuth:
      required:
        - auth
        - rancherUrl
      type: object
      properties:
        rancherUrl:
          type: string
        auth:
          $ref: '#/components/schemas/RancherAuthentication'
      description: This contains rancher connector authentication details
    RancherConnectorConfigAuthentication:
      type: object
      description: This contains rancher auth credentials
    ResponseDTOPageResponseCcmK8sConnectorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseCcmK8sConnectorResponse'
        metaData:
          type: object
        correlationId:
          type: string
    SalesforceConnector:
      required:
        - credential
      type: object
      description: This contains details of the Salesforce connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/SalesforceCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    SalesforceCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Jwt
            - SfdxAuthUrl
        spec:
          $ref: '#/components/schemas/SalesforceCredentialSpec'
      description: This contains Salesforce connector credentials
    SalesforceCredentialSpec:
      type: object
      description: This contains Salesforce connector credentials spec
    SalesforceJwtCredentialDetails:
      type: object
      description: This contains salesforce JWT credentials connector details
      allOf:
        - $ref: '#/components/schemas/SalesforceCredentialSpec'
        - type: object
          properties:
            username:
              type: string
            loginUrl:
              type: string
            clientId:
              type: string
            jwtKeyFileRef:
              type: string
    SalesforceSfdxAuthUrlCredentialDetails:
      type: object
      description: This contains salesforce Sfdx auth url credentials connector details
      allOf:
        - $ref: '#/components/schemas/SalesforceCredentialSpec'
        - type: object
          properties:
            sfdxUrl:
              type: string
    ServiceNowADFS:
      required:
        - adfsUrl
        - certificateRef
        - clientIdRef
        - privateKeyRef
        - resourceIdRef
      type: object
      description: This entity contains the details of the Service Now ADFS
      allOf:
        - $ref: '#/components/schemas/ServiceNowAuthCredentials'
        - type: object
          properties:
            certificateRef:
              type: string
            privateKeyRef:
              type: string
            clientIdRef:
              type: string
            resourceIdRef:
              type: string
            adfsUrl:
              type: string
    ServiceNowAuthCredentials:
      type: object
      description: This contains details of credentials for Service Now Authentication
    ServiceNowAuthentication:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - UsernamePassword
            - AdfsClientCredentialsWithCertificate
            - RefreshTokenGrantType
        spec:
          $ref: '#/components/schemas/ServiceNowAuthCredentials'
      description: This entity contains the details for Service Now Authentication
    ServiceNowConnector:
      required:
        - auth
        - serviceNowUrl
      type: object
      description: ServiceNow Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            serviceNowUrl:
              type: string
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            auth:
              $ref: '#/components/schemas/ServiceNowAuthentication'
            ignoreTestConnection:
              type: boolean
    ServiceNowRefreshToken:
      required:
        - clientIdRef
        - refreshTokenRef
        - tokenUrl
      type: object
      description: This entity contains the details of the Service Now Refresh Token
      allOf:
        - $ref: '#/components/schemas/ServiceNowAuthCredentials'
        - type: object
          properties:
            tokenUrl:
              type: string
            refreshTokenRef:
              type: string
            clientIdRef:
              type: string
            clientSecretRef:
              type: string
            scope:
              type: string
    ServiceNowUserNamePassword:
      required:
        - passwordRef
      type: object
      description: >-
        This entity contains the details of the Service Now Username and
        Password
      allOf:
        - $ref: '#/components/schemas/ServiceNowAuthCredentials'
        - type: object
          properties:
            username:
              type: string
            usernameRef:
              type: string
            passwordRef:
              type: string
    SignalFXConnectorDTO:
      required:
        - apiTokenRef
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            apiTokenRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    SlackConnector:
      required:
        - apiAccessType
      type: object
      description: Slack Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            apiAccessType:
              type: string
              enum:
                - TOKEN
                - OAUTH
            botUserTokenRef:
              type: string
            accessTokenRef:
              type: string
            refreshTokenRef:
              type: string
            ignoreTestConnection:
              type: boolean
    SplunkConnector:
      required:
        - accountId
        - splunkUrl
      type: object
      description: This contains the Splunk Connector configuration
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            splunkUrl:
              type: string
            username:
              type: string
            accountId:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
            passwordRef:
              type: string
            tokenRef:
              type: string
            type:
              type: string
              enum:
                - UsernamePassword
                - Anonymous
                - Bearer Token(HTTP Header)
                - HEC Token
    SpotConnector:
      required:
        - credential
      type: object
      description: This contains details of the Spot connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/SpotCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    SpotCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - PermanentTokenConfig
        spec:
          $ref: '#/components/schemas/SpotCredentialSpec'
      description: This contains details of the Spot connector credential
    SpotCredentialSpec:
      type: object
      description: This contains Spot connector credential spec
    SpotPermanentTokenConfigSpec:
      required:
        - apiTokenRef
      type: object
      description: This contains Spot permanent token connector spec
      allOf:
        - $ref: '#/components/schemas/SpotCredentialSpec'
        - type: object
          properties:
            spotAccountId:
              type: string
            spotAccountIdRef:
              type: string
            apiTokenRef:
              type: string
    SumoLogicConnectorDTO:
      required:
        - accessIdRef
        - accessKeyRef
        - url
      type: object
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            url:
              type: string
            accessIdRef:
              type: string
            accessKeyRef:
              type: string
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            ignoreTestConnection:
              type: boolean
    TasConnector:
      required:
        - credential
      type: object
      description: This contains details of the Tas connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            credential:
              $ref: '#/components/schemas/TasCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    TasCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - ManualConfig
        spec:
          $ref: '#/components/schemas/TasCredentialSpec'
      description: This contains Tas connector credentials
    TasCredentialSpec:
      type: object
      description: This contains Tas connector credentials spec
    TasManualDetails:
      required:
        - endpointUrl
        - passwordRef
      type: object
      description: This contains Tas manual credentials connector details
      allOf:
        - $ref: '#/components/schemas/TasCredentialSpec'
        - type: object
          properties:
            username:
              type: string
            endpointUrl:
              type: string
              description: Endpoint URL of the TAS Cluster.
            usernameRef:
              type: string
            passwordRef:
              type: string
            refreshTokenRef:
              type: string
    TemplateLinkConfigForCustomSecretManager:
      required:
        - templateRef
        - versionLabel
      type: object
      properties:
        templateRef:
          type: string
        versionLabel:
          pattern: ^[0-9a-zA-Z][^\s/&]{0,63}$
          type: string
        templateInputs:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/NameValuePairWithDefault'
    TerraformCloudConnector:
      required:
        - credential
        - terraformCloudUrl
      type: object
      description: This contains details of the Terraform Cloud connector
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            terraformCloudUrl:
              type: string
            credential:
              $ref: '#/components/schemas/TerraformCloudCredential'
            delegateSelectors:
              uniqueItems: true
              type: array
              items:
                type: string
            executeOnDelegate:
              type: boolean
            ignoreTestConnection:
              type: boolean
    TerraformCloudCredential:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - ApiToken
        spec:
          $ref: '#/components/schemas/TerraformCloudCredentialSpec'
      description: This contains Terraform Cloud connector credentials
    TerraformCloudCredentialSpec:
      type: object
      description: This contains Terraform Cloud connector credentials spec
    TerraformCloudTokenCredentials:
      required:
        - apiToken
      type: object
      description: This contains Terraform Cloud API TOKEN credentials connector details
      allOf:
        - $ref: '#/components/schemas/TerraformCloudCredentialSpec'
        - type: object
          properties:
            apiToken:
              type: string
    VaultConnector:
      required:
        - renewalIntervalMinutes
        - vaultUrl
      type: object
      description: This contains the Vault Connector configuration.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            authToken:
              type: string
              description: This is the authentication token for Vault.
            basePath:
              type: string
              description: >-
                This is the location of the Vault directory where Secret will be
                stored.
            vaultUrl:
              type: string
              description: URL of the HashiCorp Vault.
            renewalIntervalMinutes:
              type: integer
              description: This is the time interval for token renewal.
              format: int64
            secretEngineManuallyConfigured:
              type: boolean
              description: Manually entered Secret Engine.
            secretEngineName:
              type: string
              description: Name of the Secret Engine.
            appRoleId:
              type: string
              description: ID of App Role.
            appRolePath:
              type: string
              description: Custom Path to the App Role
            secretId:
              type: string
              description: ID of the Secret.
            secretEngineVersion:
              type: integer
              description: Version of Secret Engine.
              format: int32
            delegateSelectors:
              uniqueItems: true
              type: array
              description: >-
                List of Delegate Selectors that belong to the same Delegate and
                are used to connect to the Secret Manager.
              items:
                type: string
                description: >-
                  List of Delegate Selectors that belong to the same Delegate
                  and are used to connect to the Secret Manager.
            namespace:
              type: string
              description: This is the Vault namespace where Secret will be created.
            sinkPath:
              type: string
              description: This is the location at which auth token is to be read from.
            useVaultAgent:
              type: boolean
              description: >-
                Boolean value to indicate if Vault Agent is used for
                authentication.
            useAwsIam:
              type: boolean
              description: Boolean value to indicate if Aws Iam is used for authentication.
            awsRegion:
              type: string
              description: This is the Aws region where aws iam auth will happen.
            vaultAwsIamRole:
              type: string
              description: >-
                This is the Vault role defined to bind to aws iam account/role
                being accessed.
            useK8sAuth:
              type: boolean
              description: >-
                Boolean value to indicate if K8s Auth is used for
                authentication.
            vaultK8sAuthRole:
              type: string
              description: This is the role where K8s auth will happen.
            serviceAccountTokenPath:
              type: string
              description: >-
                This is the SA token path where the token is mounted in the K8s
                Pod.
            k8sAuthEndpoint:
              type: string
              description: This is the path where kubernetes auth is enabled in Vault.
            renewAppRoleToken:
              type: boolean
              description: >-
                Boolean value to indicate if appRole token renewal is enabled or
                not.
            enableCache:
              type: boolean
              description: >-
                Boolean value to indicate if cache is enabled for App Role
                Token.
            ignoreTestConnection:
              type: boolean
            useJwtAuth:
              type: boolean
              description: >-
                Boolean value to indicate if JWT Auth is used for
                authentication.
            jwtAuthRole:
              type: string
              description: >-
                This is the role name which is created to perform JWT auth
                method.
            jwtAuthPath:
              type: string
              description: This specifies mount path where JWT auth method is enabled.
            executeOnDelegate:
              type: boolean
              description: >-
                Should the secret manager execute operations on the delegate, or
                via Harness platform
            proxy:
              type: boolean
              description: Whether to use proxy for connecting to Vault server
            accessType:
              type: string
              enum:
                - APP_ROLE
                - TOKEN
                - VAULT_AGENT
                - AWS_IAM
                - K8s_AUTH
                - JWT
            readOnly:
              type: boolean
            default:
              type: boolean
            ngCertificateRef:
              type: string
            xvaultAwsIamServerId:
              type: string
              description: >-
                This is the Aws Iam Header Server ID that has been configured
                for this Aws Iam instance.
    ZoomConnector:
      required:
        - apiAccessType
      type: object
      description: Zoom Connector details.
      allOf:
        - $ref: '#/components/schemas/ConnectorConfig'
        - type: object
          properties:
            zoomAccountId:
              type: string
            clientId:
              type: string
            zoomUserId:
              type: string
            apiAccessType:
              type: string
              enum:
                - TOKEN
                - OAUTH
            clientSecretRef:
              type: string
            accessTokenRef:
              type: string
            refreshTokenRef:
              type: string
            ignoreTestConnection:
              type: boolean
    ccmK8sConnectorResponse:
      type: object
      properties:
        k8sConnector:
          $ref: '#/components/schemas/ConnectorResponse1'
        ccmk8sConnector:
          type: array
          items:
            $ref: '#/components/schemas/ConnectorResponse1'
      description: This has the CCM K8s Connector details along with its metadata.
    ConnectorFilterProperties:
      type: object
      properties:
        connectorNames:
          type: array
          description: >-
            This is the list of the Connector names on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the Connector names on which the filter will
              be applied.
        connectorIdentifiers:
          type: array
          description: >-
            This is the list of the Connector identifiers on which the filter
            will be applied.
          items:
            type: string
            description: >-
              This is the list of the Connector identifiers on which the filter
              will be applied.
        description:
          type: string
          description: Description of filter created.
        types:
          type: array
          description: >-
            This is the list of the Connector types on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the Connector types on which the filter will
              be applied.
            enum:
              - K8sCluster
              - Git
              - Splunk
              - AppDynamics
              - Prometheus
              - OpsGenie
              - Dynatrace
              - Vault
              - AzureKeyVault
              - DockerRegistry
              - Local
              - AwsKms
              - GcpKms
              - AwsSecretManager
              - Gcp
              - Aws
              - Azure
              - Artifactory
              - Jira
              - Nexus
              - Github
              - Gitlab
              - Bitbucket
              - Codecommit
              - CEAws
              - CEAzure
              - GcpCloudCost
              - CEK8sCluster
              - HttpHelmRepo
              - NewRelic
              - Datadog
              - SumoLogic
              - PagerDuty
              - CustomHealth
              - ServiceNow
              - ErrorTracking
              - Pdc
              - AzureRepo
              - Jenkins
              - OciHelmRepo
              - CustomSecretManager
              - ElasticSearch
              - GcpSecretManager
              - AzureArtifacts
              - Tas
              - Spot
              - Bamboo
              - TerraformCloud
              - SignalFX
              - Harness
              - Rancher
              - JDBC
              - Zoom
              - MsTeams
              - Confluence
              - Slack
              - Salesforce
              - LangSmith
              - MLFlow
        categories:
          type: array
          description: >-
            This is the list of the Connector category on which the filter will
            be applied.
          items:
            type: string
            description: >-
              This is the list of the Connector category on which the filter
              will be applied.
            enum:
              - CLOUD_PROVIDER
              - SECRET_MANAGER
              - CLOUD_COST
              - ARTIFACTORY
              - CODE_REPO
              - MONITORING
              - TICKETING
              - DATABASE
              - COMMUNICATION
              - DOCUMENTATION
              - ML_OPS
        connectivityStatuses:
          type: array
          description: >-
            This is the list of the Connector status on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the Connector status on which the filter will
              be applied.
            enum:
              - SUCCESS
              - FAILURE
              - PARTIAL
              - UNKNOWN
              - PENDING
        inheritingCredentialsFromDelegate:
          type: boolean
          description: >-
            Boolean value to indicate if the Connector is using credentials from
            the Delegate to connect.
        connectorConnectivityModes:
          type: array
          description: Connector connectivity mode on which the filter is applied
          items:
            type: string
            description: Connector connectivity mode on which the filter is applied
            enum:
              - DELEGATE
              - MANAGER
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          enum:
            - Connector
      description: Properties of the Connector Filter defined in Harness
    SortOrder:
      type: object
      properties:
        fieldName:
          type: string
        orderType:
          type: string
          enum:
            - ASC
            - DESC
    ResponseDTOConnectorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ConnectorResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    Connector2:
      type: object
      properties:
        connector:
          $ref: '#/components/schemas/ConnectorInfo'
      description: This is the view of Connector entity as defined in Harness.
    FieldValues:
      type: object
      properties:
        fieldValues:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
    ResponseDTOFieldValues:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FieldValues'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOString:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: string
        metaData:
          type: object
        correlationId:
          type: string
    ConnectorCatalogueItem:
      type: object
      properties:
        category:
          type: string
          description: Category of this Connector.
          enum:
            - CLOUD_PROVIDER
            - SECRET_MANAGER
            - CLOUD_COST
            - ARTIFACTORY
            - CODE_REPO
            - MONITORING
            - TICKETING
            - DATABASE
            - COMMUNICATION
            - DOCUMENTATION
            - ML_OPS
        connectors:
          uniqueItems: true
          type: array
          description: List of Connector types corresponding to a specific category.
          items:
            type: string
            description: List of Connector types corresponding to a specific category.
            enum:
              - K8sCluster
              - Git
              - Splunk
              - AppDynamics
              - Prometheus
              - OpsGenie
              - Dynatrace
              - Vault
              - AzureKeyVault
              - DockerRegistry
              - Local
              - AwsKms
              - GcpKms
              - AwsSecretManager
              - Gcp
              - Aws
              - Azure
              - Artifactory
              - Jira
              - Nexus
              - Github
              - Gitlab
              - Bitbucket
              - Codecommit
              - CEAws
              - CEAzure
              - GcpCloudCost
              - CEK8sCluster
              - HttpHelmRepo
              - NewRelic
              - Datadog
              - SumoLogic
              - PagerDuty
              - CustomHealth
              - ServiceNow
              - ErrorTracking
              - Pdc
              - AzureRepo
              - Jenkins
              - OciHelmRepo
              - CustomSecretManager
              - ElasticSearch
              - GcpSecretManager
              - AzureArtifacts
              - Tas
              - Spot
              - Bamboo
              - TerraformCloud
              - SignalFX
              - Harness
              - Rancher
              - JDBC
              - Zoom
              - MsTeams
              - Confluence
              - Slack
              - Salesforce
              - LangSmith
              - MLFlow
      description: This has details of the Connector Catalogue in Harness.
    ConnectorCatalogueResponse:
      type: object
      properties:
        catalogue:
          type: array
          description: >-
            List of Connector category and Connector types corresponding to a
            specific category.
          items:
            $ref: '#/components/schemas/ConnectorCatalogueItem'
      description: This has details of the retrieved Connector Catalogue.
    ResponseDTOConnectorCatalogueResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ConnectorCatalogueResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ConnectorStatistics:
      type: object
      properties:
        typeStats:
          type: array
          description: Count of Connectors grouped by type.
          items:
            $ref: '#/components/schemas/ConnectorTypeStats'
        statusStats:
          type: array
          description: Count of Connectors grouped by status.
          items:
            $ref: '#/components/schemas/ConnectorStatusStats'
      description: This has the count for all Connector Types and Status defined in Harness
    ConnectorStatusStats:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - PARTIAL
            - UNKNOWN
            - PENDING
        count:
          type: integer
          format: int32
      description: Count of Connectors grouped by status.
    ConnectorTypeStats:
      type: object
      properties:
        type:
          type: string
          enum:
            - K8sCluster
            - Git
            - Splunk
            - AppDynamics
            - Prometheus
            - OpsGenie
            - Dynatrace
            - Vault
            - AzureKeyVault
            - DockerRegistry
            - Local
            - AwsKms
            - GcpKms
            - AwsSecretManager
            - Gcp
            - Aws
            - Azure
            - Artifactory
            - Jira
            - Nexus
            - Github
            - Gitlab
            - Bitbucket
            - Codecommit
            - CEAws
            - CEAzure
            - GcpCloudCost
            - CEK8sCluster
            - HttpHelmRepo
            - NewRelic
            - Datadog
            - SumoLogic
            - PagerDuty
            - CustomHealth
            - ServiceNow
            - ErrorTracking
            - Pdc
            - AzureRepo
            - Jenkins
            - OciHelmRepo
            - CustomSecretManager
            - ElasticSearch
            - GcpSecretManager
            - AzureArtifacts
            - Tas
            - Spot
            - Bamboo
            - TerraformCloud
            - SignalFX
            - Harness
            - Rancher
            - JDBC
            - Zoom
            - MsTeams
            - Confluence
            - Slack
            - Salesforce
            - LangSmith
            - MLFlow
        count:
          type: integer
          format: int32
      description: Count of Connectors grouped by type.
    ResponseDTOConnectorStatistics:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ConnectorStatistics'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseConnectorResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ConnectorResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseConnectorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseConnectorResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListConnectorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ConnectorResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    ConnectorValidationResult:
      type: object
      properties:
        status:
          type: string
          description: Connectivity status of a Connector.
          enum:
            - SUCCESS
            - FAILURE
            - PARTIAL
            - UNKNOWN
            - PENDING
        errors:
          type: array
          description: List of errors and their details.
          items:
            $ref: '#/components/schemas/ErrorDetail'
        errorSummary:
          type: string
          description: Summary of errors.
        testedAt:
          type: integer
          description: 'Time at which Test Connection was completed '
          format: int64
        delegateId:
          type: string
          description: ID of Delegate on which Test Connection is executed.
        taskId:
          type: string
          description: ID of Delegate Task.
      description: This has validation details for the Connector defined in Harness.
    ResponseDTOConnectorValidationResult:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ConnectorValidationResult'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListString:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            type: string
        metaData:
          type: object
        correlationId:
          type: string
    EmbeddedUserDetailsDTO:
      type: object
      properties:
        name:
          type: string
        email:
          type: string
      description: Updated by user details
    File:
      required:
        - name
        - parentIdentifier
        - type
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the File or Folder
        name:
          type: string
          description: Name of the File or Folder
        fileUsage:
          type: string
          description: This specifies the file usage
        type:
          type: string
          description: This specifies the type of the File
          enum:
            - FILE
            - FOLDER
        parentIdentifier:
          type: string
          description: >-
            This specifies parent directory identifier. The value of Root
            directory identifier is Root.
        description:
          type: string
          description: Description of the File or Folder
        tags:
          type: array
          description: Tags
          items:
            $ref: '#/components/schemas/NGTag'
        mimeType:
          type: string
          description: Mime type of the File
        path:
          type: string
          description: The path of the File or Folder
          readOnly: true
        draft:
          type: boolean
          description: Whether File is draft or not
          readOnly: true
        createdBy:
          $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
        lastModifiedBy:
          $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
        lastModifiedAt:
          type: integer
          description: Last modified time for the File or Folder
          format: int64
          readOnly: true
      description: This is details of the File or Folder entity defined in Harness.
    NGTag:
      required:
        - key
      type: object
      properties:
        key:
          type: string
          description: Tag key
        value:
          type: string
          description: Tag value
      description: This is the view of the tags of the entity.
    ResponseDTOFile:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/File'
        metaData:
          type: object
        correlationId:
          type: string
    FileStoreRequest:
      required:
        - file
      type: object
      properties:
        file:
          $ref: '#/components/schemas/File'
    ResponseDTOSetEmbeddedUserDetailsDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
        metaData:
          type: object
        correlationId:
          type: string
    EntityDetail:
      type: object
      properties:
        type:
          type: string
          enum:
            - CreatePR
            - MergePR
            - Projects
            - Pipelines
            - PipelineSteps
            - Http
            - Email
            - JiraCreate
            - JiraUpdate
            - JiraApproval
            - HarnessApproval
            - CustomApproval
            - Barrier
            - Queue
            - FlagConfiguration
            - ShellScript
            - K8sCanaryDeploy
            - K8sApply
            - K8sBlueGreenDeploy
            - K8sRollingDeploy
            - K8sRollingRollback
            - K8sScale
            - K8sDelete
            - K8sBGSwapServices
            - K8sCanaryDelete
            - TerraformApply
            - TerraformPlan
            - TerraformDestroy
            - TerraformRollback
            - HelmDeploy
            - HelmRollback
            - Connectors
            - Secrets
            - Files
            - Service
            - Environment
            - EnvironmentGroup
            - InputSets
            - CvConfig
            - Verify
            - Delegates
            - DelegateConfigurations
            - CvVerificationJob
            - IntegrationStage
            - IntegrationSteps
            - SecurityStage
            - SecuritySteps
            - CvKubernetesActivitySource
            - DeploymentSteps
            - DeploymentStage
            - ApprovalStage
            - PipelineStage
            - FeatureFlagStage
            - Template
            - TemplateStage
            - CustomDeployment
            - Triggers
            - MonitoredService
            - GitRepositories
            - FeatureFlags
            - ServiceNowApproval
            - ServiceNowCreate
            - ServiceNowUpdate
            - ServiceNowImportSet
            - GovernancePolicies
            - Policy
            - Run
            - RunTests
            - Plugin
            - RestoreCacheGCS
            - RestoreCacheS3
            - SaveCacheGCS
            - SaveCacheS3
            - Security
            - AquaTrivy
            - AWSECR
            - Bandit
            - BlackDuck
            - Brakeman
            - Burp
            - Checkmarx
            - Clair
            - DataTheorem
            - DockerContentTrust
            - External
            - FortifyOnDemand
            - Grype
            - JfrogXray
            - Mend
            - Metasploit
            - Nessus
            - NexusIQ
            - Nikto
            - Nmap
            - Openvas
            - Owasp
            - PrismaCloud
            - Prowler
            - Qualys
            - Reapsaw
            - ShiftLeft
            - Sniper
            - Snyk
            - Sonarqube
            - Sysdig
            - Tenable
            - Veracode
            - Zap
            - GitClone
            - ArtifactoryUpload
            - GCSUpload
            - S3Upload
            - BuildAndPushGCR
            - BuildAndPushGAR
            - BuildAndPushECR
            - BuildAndPushDockerRegistry
            - CreateStack
            - DeleteStack
            - ServerlessAwsLambdaDeploy
            - ServerlessAwsLambdaRollback
            - CustomStage
            - RollbackStack
            - Infrastructure
            - Command
            - StrategyNode
            - AzureSlotDeployment
            - AzureTrafficShift
            - FetchInstanceScript
            - AzureSwapSlot
            - AzureWebAppRollback
            - JenkinsBuild
            - EcsRollingDeploy
            - EcsRollingRollback
            - EcsCanaryDeploy
            - EcsCanaryDelete
            - AzureCreateARMResource
            - BuildAndPushACR
            - AzureCreateBPResource
            - AzureARMRollback
            - Background
            - Wait
            - ArtifactSource
            - EcsBlueGreenCreateService
            - EcsBlueGreenSwapTargetGroups
            - EcsBlueGreenRollback
            - ShellScriptProvision
            - Freeze
            - GitOpsUpdateReleaseRepo
            - GitOpsFetchLinkedApps
            - EcsRunTask
            - Chaos
            - ElastigroupDeploy
            - ElastigroupRollback
            - Action
            - ElastigroupSetup
            - Bitrise
            - TerragruntPlan
            - TerragruntApply
            - TerragruntDestroy
            - TerragruntRollback
            - IACMStage
            - IACMStep
            - IACM
            - Container
            - IACMTerraformPlugin
            - IACMApproval
            - ElastigroupBGStageSetup
            - ElastigroupSwapRoute
            - AsgCanaryDeploy
            - AsgCanaryDelete
            - SwapRoutes
            - SwapRollback
            - AppResize
            - AppRollback
            - CanaryAppSetup
            - BGAppSetup
            - BasicAppSetup
            - TanzuCommand
            - AsgRollingDeploy
            - AsgRollingRollback
            - GovernanceRuleAWS
            - TasRollingDeploy
            - TasRollingRollback
            - K8sDryRun
            - AsgBlueGreenSwapService
            - AsgBlueGreenDeploy
            - AsgBlueGreenRollback
            - TerraformCloudRun
            - TerraformCloudRollback
            - DeployCloudFunction
            - DeployCloudFunctionWithNoTraffic
            - CloudFunctionTrafficShift
            - CloudFunctionRollback
            - AwsLambdaDeploy
            - AwsSamDeploy
            - AwsSamRollback
            - SscaOrchestration
            - AwsLambdaRollback
            - GitOpsSync
            - BambooBuild
            - CdSscaOrchestration
            - RouteMapping
            - AWSSecurityHub
            - CustomIngest
            - BackstageEnvironmentVariable
            - Fossa
            - CodeQL
            - Gitleaks
            - DeployCloudFunctionGenOne
            - RollbackCloudFunctionGenOne
            - K8sBlueGreenStageScaleDown
            - AwsSamBuild
            - Semgrep
            - SscaEnforcement
            - IdpConnector
            - CdSscaEnforcement
            - DownloadManifests
            - ServerlessAwsLambdaPrepareRollbackV2
            - ServerlessAwsLambdaRollbackV2
            - Coverity
            - ServerlessAwsLambdaDeployV2
            - AnalyzeDeploymentImpact
            - ServerlessAwsLambdaPackageV2
            - RevertPR
            - AwsCdkBootstrap
            - AwsCdkSynth
            - AwsCdkDiff
            - AwsCdkDeploy
            - AwsCdkDestroy
            - IdpScorecard
            - IdpCheck
            - AwsCdkRollback
            - SlsaVerification
            - UpdateGitOpsApp
            - EcsServiceSetup
            - EcsUpgradeContainer
            - EcsBasicRollback
            - ChaosInfrastructure
            - Anchore
            - Overrides
            - AsgShiftTraffic
            - AquaSecurity
            - IDPStage
            - ChaosHub
            - CookieCutter
            - CreateRepo
            - DownloadAwsS3
            - DirectPush
            - RegisterCatalog
            - K8sTrafficRouting
            - DownloadHarnessStore
            - CreateCatalog
            - SlackNotify
            - OsvScaner
            - IACMOpenTofuPlugin
            - AsgPhasedDeploy
            - AsgSetup
            - AsgRollback
            - Test
            - Wiz
            - Certificates
            - IACMCheckov
            - IACMTFCompliance
            - IACMTFLint
            - IACMTFSec
            - NotificationRule
            - NotificationChannel
            - K8sPatch
            - CreateOrganisation
            - CreateProject
            - DBSchemaApply
            - IACMPrepareExecution
            - DBSchemaRollback
            - K8sRollout
            - CreateResource
            - Checkov
            - ServiceDiscoveryAgent
            - ChaosInfrastructureV2
            - Traceable
            - AzureFunctionDeploy
            - AzureFunctionRollback
            - GoogleCloudRunDeploy
            - GoogleCloudRunPrepareRollbackData
            - GoogleCloudRunTrafficShift
            - GoogleCloudRunRollback
            - GoogleCloudRunJob
            - UpdateCatalogProperty
            - IACMWorkspace
            - IACMModuleTestPlugin
            - CheckmarxOne
            - AsgSteadyState
            - SscaArtifactVerification
            - GitOpsApplication
            - HelmDelete
            - EcsBlueGreenTrafficShift
            - StandAloneTrafficShiftRollback
            - ElastigroupBlueGreenTrafficShift
            - IdpCatalog
            - IACMTerragruntPlugin
            - IACMAnsiblePlugin
            - GitHubAdvancedSecurity
            - AiVerify
            - AIExperiment
            - ModelScan
            - SaveCache
            - RestoreCache
        entityRef:
          $ref: '#/components/schemas/EntityReference'
        name:
          type: string
        entityGitMetadata:
          $ref: '#/components/schemas/EntityGitMetadata'
    EntityGitMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        branchBytes:
          $ref: '#/components/schemas/ByteString'
        repoBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        branch:
          type: string
        repo:
          type: string
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserEntityGitMetadata'
        defaultInstanceForType:
          $ref: '#/components/schemas/EntityGitMetadata'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EntityReference:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        isDefault:
          type: boolean
          writeOnly: true
        default:
          type: boolean
        scope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        branch:
          type: string
        orgIdentifier:
          type: string
        repoIdentifier:
          type: string
        projectIdentifier:
          type: string
        parentUniqueId:
          type: string
        identifier:
          type: string
        accountIdentifier:
          type: string
    EntityReferredByInfraSetupUsageDetail:
      type: object
      allOf:
        - $ref: '#/components/schemas/SetupUsageDetail'
        - type: object
          properties:
            environmentIdentifier:
              type: string
            environmentName:
              type: string
    EntityReferredByOverridesSetupUsageDetail:
      type: object
      allOf:
        - $ref: '#/components/schemas/SetupUsageDetail'
        - type: object
          properties:
            identifier:
              type: string
            overrideType:
              type: string
    EntityReferredByPipelineSetupUsageDetail:
      type: object
      allOf:
        - $ref: '#/components/schemas/SetupUsageDetail'
        - type: object
          properties:
            identifier:
              type: string
            referenceType:
              type: string
    EntitySetupUsage:
      required:
        - referredByEntity
      type: object
      properties:
        accountIdentifier:
          type: string
        referredEntity:
          $ref: '#/components/schemas/EntityDetail'
        referredByEntity:
          $ref: '#/components/schemas/EntityDetail'
        detail:
          $ref: '#/components/schemas/SetupUsageDetail'
        createdAt:
          type: integer
          format: int64
      description: This is the view of the Entity Setup Usage defined in Harness
    PageResponseEntitySetupUsage:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/EntitySetupUsage'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseEntitySetupUsage:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseEntitySetupUsage'
        metaData:
          type: object
        correlationId:
          type: string
    SecretReferredByConnectorSetupUsageDetail:
      type: object
      allOf:
        - $ref: '#/components/schemas/SetupUsageDetail'
        - type: object
          properties:
            fieldName:
              type: string
    SetupUsageDetail:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    ResponseDTOListEntityType:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            type: string
            enum:
              - CreatePR
              - MergePR
              - Projects
              - Pipelines
              - PipelineSteps
              - Http
              - Email
              - JiraCreate
              - JiraUpdate
              - JiraApproval
              - HarnessApproval
              - CustomApproval
              - Barrier
              - Queue
              - FlagConfiguration
              - ShellScript
              - K8sCanaryDeploy
              - K8sApply
              - K8sBlueGreenDeploy
              - K8sRollingDeploy
              - K8sRollingRollback
              - K8sScale
              - K8sDelete
              - K8sBGSwapServices
              - K8sCanaryDelete
              - TerraformApply
              - TerraformPlan
              - TerraformDestroy
              - TerraformRollback
              - HelmDeploy
              - HelmRollback
              - Connectors
              - Secrets
              - Files
              - Service
              - Environment
              - EnvironmentGroup
              - InputSets
              - CvConfig
              - Verify
              - Delegates
              - DelegateConfigurations
              - CvVerificationJob
              - IntegrationStage
              - IntegrationSteps
              - SecurityStage
              - SecuritySteps
              - CvKubernetesActivitySource
              - DeploymentSteps
              - DeploymentStage
              - ApprovalStage
              - PipelineStage
              - FeatureFlagStage
              - Template
              - TemplateStage
              - CustomDeployment
              - Triggers
              - MonitoredService
              - GitRepositories
              - FeatureFlags
              - ServiceNowApproval
              - ServiceNowCreate
              - ServiceNowUpdate
              - ServiceNowImportSet
              - GovernancePolicies
              - Policy
              - Run
              - RunTests
              - Plugin
              - RestoreCacheGCS
              - RestoreCacheS3
              - SaveCacheGCS
              - SaveCacheS3
              - Security
              - AquaTrivy
              - AWSECR
              - Bandit
              - BlackDuck
              - Brakeman
              - Burp
              - Checkmarx
              - Clair
              - DataTheorem
              - DockerContentTrust
              - External
              - FortifyOnDemand
              - Grype
              - JfrogXray
              - Mend
              - Metasploit
              - Nessus
              - NexusIQ
              - Nikto
              - Nmap
              - Openvas
              - Owasp
              - PrismaCloud
              - Prowler
              - Qualys
              - Reapsaw
              - ShiftLeft
              - Sniper
              - Snyk
              - Sonarqube
              - Sysdig
              - Tenable
              - Veracode
              - Zap
              - GitClone
              - ArtifactoryUpload
              - GCSUpload
              - S3Upload
              - BuildAndPushGCR
              - BuildAndPushGAR
              - BuildAndPushECR
              - BuildAndPushDockerRegistry
              - CreateStack
              - DeleteStack
              - ServerlessAwsLambdaDeploy
              - ServerlessAwsLambdaRollback
              - CustomStage
              - RollbackStack
              - Infrastructure
              - Command
              - StrategyNode
              - AzureSlotDeployment
              - AzureTrafficShift
              - FetchInstanceScript
              - AzureSwapSlot
              - AzureWebAppRollback
              - JenkinsBuild
              - EcsRollingDeploy
              - EcsRollingRollback
              - EcsCanaryDeploy
              - EcsCanaryDelete
              - AzureCreateARMResource
              - BuildAndPushACR
              - AzureCreateBPResource
              - AzureARMRollback
              - Background
              - Wait
              - ArtifactSource
              - EcsBlueGreenCreateService
              - EcsBlueGreenSwapTargetGroups
              - EcsBlueGreenRollback
              - ShellScriptProvision
              - Freeze
              - GitOpsUpdateReleaseRepo
              - GitOpsFetchLinkedApps
              - EcsRunTask
              - Chaos
              - ElastigroupDeploy
              - ElastigroupRollback
              - Action
              - ElastigroupSetup
              - Bitrise
              - TerragruntPlan
              - TerragruntApply
              - TerragruntDestroy
              - TerragruntRollback
              - IACMStage
              - IACMStep
              - IACM
              - Container
              - IACMTerraformPlugin
              - IACMApproval
              - ElastigroupBGStageSetup
              - ElastigroupSwapRoute
              - AsgCanaryDeploy
              - AsgCanaryDelete
              - SwapRoutes
              - SwapRollback
              - AppResize
              - AppRollback
              - CanaryAppSetup
              - BGAppSetup
              - BasicAppSetup
              - TanzuCommand
              - AsgRollingDeploy
              - AsgRollingRollback
              - GovernanceRuleAWS
              - TasRollingDeploy
              - TasRollingRollback
              - K8sDryRun
              - AsgBlueGreenSwapService
              - AsgBlueGreenDeploy
              - AsgBlueGreenRollback
              - TerraformCloudRun
              - TerraformCloudRollback
              - DeployCloudFunction
              - DeployCloudFunctionWithNoTraffic
              - CloudFunctionTrafficShift
              - CloudFunctionRollback
              - AwsLambdaDeploy
              - AwsSamDeploy
              - AwsSamRollback
              - SscaOrchestration
              - AwsLambdaRollback
              - GitOpsSync
              - BambooBuild
              - CdSscaOrchestration
              - RouteMapping
              - AWSSecurityHub
              - CustomIngest
              - BackstageEnvironmentVariable
              - Fossa
              - CodeQL
              - Gitleaks
              - DeployCloudFunctionGenOne
              - RollbackCloudFunctionGenOne
              - K8sBlueGreenStageScaleDown
              - AwsSamBuild
              - Semgrep
              - SscaEnforcement
              - IdpConnector
              - CdSscaEnforcement
              - DownloadManifests
              - ServerlessAwsLambdaPrepareRollbackV2
              - ServerlessAwsLambdaRollbackV2
              - Coverity
              - ServerlessAwsLambdaDeployV2
              - AnalyzeDeploymentImpact
              - ServerlessAwsLambdaPackageV2
              - RevertPR
              - AwsCdkBootstrap
              - AwsCdkSynth
              - AwsCdkDiff
              - AwsCdkDeploy
              - AwsCdkDestroy
              - IdpScorecard
              - IdpCheck
              - AwsCdkRollback
              - SlsaVerification
              - UpdateGitOpsApp
              - EcsServiceSetup
              - EcsUpgradeContainer
              - EcsBasicRollback
              - ChaosInfrastructure
              - Anchore
              - Overrides
              - AsgShiftTraffic
              - AquaSecurity
              - IDPStage
              - ChaosHub
              - CookieCutter
              - CreateRepo
              - DownloadAwsS3
              - DirectPush
              - RegisterCatalog
              - K8sTrafficRouting
              - DownloadHarnessStore
              - CreateCatalog
              - SlackNotify
              - OsvScaner
              - IACMOpenTofuPlugin
              - AsgPhasedDeploy
              - AsgSetup
              - AsgRollback
              - Test
              - Wiz
              - Certificates
              - IACMCheckov
              - IACMTFCompliance
              - IACMTFLint
              - IACMTFSec
              - NotificationRule
              - NotificationChannel
              - K8sPatch
              - CreateOrganisation
              - CreateProject
              - DBSchemaApply
              - IACMPrepareExecution
              - DBSchemaRollback
              - K8sRollout
              - CreateResource
              - Checkov
              - ServiceDiscoveryAgent
              - ChaosInfrastructureV2
              - Traceable
              - AzureFunctionDeploy
              - AzureFunctionRollback
              - GoogleCloudRunDeploy
              - GoogleCloudRunPrepareRollbackData
              - GoogleCloudRunTrafficShift
              - GoogleCloudRunRollback
              - GoogleCloudRunJob
              - UpdateCatalogProperty
              - IACMWorkspace
              - IACMModuleTestPlugin
              - CheckmarxOne
              - AsgSteadyState
              - SscaArtifactVerification
              - GitOpsApplication
              - HelmDelete
              - EcsBlueGreenTrafficShift
              - StandAloneTrafficShiftRollback
              - ElastigroupBlueGreenTrafficShift
              - IdpCatalog
              - IACMTerragruntPlugin
              - IACMAnsiblePlugin
              - GitHubAdvancedSecurity
              - AiVerify
              - AIExperiment
              - ModelScan
              - SaveCache
              - RestoreCache
        metaData:
          type: object
        correlationId:
          type: string
    PageFile:
      type: object
      properties:
        totalPages:
          type: integer
          format: int32
        totalElements:
          type: integer
          format: int64
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/File'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        first:
          type: boolean
        pageable:
          $ref: '#/components/schemas/Pageable'
        empty:
          type: boolean
    Pageable:
      type: object
      properties:
        paged:
          type: boolean
        unpaged:
          type: boolean
        offset:
          type: integer
          format: int64
        sort:
          $ref: '#/components/schemas/Sort'
        pageSize:
          type: integer
          format: int32
        pageNumber:
          type: integer
          format: int32
    ResponseDTOPageFile:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageFile'
        metaData:
          type: object
        correlationId:
          type: string
    Sort:
      type: object
      properties:
        unsorted:
          type: boolean
        empty:
          type: boolean
        sorted:
          type: boolean
    FilesFilterPropertiesDTO:
      required:
        - filterType
      type: object
      properties:
        fileUsage:
          type: string
          description: This specifies the file usage
          enum:
            - MANIFEST_FILE
            - CONFIG
            - SCRIPT
        createdBy:
          $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
        referencedBy:
          $ref: '#/components/schemas/ReferencedByDTO'
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
      description: Properties of the Files Filter defined in Harness
    ReferencedByDTO:
      type: object
      properties:
        type:
          type: string
          enum:
            - CreatePR
            - MergePR
            - Projects
            - Pipelines
            - PipelineSteps
            - Http
            - Email
            - JiraCreate
            - JiraUpdate
            - JiraApproval
            - HarnessApproval
            - CustomApproval
            - Barrier
            - Queue
            - FlagConfiguration
            - ShellScript
            - K8sCanaryDeploy
            - K8sApply
            - K8sBlueGreenDeploy
            - K8sRollingDeploy
            - K8sRollingRollback
            - K8sScale
            - K8sDelete
            - K8sBGSwapServices
            - K8sCanaryDelete
            - TerraformApply
            - TerraformPlan
            - TerraformDestroy
            - TerraformRollback
            - HelmDeploy
            - HelmRollback
            - Connectors
            - Secrets
            - Files
            - Service
            - Environment
            - EnvironmentGroup
            - InputSets
            - CvConfig
            - Verify
            - Delegates
            - DelegateConfigurations
            - CvVerificationJob
            - IntegrationStage
            - IntegrationSteps
            - SecurityStage
            - SecuritySteps
            - CvKubernetesActivitySource
            - DeploymentSteps
            - DeploymentStage
            - ApprovalStage
            - PipelineStage
            - FeatureFlagStage
            - Template
            - TemplateStage
            - CustomDeployment
            - Triggers
            - MonitoredService
            - GitRepositories
            - FeatureFlags
            - ServiceNowApproval
            - ServiceNowCreate
            - ServiceNowUpdate
            - ServiceNowImportSet
            - GovernancePolicies
            - Policy
            - Run
            - RunTests
            - Plugin
            - RestoreCacheGCS
            - RestoreCacheS3
            - SaveCacheGCS
            - SaveCacheS3
            - Security
            - AquaTrivy
            - AWSECR
            - Bandit
            - BlackDuck
            - Brakeman
            - Burp
            - Checkmarx
            - Clair
            - DataTheorem
            - DockerContentTrust
            - External
            - FortifyOnDemand
            - Grype
            - JfrogXray
            - Mend
            - Metasploit
            - Nessus
            - NexusIQ
            - Nikto
            - Nmap
            - Openvas
            - Owasp
            - PrismaCloud
            - Prowler
            - Qualys
            - Reapsaw
            - ShiftLeft
            - Sniper
            - Snyk
            - Sonarqube
            - Sysdig
            - Tenable
            - Veracode
            - Zap
            - GitClone
            - ArtifactoryUpload
            - GCSUpload
            - S3Upload
            - BuildAndPushGCR
            - BuildAndPushGAR
            - BuildAndPushECR
            - BuildAndPushDockerRegistry
            - CreateStack
            - DeleteStack
            - ServerlessAwsLambdaDeploy
            - ServerlessAwsLambdaRollback
            - CustomStage
            - RollbackStack
            - Infrastructure
            - Command
            - StrategyNode
            - AzureSlotDeployment
            - AzureTrafficShift
            - FetchInstanceScript
            - AzureSwapSlot
            - AzureWebAppRollback
            - JenkinsBuild
            - EcsRollingDeploy
            - EcsRollingRollback
            - EcsCanaryDeploy
            - EcsCanaryDelete
            - AzureCreateARMResource
            - BuildAndPushACR
            - AzureCreateBPResource
            - AzureARMRollback
            - Background
            - Wait
            - ArtifactSource
            - EcsBlueGreenCreateService
            - EcsBlueGreenSwapTargetGroups
            - EcsBlueGreenRollback
            - ShellScriptProvision
            - Freeze
            - GitOpsUpdateReleaseRepo
            - GitOpsFetchLinkedApps
            - EcsRunTask
            - Chaos
            - ElastigroupDeploy
            - ElastigroupRollback
            - Action
            - ElastigroupSetup
            - Bitrise
            - TerragruntPlan
            - TerragruntApply
            - TerragruntDestroy
            - TerragruntRollback
            - IACMStage
            - IACMStep
            - IACM
            - Container
            - IACMTerraformPlugin
            - IACMApproval
            - ElastigroupBGStageSetup
            - ElastigroupSwapRoute
            - AsgCanaryDeploy
            - AsgCanaryDelete
            - SwapRoutes
            - SwapRollback
            - AppResize
            - AppRollback
            - CanaryAppSetup
            - BGAppSetup
            - BasicAppSetup
            - TanzuCommand
            - AsgRollingDeploy
            - AsgRollingRollback
            - GovernanceRuleAWS
            - TasRollingDeploy
            - TasRollingRollback
            - K8sDryRun
            - AsgBlueGreenSwapService
            - AsgBlueGreenDeploy
            - AsgBlueGreenRollback
            - TerraformCloudRun
            - TerraformCloudRollback
            - DeployCloudFunction
            - DeployCloudFunctionWithNoTraffic
            - CloudFunctionTrafficShift
            - CloudFunctionRollback
            - AwsLambdaDeploy
            - AwsSamDeploy
            - AwsSamRollback
            - SscaOrchestration
            - AwsLambdaRollback
            - GitOpsSync
            - BambooBuild
            - CdSscaOrchestration
            - RouteMapping
            - AWSSecurityHub
            - CustomIngest
            - BackstageEnvironmentVariable
            - Fossa
            - CodeQL
            - Gitleaks
            - DeployCloudFunctionGenOne
            - RollbackCloudFunctionGenOne
            - K8sBlueGreenStageScaleDown
            - AwsSamBuild
            - Semgrep
            - SscaEnforcement
            - IdpConnector
            - CdSscaEnforcement
            - DownloadManifests
            - ServerlessAwsLambdaPrepareRollbackV2
            - ServerlessAwsLambdaRollbackV2
            - Coverity
            - ServerlessAwsLambdaDeployV2
            - AnalyzeDeploymentImpact
            - ServerlessAwsLambdaPackageV2
            - RevertPR
            - AwsCdkBootstrap
            - AwsCdkSynth
            - AwsCdkDiff
            - AwsCdkDeploy
            - AwsCdkDestroy
            - IdpScorecard
            - IdpCheck
            - AwsCdkRollback
            - SlsaVerification
            - UpdateGitOpsApp
            - EcsServiceSetup
            - EcsUpgradeContainer
            - EcsBasicRollback
            - ChaosInfrastructure
            - Anchore
            - Overrides
            - AsgShiftTraffic
            - AquaSecurity
            - IDPStage
            - ChaosHub
            - CookieCutter
            - CreateRepo
            - DownloadAwsS3
            - DirectPush
            - RegisterCatalog
            - K8sTrafficRouting
            - DownloadHarnessStore
            - CreateCatalog
            - SlackNotify
            - OsvScaner
            - IACMOpenTofuPlugin
            - AsgPhasedDeploy
            - AsgSetup
            - AsgRollback
            - Test
            - Wiz
            - Certificates
            - IACMCheckov
            - IACMTFCompliance
            - IACMTFLint
            - IACMTFSec
            - NotificationRule
            - NotificationChannel
            - K8sPatch
            - CreateOrganisation
            - CreateProject
            - DBSchemaApply
            - IACMPrepareExecution
            - DBSchemaRollback
            - K8sRollout
            - CreateResource
            - Checkov
            - ServiceDiscoveryAgent
            - ChaosInfrastructureV2
            - Traceable
            - AzureFunctionDeploy
            - AzureFunctionRollback
            - GoogleCloudRunDeploy
            - GoogleCloudRunPrepareRollbackData
            - GoogleCloudRunTrafficShift
            - GoogleCloudRunRollback
            - GoogleCloudRunJob
            - UpdateCatalogProperty
            - IACMWorkspace
            - IACMModuleTestPlugin
            - CheckmarxOne
            - AsgSteadyState
            - SscaArtifactVerification
            - GitOpsApplication
            - HelmDelete
            - EcsBlueGreenTrafficShift
            - StandAloneTrafficShiftRollback
            - ElastigroupBlueGreenTrafficShift
            - IdpCatalog
            - IACMTerragruntPlugin
            - IACMAnsiblePlugin
            - GitHubAdvancedSecurity
            - AiVerify
            - AIExperiment
            - ModelScan
            - SaveCache
            - RestoreCache
        name:
          type: string
      description: File referenced by other entity
    FileNode:
      required:
        - fileUsage
        - identifier
        - name
        - type
      type: object
      description: This contains file details
      allOf:
        - $ref: '#/components/schemas/FileStoreNode'
        - type: object
          properties:
            fileUsage:
              type: string
              description: File usage of the File Store Node
              enum:
                - MANIFEST_FILE
                - CONFIG
                - SCRIPT
            description:
              type: string
              description: Description of the File Store Node
            tags:
              type: array
              description: Tags of the File Store Node
              items:
                $ref: '#/components/schemas/NGTag'
            mimeType:
              type: string
              description: Mime type of the File Store Node
            content:
              type: string
              description: Content of the file
            size:
              type: integer
              description: The size of the file
              format: int64
    FileStoreNode:
      required:
        - identifier
        - name
        - type
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the File Store Node
        parentIdentifier:
          type: string
          description: Parent identifier of the File Store Node
        name:
          type: string
          description: Name of the File Store Node
        type:
          type: string
          description: Type of the File Store Node
          enum:
            - FILE
            - FOLDER
        path:
          type: string
          description: Path of the file or folder
          readOnly: true
        lastModifiedAt:
          type: integer
          description: Last modified time for the File Store Node
          format: int64
          readOnly: true
        lastModifiedBy:
          $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
      description: This is the view of the file store node entity defined in Harness
    FolderNode:
      required:
        - identifier
        - name
        - type
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the File Store Node
        parentIdentifier:
          type: string
          description: Parent identifier of the File Store Node
        name:
          type: string
          description: Name of the File Store Node
        type:
          type: string
          description: Type of the File Store Node
          enum:
            - FILE
            - FOLDER
        path:
          type: string
          description: Path of the file or folder
          readOnly: true
        lastModifiedAt:
          type: integer
          description: Last modified time for the File Store Node
          format: int64
          readOnly: true
        lastModifiedBy:
          $ref: '#/components/schemas/EmbeddedUserDetailsDTO'
        children:
          type: array
          description: Node children
          items:
            $ref: '#/components/schemas/FileStoreNode'
      description: This contains folder details
    ResponseDTOFolderNode:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FolderNode'
        metaData:
          type: object
        correlationId:
          type: string
    Filter:
      required:
        - filterProperties
        - identifier
        - name
      type: object
      properties:
        name:
          type: string
          description: Name of the Filter.
        identifier:
          type: string
          description: Identifier of the Filter.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        filterProperties:
          $ref: '#/components/schemas/FilterProperties'
        filterVisibility:
          type: string
          description: This indicates visibility of Filter, by default it is Everyone.
          enum:
            - EveryOne
            - OnlyCreator
      description: This has details of the Filter entity defined in Harness
    ResponseDTOFilter:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Filter'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseFilter:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/Filter'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseFilter:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseFilter'
        metaData:
          type: object
        correlationId:
          type: string
    GitBranch:
      required:
        - branchName
        - branchSyncStatus
      type: object
      properties:
        branchName:
          type: string
          description: Name of the branch.
        branchSyncStatus:
          type: string
          description: Sync Status of the Branch
          enum:
            - SYNCED
            - SYNCING
            - UNSYNCED
      description: This contains details of the Git branch
    GitBranchList:
      type: object
      properties:
        defaultBranch:
          $ref: '#/components/schemas/GitBranch'
        branches:
          $ref: '#/components/schemas/PageResponseGitBranch'
      description: This contains details of the default and other branch
    PageResponseGitBranch:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/GitBranch'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
      description: This contains details of all the branches of given repo
    ResponseDTOGitBranchList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GitBranchList'
        metaData:
          type: object
        correlationId:
          type: string
    GitFullSyncConfig:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        baseBranch:
          type: string
          description: Name of the branch from which the new branch will be forked out.
        branch:
          type: string
          description: >-
            Name of the branch. Entities were pushed to this branch, and a pull
            request was made from it.
        prTitle:
          type: string
          description: Title of the pull request.
        createPullRequest:
          type: boolean
          description: Determines if pull request was created.
        repoIdentifier:
          type: string
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
        isNewBranch:
          type: boolean
          writeOnly: true
        targetBranch:
          type: string
          description: Name of the target branch of the pull request.
        rootFolder:
          type: string
          description: Path of the root folder inside which entities were pushed.
        newBranch:
          type: boolean
      description: This has config details specific to Git Full Sync with Harness.
    ResponseDTOGitFullSyncConfig:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GitFullSyncConfig'
        metaData:
          type: object
        correlationId:
          type: string
    GitFullSyncConfigRequest:
      required:
        - branch
        - repoIdentifier
        - rootFolder
      type: object
      properties:
        branch:
          type: string
          description: >-
            Name of the branch to which the entities will be pushed and from
            which pull request will be created.
        repoIdentifier:
          type: string
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
        rootFolder:
          type: string
          description: Path of the root folder inside which the entities will be pushed.
        isNewBranch:
          type: boolean
          writeOnly: true
        baseBranch:
          type: string
          description: Name of the branch from which new branch will be forked out.
        createPullRequest:
          type: boolean
          description: >-
            If true a pull request will be created from branch to target
            branch.Default: false.
        targetBranch:
          type: string
          description: Name of the branch to which pull request will be merged.
        prTitle:
          type: string
          description: Title of the pull request.
        newBranch:
          type: boolean
      description: Details required to trigger Git Full Sync.
    GitFullSyncEntityInfo:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        filePath:
          type: string
          description: File Path of the Entity.
        entityType:
          type: string
          description: Entity Type.
          enum:
            - CreatePR
            - MergePR
            - Projects
            - Pipelines
            - PipelineSteps
            - Http
            - Email
            - JiraCreate
            - JiraUpdate
            - JiraApproval
            - HarnessApproval
            - CustomApproval
            - Barrier
            - Queue
            - FlagConfiguration
            - ShellScript
            - K8sCanaryDeploy
            - K8sApply
            - K8sBlueGreenDeploy
            - K8sRollingDeploy
            - K8sRollingRollback
            - K8sScale
            - K8sDelete
            - K8sBGSwapServices
            - K8sCanaryDelete
            - TerraformApply
            - TerraformPlan
            - TerraformDestroy
            - TerraformRollback
            - HelmDeploy
            - HelmRollback
            - Connectors
            - Secrets
            - Files
            - Service
            - Environment
            - EnvironmentGroup
            - InputSets
            - CvConfig
            - Verify
            - Delegates
            - DelegateConfigurations
            - CvVerificationJob
            - IntegrationStage
            - IntegrationSteps
            - SecurityStage
            - SecuritySteps
            - CvKubernetesActivitySource
            - DeploymentSteps
            - DeploymentStage
            - ApprovalStage
            - PipelineStage
            - FeatureFlagStage
            - Template
            - TemplateStage
            - CustomDeployment
            - Triggers
            - MonitoredService
            - GitRepositories
            - FeatureFlags
            - ServiceNowApproval
            - ServiceNowCreate
            - ServiceNowUpdate
            - ServiceNowImportSet
            - GovernancePolicies
            - Policy
            - Run
            - RunTests
            - Plugin
            - RestoreCacheGCS
            - RestoreCacheS3
            - SaveCacheGCS
            - SaveCacheS3
            - Security
            - AquaTrivy
            - AWSECR
            - Bandit
            - BlackDuck
            - Brakeman
            - Burp
            - Checkmarx
            - Clair
            - DataTheorem
            - DockerContentTrust
            - External
            - FortifyOnDemand
            - Grype
            - JfrogXray
            - Mend
            - Metasploit
            - Nessus
            - NexusIQ
            - Nikto
            - Nmap
            - Openvas
            - Owasp
            - PrismaCloud
            - Prowler
            - Qualys
            - Reapsaw
            - ShiftLeft
            - Sniper
            - Snyk
            - Sonarqube
            - Sysdig
            - Tenable
            - Veracode
            - Zap
            - GitClone
            - ArtifactoryUpload
            - GCSUpload
            - S3Upload
            - BuildAndPushGCR
            - BuildAndPushGAR
            - BuildAndPushECR
            - BuildAndPushDockerRegistry
            - CreateStack
            - DeleteStack
            - ServerlessAwsLambdaDeploy
            - ServerlessAwsLambdaRollback
            - CustomStage
            - RollbackStack
            - Infrastructure
            - Command
            - StrategyNode
            - AzureSlotDeployment
            - AzureTrafficShift
            - FetchInstanceScript
            - AzureSwapSlot
            - AzureWebAppRollback
            - JenkinsBuild
            - EcsRollingDeploy
            - EcsRollingRollback
            - EcsCanaryDeploy
            - EcsCanaryDelete
            - AzureCreateARMResource
            - BuildAndPushACR
            - AzureCreateBPResource
            - AzureARMRollback
            - Background
            - Wait
            - ArtifactSource
            - EcsBlueGreenCreateService
            - EcsBlueGreenSwapTargetGroups
            - EcsBlueGreenRollback
            - ShellScriptProvision
            - Freeze
            - GitOpsUpdateReleaseRepo
            - GitOpsFetchLinkedApps
            - EcsRunTask
            - Chaos
            - ElastigroupDeploy
            - ElastigroupRollback
            - Action
            - ElastigroupSetup
            - Bitrise
            - TerragruntPlan
            - TerragruntApply
            - TerragruntDestroy
            - TerragruntRollback
            - IACMStage
            - IACMStep
            - IACM
            - Container
            - IACMTerraformPlugin
            - IACMApproval
            - ElastigroupBGStageSetup
            - ElastigroupSwapRoute
            - AsgCanaryDeploy
            - AsgCanaryDelete
            - SwapRoutes
            - SwapRollback
            - AppResize
            - AppRollback
            - CanaryAppSetup
            - BGAppSetup
            - BasicAppSetup
            - TanzuCommand
            - AsgRollingDeploy
            - AsgRollingRollback
            - GovernanceRuleAWS
            - TasRollingDeploy
            - TasRollingRollback
            - K8sDryRun
            - AsgBlueGreenSwapService
            - AsgBlueGreenDeploy
            - AsgBlueGreenRollback
            - TerraformCloudRun
            - TerraformCloudRollback
            - DeployCloudFunction
            - DeployCloudFunctionWithNoTraffic
            - CloudFunctionTrafficShift
            - CloudFunctionRollback
            - AwsLambdaDeploy
            - AwsSamDeploy
            - AwsSamRollback
            - SscaOrchestration
            - AwsLambdaRollback
            - GitOpsSync
            - BambooBuild
            - CdSscaOrchestration
            - RouteMapping
            - AWSSecurityHub
            - CustomIngest
            - BackstageEnvironmentVariable
            - Fossa
            - CodeQL
            - Gitleaks
            - DeployCloudFunctionGenOne
            - RollbackCloudFunctionGenOne
            - K8sBlueGreenStageScaleDown
            - AwsSamBuild
            - Semgrep
            - SscaEnforcement
            - IdpConnector
            - CdSscaEnforcement
            - DownloadManifests
            - ServerlessAwsLambdaPrepareRollbackV2
            - ServerlessAwsLambdaRollbackV2
            - Coverity
            - ServerlessAwsLambdaDeployV2
            - AnalyzeDeploymentImpact
            - ServerlessAwsLambdaPackageV2
            - RevertPR
            - AwsCdkBootstrap
            - AwsCdkSynth
            - AwsCdkDiff
            - AwsCdkDeploy
            - AwsCdkDestroy
            - IdpScorecard
            - IdpCheck
            - AwsCdkRollback
            - SlsaVerification
            - UpdateGitOpsApp
            - EcsServiceSetup
            - EcsUpgradeContainer
            - EcsBasicRollback
            - ChaosInfrastructure
            - Anchore
            - Overrides
            - AsgShiftTraffic
            - AquaSecurity
            - IDPStage
            - ChaosHub
            - CookieCutter
            - CreateRepo
            - DownloadAwsS3
            - DirectPush
            - RegisterCatalog
            - K8sTrafficRouting
            - DownloadHarnessStore
            - CreateCatalog
            - SlackNotify
            - OsvScaner
            - IACMOpenTofuPlugin
            - AsgPhasedDeploy
            - AsgSetup
            - AsgRollback
            - Test
            - Wiz
            - Certificates
            - IACMCheckov
            - IACMTFCompliance
            - IACMTFLint
            - IACMTFSec
            - NotificationRule
            - NotificationChannel
            - K8sPatch
            - CreateOrganisation
            - CreateProject
            - DBSchemaApply
            - IACMPrepareExecution
            - DBSchemaRollback
            - K8sRollout
            - CreateResource
            - Checkov
            - ServiceDiscoveryAgent
            - ChaosInfrastructureV2
            - Traceable
            - AzureFunctionDeploy
            - AzureFunctionRollback
            - GoogleCloudRunDeploy
            - GoogleCloudRunPrepareRollbackData
            - GoogleCloudRunTrafficShift
            - GoogleCloudRunRollback
            - GoogleCloudRunJob
            - UpdateCatalogProperty
            - IACMWorkspace
            - IACMModuleTestPlugin
            - CheckmarxOne
            - AsgSteadyState
            - SscaArtifactVerification
            - GitOpsApplication
            - HelmDelete
            - EcsBlueGreenTrafficShift
            - StandAloneTrafficShiftRollback
            - ElastigroupBlueGreenTrafficShift
            - IdpCatalog
            - IACMTerragruntPlugin
            - IACMAnsiblePlugin
            - GitHubAdvancedSecurity
            - AiVerify
            - AIExperiment
            - ModelScan
            - SaveCache
            - RestoreCache
        syncStatus:
          type: string
          description: Sync Status of the Entity that may be QUEUED, SUCCESS or FAILED.
          enum:
            - QUEUED
            - SUCCESS
            - FAILED
            - OVERRIDDEN
        name:
          type: string
          description: Name of the Entity.
        identifier:
          type: string
          description: Identifier of the Entity.
        branch:
          type: string
          description: Name of the branch.
        repoName:
          type: string
          description: Name of the repository.
        repoUrl:
          type: string
          description: URL of the repository.
        rootFolder:
          type: string
          description: >-
            Path to the root folder of the Entity. [Applicable for Old Git Sync
            only]
        retryCount:
          type: integer
          description: This is the number of full sync retry attempts.
          format: int64
        errorMessage:
          type: string
          description: Contains the error details while syncing the entity to Git.
      description: This contains the details of a Git Full Sync Entity with its Sync status
    PageResponseGitFullSyncEntityInfo:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/GitFullSyncEntityInfo'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseGitFullSyncEntityInfo:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseGitFullSyncEntityInfo'
        metaData:
          type: object
        correlationId:
          type: string
    GitFullSyncEntityInfoFilter:
      type: object
      properties:
        entityTypes:
          type: array
          description: List of entity Types to filter on the entities.
          items:
            type: string
            description: List of entity Types to filter on the entities.
            enum:
              - CreatePR
              - MergePR
              - Projects
              - Pipelines
              - PipelineSteps
              - Http
              - Email
              - JiraCreate
              - JiraUpdate
              - JiraApproval
              - HarnessApproval
              - CustomApproval
              - Barrier
              - Queue
              - FlagConfiguration
              - ShellScript
              - K8sCanaryDeploy
              - K8sApply
              - K8sBlueGreenDeploy
              - K8sRollingDeploy
              - K8sRollingRollback
              - K8sScale
              - K8sDelete
              - K8sBGSwapServices
              - K8sCanaryDelete
              - TerraformApply
              - TerraformPlan
              - TerraformDestroy
              - TerraformRollback
              - HelmDeploy
              - HelmRollback
              - Connectors
              - Secrets
              - Files
              - Service
              - Environment
              - EnvironmentGroup
              - InputSets
              - CvConfig
              - Verify
              - Delegates
              - DelegateConfigurations
              - CvVerificationJob
              - IntegrationStage
              - IntegrationSteps
              - SecurityStage
              - SecuritySteps
              - CvKubernetesActivitySource
              - DeploymentSteps
              - DeploymentStage
              - ApprovalStage
              - PipelineStage
              - FeatureFlagStage
              - Template
              - TemplateStage
              - CustomDeployment
              - Triggers
              - MonitoredService
              - GitRepositories
              - FeatureFlags
              - ServiceNowApproval
              - ServiceNowCreate
              - ServiceNowUpdate
              - ServiceNowImportSet
              - GovernancePolicies
              - Policy
              - Run
              - RunTests
              - Plugin
              - RestoreCacheGCS
              - RestoreCacheS3
              - SaveCacheGCS
              - SaveCacheS3
              - Security
              - AquaTrivy
              - AWSECR
              - Bandit
              - BlackDuck
              - Brakeman
              - Burp
              - Checkmarx
              - Clair
              - DataTheorem
              - DockerContentTrust
              - External
              - FortifyOnDemand
              - Grype
              - JfrogXray
              - Mend
              - Metasploit
              - Nessus
              - NexusIQ
              - Nikto
              - Nmap
              - Openvas
              - Owasp
              - PrismaCloud
              - Prowler
              - Qualys
              - Reapsaw
              - ShiftLeft
              - Sniper
              - Snyk
              - Sonarqube
              - Sysdig
              - Tenable
              - Veracode
              - Zap
              - GitClone
              - ArtifactoryUpload
              - GCSUpload
              - S3Upload
              - BuildAndPushGCR
              - BuildAndPushGAR
              - BuildAndPushECR
              - BuildAndPushDockerRegistry
              - CreateStack
              - DeleteStack
              - ServerlessAwsLambdaDeploy
              - ServerlessAwsLambdaRollback
              - CustomStage
              - RollbackStack
              - Infrastructure
              - Command
              - StrategyNode
              - AzureSlotDeployment
              - AzureTrafficShift
              - FetchInstanceScript
              - AzureSwapSlot
              - AzureWebAppRollback
              - JenkinsBuild
              - EcsRollingDeploy
              - EcsRollingRollback
              - EcsCanaryDeploy
              - EcsCanaryDelete
              - AzureCreateARMResource
              - BuildAndPushACR
              - AzureCreateBPResource
              - AzureARMRollback
              - Background
              - Wait
              - ArtifactSource
              - EcsBlueGreenCreateService
              - EcsBlueGreenSwapTargetGroups
              - EcsBlueGreenRollback
              - ShellScriptProvision
              - Freeze
              - GitOpsUpdateReleaseRepo
              - GitOpsFetchLinkedApps
              - EcsRunTask
              - Chaos
              - ElastigroupDeploy
              - ElastigroupRollback
              - Action
              - ElastigroupSetup
              - Bitrise
              - TerragruntPlan
              - TerragruntApply
              - TerragruntDestroy
              - TerragruntRollback
              - IACMStage
              - IACMStep
              - IACM
              - Container
              - IACMTerraformPlugin
              - IACMApproval
              - ElastigroupBGStageSetup
              - ElastigroupSwapRoute
              - AsgCanaryDeploy
              - AsgCanaryDelete
              - SwapRoutes
              - SwapRollback
              - AppResize
              - AppRollback
              - CanaryAppSetup
              - BGAppSetup
              - BasicAppSetup
              - TanzuCommand
              - AsgRollingDeploy
              - AsgRollingRollback
              - GovernanceRuleAWS
              - TasRollingDeploy
              - TasRollingRollback
              - K8sDryRun
              - AsgBlueGreenSwapService
              - AsgBlueGreenDeploy
              - AsgBlueGreenRollback
              - TerraformCloudRun
              - TerraformCloudRollback
              - DeployCloudFunction
              - DeployCloudFunctionWithNoTraffic
              - CloudFunctionTrafficShift
              - CloudFunctionRollback
              - AwsLambdaDeploy
              - AwsSamDeploy
              - AwsSamRollback
              - SscaOrchestration
              - AwsLambdaRollback
              - GitOpsSync
              - BambooBuild
              - CdSscaOrchestration
              - RouteMapping
              - AWSSecurityHub
              - CustomIngest
              - BackstageEnvironmentVariable
              - Fossa
              - CodeQL
              - Gitleaks
              - DeployCloudFunctionGenOne
              - RollbackCloudFunctionGenOne
              - K8sBlueGreenStageScaleDown
              - AwsSamBuild
              - Semgrep
              - SscaEnforcement
              - IdpConnector
              - CdSscaEnforcement
              - DownloadManifests
              - ServerlessAwsLambdaPrepareRollbackV2
              - ServerlessAwsLambdaRollbackV2
              - Coverity
              - ServerlessAwsLambdaDeployV2
              - AnalyzeDeploymentImpact
              - ServerlessAwsLambdaPackageV2
              - RevertPR
              - AwsCdkBootstrap
              - AwsCdkSynth
              - AwsCdkDiff
              - AwsCdkDeploy
              - AwsCdkDestroy
              - IdpScorecard
              - IdpCheck
              - AwsCdkRollback
              - SlsaVerification
              - UpdateGitOpsApp
              - EcsServiceSetup
              - EcsUpgradeContainer
              - EcsBasicRollback
              - ChaosInfrastructure
              - Anchore
              - Overrides
              - AsgShiftTraffic
              - AquaSecurity
              - IDPStage
              - ChaosHub
              - CookieCutter
              - CreateRepo
              - DownloadAwsS3
              - DirectPush
              - RegisterCatalog
              - K8sTrafficRouting
              - DownloadHarnessStore
              - CreateCatalog
              - SlackNotify
              - OsvScaner
              - IACMOpenTofuPlugin
              - AsgPhasedDeploy
              - AsgSetup
              - AsgRollback
              - Test
              - Wiz
              - Certificates
              - IACMCheckov
              - IACMTFCompliance
              - IACMTFLint
              - IACMTFSec
              - NotificationRule
              - NotificationChannel
              - K8sPatch
              - CreateOrganisation
              - CreateProject
              - DBSchemaApply
              - IACMPrepareExecution
              - DBSchemaRollback
              - K8sRollout
              - CreateResource
              - Checkov
              - ServiceDiscoveryAgent
              - ChaosInfrastructureV2
              - Traceable
              - AzureFunctionDeploy
              - AzureFunctionRollback
              - GoogleCloudRunDeploy
              - GoogleCloudRunPrepareRollbackData
              - GoogleCloudRunTrafficShift
              - GoogleCloudRunRollback
              - GoogleCloudRunJob
              - UpdateCatalogProperty
              - IACMWorkspace
              - IACMModuleTestPlugin
              - CheckmarxOne
              - AsgSteadyState
              - SscaArtifactVerification
              - GitOpsApplication
              - HelmDelete
              - EcsBlueGreenTrafficShift
              - StandAloneTrafficShiftRollback
              - ElastigroupBlueGreenTrafficShift
              - IdpCatalog
              - IACMTerragruntPlugin
              - IACMAnsiblePlugin
              - GitHubAdvancedSecurity
              - AiVerify
              - AIExperiment
              - ModelScan
              - SaveCache
              - RestoreCache
        syncStatus:
          type: string
          description: Sync Status of the Entity that may be QUEUED, SUCCESS or FAILED.
          enum:
            - QUEUED
            - SUCCESS
            - FAILED
            - OVERRIDDEN
      description: Filter details for Git Full Sync.
    ResponseDTOTriggerGitFullSyncResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TriggerGitFullSyncResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TriggerGitFullSyncResponse:
      type: object
      properties:
        isFullSyncTriggered:
          type: boolean
          description: Determines if Full Sync is triggered.
      description: This has details to trigger Git Full Sync.
    GitSyncSettings:
      required:
        - executeOnDelegate
        - orgIdentifier
        - projectIdentifier
      type: object
      properties:
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        executeOnDelegate:
          type: boolean
          description: >-
            Specifies Connectivity Mode for Git Sync. If True, executes through
            Delegate, else executes through Platform. The default value is True
        isGitSimplificationEnabled:
          type: boolean
          writeOnly: true
        isEnabledOnlyForFF:
          type: boolean
          writeOnly: true
        gitSimplificationEnabled:
          type: boolean
        enabledOnlyForFF:
          type: boolean
      description: This contains details of Git Sync Settings
    ResponseDTOGitSyncSettings:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GitSyncSettings'
        metaData:
          type: object
        correlationId:
          type: string
    GitSyncConfig:
      required:
        - branch
        - gitConnectorRef
        - gitConnectorType
        - identifier
        - name
        - repo
      type: object
      properties:
        identifier:
          type: string
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
        name:
          type: string
          description: Name of the repository. Any leading/trailing spaces will be removed.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        gitConnectorRef:
          type: string
          description: Id of the Connector referenced in Git
        repo:
          type: string
          description: URL of the repository. Any leading/trailing spaces will be removed.
        branch:
          type: string
          description: Name of the branch. Any leading/trailing spaces will be removed.
        gitConnectorType:
          type: string
          description: Connector Type
          enum:
            - K8sCluster
            - Git
            - Splunk
            - AppDynamics
            - Prometheus
            - OpsGenie
            - Dynatrace
            - Vault
            - AzureKeyVault
            - DockerRegistry
            - Local
            - AwsKms
            - GcpKms
            - AwsSecretManager
            - Gcp
            - Aws
            - Azure
            - Artifactory
            - Jira
            - Nexus
            - Github
            - Gitlab
            - Bitbucket
            - Codecommit
            - CEAws
            - CEAzure
            - GcpCloudCost
            - CEK8sCluster
            - HttpHelmRepo
            - NewRelic
            - Datadog
            - SumoLogic
            - PagerDuty
            - CustomHealth
            - ServiceNow
            - ErrorTracking
            - Pdc
            - AzureRepo
            - Jenkins
            - OciHelmRepo
            - CustomSecretManager
            - ElasticSearch
            - GcpSecretManager
            - AzureArtifacts
            - Tas
            - Spot
            - Bamboo
            - TerraformCloud
            - SignalFX
            - Harness
            - Rancher
            - JDBC
            - Zoom
            - MsTeams
            - Confluence
            - Slack
            - Salesforce
            - LangSmith
            - MLFlow
        gitSyncFolderConfigDTOs:
          type: array
          description: List of all Root Folder Details
          items:
            $ref: '#/components/schemas/GitSyncFolderConfig'
      description: This contains details of Git Sync Config
    GitSyncFolderConfig:
      required:
        - rootFolder
      type: object
      properties:
        rootFolder:
          type: string
          description: Root Folder Name
        isDefault:
          type: boolean
          description: This checks if the folder is the default folder
      description: This contains details of Root Folder
    GitEnabled:
      type: object
      properties:
        isGitSyncEnabled:
          type: boolean
          writeOnly: true
        connectivityMode:
          type: string
          description: This is the Git Sync connectivity mode
          enum:
            - MANAGER
            - DELEGATE
        isGitSimplificationEnabled:
          type: boolean
          writeOnly: true
        isGitSyncEnabledOnlyForFF:
          type: boolean
          writeOnly: true
        gitSimplificationEnabled:
          type: boolean
        gitSyncEnabledOnlyForFF:
          type: boolean
        gitSyncEnabled:
          type: boolean
      description: >-
        This contains details of connectivity mode and whether Git Sync is
        enabled
    GitSyncErrorCount:
      type: object
      properties:
        gitToHarnessErrorCount:
          type: integer
          description: This is the number of Git to Harness errors
          format: int64
        connectivityErrorCount:
          type: integer
          description: This is the number of connectivity errors
          format: int64
      description: This is the total number of Git sync and connectivity errors
    ResponseDTOGitSyncErrorCount:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GitSyncErrorCount'
        metaData:
          type: object
        correlationId:
          type: string
    GitSyncError:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        repoUrl:
          type: string
          description: URL of the repository.
        repoId:
          type: string
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
        branchName:
          type: string
          description: Name of the branch.
        scopes:
          type: array
          description: List of scope of the Git Sync Error
          items:
            $ref: '#/components/schemas/Scope1'
        changeType:
          type: string
          description: Type of operation done in file
          enum:
            - ADD
            - RENAME
            - MODIFY
            - DELETE
            - NONE
            - ADD_V2
            - UPDATE_V2
        completeFilePath:
          type: string
          description: Complete File Path of the Entity
        entityType:
          type: string
          description: Entity Type.
          enum:
            - CreatePR
            - MergePR
            - Projects
            - Pipelines
            - PipelineSteps
            - Http
            - Email
            - JiraCreate
            - JiraUpdate
            - JiraApproval
            - HarnessApproval
            - CustomApproval
            - Barrier
            - Queue
            - FlagConfiguration
            - ShellScript
            - K8sCanaryDeploy
            - K8sApply
            - K8sBlueGreenDeploy
            - K8sRollingDeploy
            - K8sRollingRollback
            - K8sScale
            - K8sDelete
            - K8sBGSwapServices
            - K8sCanaryDelete
            - TerraformApply
            - TerraformPlan
            - TerraformDestroy
            - TerraformRollback
            - HelmDeploy
            - HelmRollback
            - Connectors
            - Secrets
            - Files
            - Service
            - Environment
            - EnvironmentGroup
            - InputSets
            - CvConfig
            - Verify
            - Delegates
            - DelegateConfigurations
            - CvVerificationJob
            - IntegrationStage
            - IntegrationSteps
            - SecurityStage
            - SecuritySteps
            - CvKubernetesActivitySource
            - DeploymentSteps
            - DeploymentStage
            - ApprovalStage
            - PipelineStage
            - FeatureFlagStage
            - Template
            - TemplateStage
            - CustomDeployment
            - Triggers
            - MonitoredService
            - GitRepositories
            - FeatureFlags
            - ServiceNowApproval
            - ServiceNowCreate
            - ServiceNowUpdate
            - ServiceNowImportSet
            - GovernancePolicies
            - Policy
            - Run
            - RunTests
            - Plugin
            - RestoreCacheGCS
            - RestoreCacheS3
            - SaveCacheGCS
            - SaveCacheS3
            - Security
            - AquaTrivy
            - AWSECR
            - Bandit
            - BlackDuck
            - Brakeman
            - Burp
            - Checkmarx
            - Clair
            - DataTheorem
            - DockerContentTrust
            - External
            - FortifyOnDemand
            - Grype
            - JfrogXray
            - Mend
            - Metasploit
            - Nessus
            - NexusIQ
            - Nikto
            - Nmap
            - Openvas
            - Owasp
            - PrismaCloud
            - Prowler
            - Qualys
            - Reapsaw
            - ShiftLeft
            - Sniper
            - Snyk
            - Sonarqube
            - Sysdig
            - Tenable
            - Veracode
            - Zap
            - GitClone
            - ArtifactoryUpload
            - GCSUpload
            - S3Upload
            - BuildAndPushGCR
            - BuildAndPushGAR
            - BuildAndPushECR
            - BuildAndPushDockerRegistry
            - CreateStack
            - DeleteStack
            - ServerlessAwsLambdaDeploy
            - ServerlessAwsLambdaRollback
            - CustomStage
            - RollbackStack
            - Infrastructure
            - Command
            - StrategyNode
            - AzureSlotDeployment
            - AzureTrafficShift
            - FetchInstanceScript
            - AzureSwapSlot
            - AzureWebAppRollback
            - JenkinsBuild
            - EcsRollingDeploy
            - EcsRollingRollback
            - EcsCanaryDeploy
            - EcsCanaryDelete
            - AzureCreateARMResource
            - BuildAndPushACR
            - AzureCreateBPResource
            - AzureARMRollback
            - Background
            - Wait
            - ArtifactSource
            - EcsBlueGreenCreateService
            - EcsBlueGreenSwapTargetGroups
            - EcsBlueGreenRollback
            - ShellScriptProvision
            - Freeze
            - GitOpsUpdateReleaseRepo
            - GitOpsFetchLinkedApps
            - EcsRunTask
            - Chaos
            - ElastigroupDeploy
            - ElastigroupRollback
            - Action
            - ElastigroupSetup
            - Bitrise
            - TerragruntPlan
            - TerragruntApply
            - TerragruntDestroy
            - TerragruntRollback
            - IACMStage
            - IACMStep
            - IACM
            - Container
            - IACMTerraformPlugin
            - IACMApproval
            - ElastigroupBGStageSetup
            - ElastigroupSwapRoute
            - AsgCanaryDeploy
            - AsgCanaryDelete
            - SwapRoutes
            - SwapRollback
            - AppResize
            - AppRollback
            - CanaryAppSetup
            - BGAppSetup
            - BasicAppSetup
            - TanzuCommand
            - AsgRollingDeploy
            - AsgRollingRollback
            - GovernanceRuleAWS
            - TasRollingDeploy
            - TasRollingRollback
            - K8sDryRun
            - AsgBlueGreenSwapService
            - AsgBlueGreenDeploy
            - AsgBlueGreenRollback
            - TerraformCloudRun
            - TerraformCloudRollback
            - DeployCloudFunction
            - DeployCloudFunctionWithNoTraffic
            - CloudFunctionTrafficShift
            - CloudFunctionRollback
            - AwsLambdaDeploy
            - AwsSamDeploy
            - AwsSamRollback
            - SscaOrchestration
            - AwsLambdaRollback
            - GitOpsSync
            - BambooBuild
            - CdSscaOrchestration
            - RouteMapping
            - AWSSecurityHub
            - CustomIngest
            - BackstageEnvironmentVariable
            - Fossa
            - CodeQL
            - Gitleaks
            - DeployCloudFunctionGenOne
            - RollbackCloudFunctionGenOne
            - K8sBlueGreenStageScaleDown
            - AwsSamBuild
            - Semgrep
            - SscaEnforcement
            - IdpConnector
            - CdSscaEnforcement
            - DownloadManifests
            - ServerlessAwsLambdaPrepareRollbackV2
            - ServerlessAwsLambdaRollbackV2
            - Coverity
            - ServerlessAwsLambdaDeployV2
            - AnalyzeDeploymentImpact
            - ServerlessAwsLambdaPackageV2
            - RevertPR
            - AwsCdkBootstrap
            - AwsCdkSynth
            - AwsCdkDiff
            - AwsCdkDeploy
            - AwsCdkDestroy
            - IdpScorecard
            - IdpCheck
            - AwsCdkRollback
            - SlsaVerification
            - UpdateGitOpsApp
            - EcsServiceSetup
            - EcsUpgradeContainer
            - EcsBasicRollback
            - ChaosInfrastructure
            - Anchore
            - Overrides
            - AsgShiftTraffic
            - AquaSecurity
            - IDPStage
            - ChaosHub
            - CookieCutter
            - CreateRepo
            - DownloadAwsS3
            - DirectPush
            - RegisterCatalog
            - K8sTrafficRouting
            - DownloadHarnessStore
            - CreateCatalog
            - SlackNotify
            - OsvScaner
            - IACMOpenTofuPlugin
            - AsgPhasedDeploy
            - AsgSetup
            - AsgRollback
            - Test
            - Wiz
            - Certificates
            - IACMCheckov
            - IACMTFCompliance
            - IACMTFLint
            - IACMTFSec
            - NotificationRule
            - NotificationChannel
            - K8sPatch
            - CreateOrganisation
            - CreateProject
            - DBSchemaApply
            - IACMPrepareExecution
            - DBSchemaRollback
            - K8sRollout
            - CreateResource
            - Checkov
            - ServiceDiscoveryAgent
            - ChaosInfrastructureV2
            - Traceable
            - AzureFunctionDeploy
            - AzureFunctionRollback
            - GoogleCloudRunDeploy
            - GoogleCloudRunPrepareRollbackData
            - GoogleCloudRunTrafficShift
            - GoogleCloudRunRollback
            - GoogleCloudRunJob
            - UpdateCatalogProperty
            - IACMWorkspace
            - IACMModuleTestPlugin
            - CheckmarxOne
            - AsgSteadyState
            - SscaArtifactVerification
            - GitOpsApplication
            - HelmDelete
            - EcsBlueGreenTrafficShift
            - StandAloneTrafficShiftRollback
            - ElastigroupBlueGreenTrafficShift
            - IdpCatalog
            - IACMTerragruntPlugin
            - IACMAnsiblePlugin
            - GitHubAdvancedSecurity
            - AiVerify
            - AIExperiment
            - ModelScan
            - SaveCache
            - RestoreCache
        failureReason:
          type: string
          description: Error Message
        status:
          type: string
          description: Status of Git Sync Error
          enum:
            - ACTIVE
            - DISCARDED
            - EXPIRED
            - RESOLVED
            - OVERRIDDEN
        errorType:
          type: string
          description: Type of Git Sync Error
          enum:
            - GIT_TO_HARNESS
            - CONNECTIVITY_ISSUE
            - FULL_SYNC
        additionalErrorDetails:
          $ref: '#/components/schemas/GitSyncErrorDetails'
        createdAt:
          type: integer
          description: Time at which the Git Sync error was logged
          format: int64
      description: This contains Git Sync Error Details
    GitSyncErrorDetails:
      type: object
      description: This contains Git Sync error details specific to Error Type
    PageResponseGitSyncError:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/GitSyncError'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseGitSyncError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseGitSyncError'
        metaData:
          type: object
        correlationId:
          type: string
    Scope1:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
    GitSyncErrorAggregateByCommit:
      type: object
      properties:
        gitCommitId:
          type: string
          description: Commit Id
        failedCount:
          type: integer
          description: The number of active errors in a commit
          format: int32
        repoId:
          type: string
          description: Git Sync Config Id. [Applicable for Old Git Sync only]
        branchName:
          type: string
          description: Name of the branch.
        commitMessage:
          type: string
          description: Commit Message to use for the merge commit.
        createdAt:
          type: integer
          description: This is the time at which the Git Sync error was logged
          format: int64
        errorsForSummaryView:
          type: array
          description: >-
            This has the list of Git Sync errors corresponding to a specific
            Commit Id
          items:
            $ref: '#/components/schemas/GitSyncError'
      description: This contains a list of Git Sync Error details for a given Commit Id
    PageResponseGitSyncErrorAggregateByCommit:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/GitSyncErrorAggregateByCommit'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseGitSyncErrorAggregateByCommit:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseGitSyncErrorAggregateByCommit'
        metaData:
          type: object
        correlationId:
          type: string
    AdditionalMetadata:
      type: object
      properties:
        values:
          type: object
          additionalProperties:
            type: object
      description: Additional metadata for the secret
    EncryptedDataDetail:
      type: object
      properties:
        encryptedData:
          $ref: '#/components/schemas/EncryptedRecordData'
        encryptionConfig:
          $ref: '#/components/schemas/EncryptionConfig'
        fieldName:
          type: string
        identifier:
          $ref: '#/components/schemas/SecretUniqueIdentifier'
    EncryptedDataParams:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    EncryptedRecordData:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        path:
          type: string
        parameters:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/EncryptedDataParams'
        encryptionKey:
          type: string
        encryptedValue:
          type: array
          items:
            type: string
        kmsId:
          type: string
        encryptionType:
          type: string
          enum:
            - LOCAL
            - KMS
            - GCP_KMS
            - AWS_SECRETS_MANAGER
            - AZURE_VAULT
            - VAULT
            - GCP_SECRETS_MANAGER
            - CUSTOM
            - VAULT_SSH
            - CUSTOM_NG
        backupEncryptedValue:
          type: array
          items:
            type: string
        backupEncryptionKey:
          type: string
        backupKmsId:
          type: string
        backupEncryptionType:
          type: string
          enum:
            - LOCAL
            - KMS
            - GCP_KMS
            - AWS_SECRETS_MANAGER
            - AZURE_VAULT
            - VAULT
            - GCP_SECRETS_MANAGER
            - CUSTOM
            - VAULT_SSH
            - CUSTOM_NG
        base64Encoded:
          type: boolean
        additionalMetadata:
          $ref: '#/components/schemas/AdditionalMetadata'
    EncryptionConfig:
      type: object
      properties:
        accountId:
          type: string
        uuid:
          type: string
        globalKms:
          type: boolean
        encryptionType:
          type: string
          enum:
            - LOCAL
            - KMS
            - GCP_KMS
            - AWS_SECRETS_MANAGER
            - AZURE_VAULT
            - VAULT
            - GCP_SECRETS_MANAGER
            - CUSTOM
            - VAULT_SSH
            - CUSTOM_NG
        numOfEncryptedValue:
          type: integer
          format: int32
        encryptionServiceUrl:
          type: string
        validationCriteria:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
            - KMS
            - VAULT
            - CUSTOM
            - SSH
        default:
          type: boolean
    LdapConnectionSettingsDTO1:
      type: object
      properties:
        host:
          type: string
        port:
          type: integer
          format: int32
        ssl_enabled:
          type: boolean
        referrals_enabled:
          type: boolean
        secret_ref_path:
          type: string
        max_referral_hops:
          type: integer
          format: int32
        connection_timeout:
          type: integer
          format: int32
        response_timeout:
          type: integer
          format: int32
        use_recursive_group_membership_search:
          type: boolean
        bind_d_n:
          type: string
        delegate_selectors:
          type: array
          items:
            type: string
      description: Ldap Connection Settings DTO
    LdapGroupSettingsDTO1:
      type: object
      properties:
        base_d_n:
          type: string
        search_filter:
          type: string
        name_attr:
          type: string
        description_attr:
          type: string
        user_membership_attr:
          type: string
        referenced_user_attr:
          type: string
      description: Ldap Group Settings DTO
    LdapSettingsDTO1:
      required:
        - account_identifier
        - identifier
        - name
      type: object
      properties:
        account_identifier:
          type: string
        identifier:
          type: string
        url:
          type: string
        disabled:
          type: boolean
        name:
          type: string
        cron_expression:
          type: string
        ldap_connection_settings:
          $ref: '#/components/schemas/LdapConnectionSettingsDTO1'
        ldap_user_settings:
          type: array
          items:
            $ref: '#/components/schemas/LdapUserSettingsDTO1'
        ldap_group_settings:
          type: array
          items:
            $ref: '#/components/schemas/LdapGroupSettingsDTO1'
        sso_type:
          type: string
      description: Ldap Settings DTO
    LdapUserSettingsDTO1:
      type: object
      properties:
        base_d_n:
          type: string
        search_filter:
          type: string
        uid_attr:
          type: string
        sam_account_name_attr:
          type: string
        email_attr:
          type: string
        display_name_attr:
          type: string
        group_membership_attr:
          type: string
      description: Ldap User Settings DTO
    NGLdapSettingsWithEncryptedDataDetails:
      required:
        - encryptedDataDetail
        - ldapSettings
      type: object
      properties:
        ldapSettings:
          $ref: '#/components/schemas/LdapSettingsDTO1'
        encryptedDataDetail:
          $ref: '#/components/schemas/EncryptedDataDetail'
    ResponseDTONGLdapSettingsWithEncryptedDataDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NGLdapSettingsWithEncryptedDataDetails'
        metaData:
          type: object
        correlationId:
          type: string
    SecretUniqueIdentifier:
      type: object
      properties:
        kmsId:
          type: string
    LdapResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
        message:
          type: string
    RestResponseLdapResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/LdapResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    LdapGroupResponse:
      required:
        - dn
        - name
      type: object
      properties:
        dn:
          type: string
        name:
          type: string
        description:
          type: string
        totalMembers:
          type: integer
          format: int32
        selectable:
          type: boolean
        message:
          type: string
        users:
          type: array
          items:
            $ref: '#/components/schemas/LdapUserResponse'
    LdapUserResponse:
      required:
        - dn
        - email
        - name
      type: object
      properties:
        dn:
          type: string
        email:
          type: string
        name:
          type: string
        userId:
          type: string
    RestResponseCollectionLdapGroupResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/LdapGroupResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    ReferenceDTO:
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        identifier:
          type: string
        projectIdentifier:
          type: string
        orgIdentifier:
          type: string
        accountIdentifier:
          type: string
        count:
          type: integer
          format: int64
    ResponseDTOServiceInstanceUsageDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceInstanceUsageDTO'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceInstanceUsageDTO:
      type: object
      properties:
        accountIdentifier:
          type: string
        module:
          type: string
        timestamp:
          type: integer
          format: int64
        activeServices:
          $ref: '#/components/schemas/UsageDataDTO'
        activeServiceInstances:
          $ref: '#/components/schemas/UsageDataDTO'
        cdLicenseType:
          type: string
          enum:
            - SERVICES
            - SERVICE_INSTANCES
            - LEGACY_USER
            - DEVELOPER_360
            - CUSTOM
            - NAMED_USER
    UsageDataDTO:
      type: object
      properties:
        count:
          type: integer
          format: int64
        displayName:
          type: string
        references:
          type: array
          items:
            $ref: '#/components/schemas/ReferenceDTO'
    ResponseDTOServiceUsageDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceUsageDTO'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceUsageDTO:
      type: object
      properties:
        accountIdentifier:
          type: string
        module:
          type: string
        timestamp:
          type: integer
          format: int64
        activeServices:
          $ref: '#/components/schemas/UsageDataDTO'
        activeServiceInstances:
          $ref: '#/components/schemas/UsageDataDTO'
        cdLicenseType:
          type: string
          enum:
            - SERVICES
            - SERVICE_INSTANCES
            - LEGACY_USER
            - DEVELOPER_360
            - CUSTOM
            - NAMED_USER
        serviceLicenses:
          $ref: '#/components/schemas/UsageDataDTO'
    LicenseUsage:
      required:
        - className
      type: object
      properties:
        accountIdentifier:
          type: string
        module:
          type: string
        timestamp:
          type: integer
          format: int64
        className:
          type: string
      description: This is the view of a License Usage object defined in Harness
      discriminator:
        propertyName: className
    ResponseDTOLicenseUsage:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/LicenseUsage'
        metaData:
          type: object
        correlationId:
          type: string
    LDAPSettings:
      required:
        - connectionSettings
        - displayName
        - identifier
      type: object
      properties:
        connectionSettings:
          $ref: '#/components/schemas/LdapConnectionSettings'
        identifier:
          type: string
          description: This is the LDAP setting identifier.
        userSettingsList:
          type: array
          description: This is the user settings list in LDAP setting.
          items:
            $ref: '#/components/schemas/LdapUserSettings'
        groupSettingsList:
          type: array
          description: This is the group settings list in LDAP setting.
          items:
            $ref: '#/components/schemas/LdapGroupSettings'
        displayName:
          type: string
          description: This is the LDAP setting display name.
        cronExpression:
          type: string
          description: This is the cron expression in LDAP Settings.
        nextIterations:
          type: array
          description: This is the list of iterations for next LDAP sync job.
          items:
            type: integer
            description: This is the list of iterations for next LDAP sync job.
            format: int64
        disabled:
          type: boolean
          description: >-
            This tells if LDAP Settings is disabled or not, LDAP sync won't
            happen in disabled state.
        settingsType:
          type: string
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
      description: This has the details of LDAP Settings supported in NG.
    LdapConnectionSettings:
      required:
        - host
      type: object
      properties:
        host:
          type: string
        port:
          type: integer
          format: int32
        sslEnabled:
          type: boolean
        referralsEnabled:
          type: boolean
        maxReferralHops:
          minimum: 1
          type: integer
          format: int32
        bindDN:
          type: string
        bindPassword:
          type: string
        passwordType:
          type: string
        bindSecret:
          type: array
          items:
            type: string
        connectTimeout:
          type: integer
          format: int32
        responseTimeout:
          type: integer
          format: int32
        useRecursiveGroupMembershipSearch:
          type: boolean
        delegateSelectors:
          uniqueItems: true
          type: array
          items:
            type: string
        accountId:
          type: string
        settingType:
          type: string
          enum:
            - HOST_CONNECTION_ATTRIBUTES
            - BASTION_HOST_CONNECTION_ATTRIBUTES
            - SMTP
            - SFTP
            - JENKINS
            - BAMBOO
            - STRING
            - SPLUNK
            - ELK
            - LOGZ
            - SUMO
            - DATA_DOG
            - APM_VERIFICATION
            - BUG_SNAG
            - LOG_VERIFICATION
            - APP_DYNAMICS
            - NEW_RELIC
            - DYNA_TRACE
            - INSTANA
            - DATA_DOG_LOG
            - CLOUD_WATCH
            - SCALYR
            - ELB
            - SLACK
            - AWS
            - GCS
            - GCP
            - AZURE
            - PCF
            - RANCHER
            - DIRECT
            - KUBERNETES_CLUSTER
            - DOCKER
            - ECR
            - GCR
            - ACR
            - PHYSICAL_DATA_CENTER
            - KUBERNETES
            - NEXUS
            - ARTIFACTORY
            - SMB
            - AMAZON_S3
            - GIT
            - SSH_SESSION_CONFIG
            - SERVICE_VARIABLE
            - CONFIG_FILE
            - KMS
            - GCP_KMS
            - JIRA
            - SERVICENOW
            - SECRET_TEXT
            - SECRET_FILE
            - YAML_GIT_SYNC
            - VAULT
            - VAULT_SSH
            - AWS_SECRETS_MANAGER
            - WINRM_CONNECTION_ATTRIBUTES
            - WINRM_SESSION_CONFIG
            - PROMETHEUS
            - INFRASTRUCTURE_MAPPING
            - HTTP_HELM_REPO
            - AMAZON_S3_HELM_REPO
            - GCS_HELM_REPO
            - SPOT_INST
            - AZURE_ARTIFACTS_PAT
            - CUSTOM
            - CE_AWS
            - CE_GCP
            - CE_AZURE
            - AZURE_VAULT
            - KUBERNETES_CLUSTER_NG
            - GIT_NG
            - SSO_SAML
            - LDAP
            - GCP_SECRETS_MANAGER
            - TRIGGER
            - OCI_HELM_REPO
            - SALESFORCE
      description: This is the LDAP connection setting.
    LdapGroupSettings:
      required:
        - baseDN
        - descriptionAttr
        - nameAttr
        - referencedUserAttr
        - searchFilter
        - userMembershipAttr
      type: object
      properties:
        baseDN:
          type: string
        searchFilter:
          type: string
        nameAttr:
          type: string
        descriptionAttr:
          type: string
        userMembershipAttr:
          type: string
        referencedUserAttr:
          type: string
      description: This is the group settings list in LDAP setting.
    LdapUserSettings:
      required:
        - baseDN
        - displayNameAttr
        - emailAttr
        - groupMembershipAttr
        - samAccountNameAttr
        - searchFilter
        - uidAttr
      type: object
      properties:
        baseDN:
          type: string
        searchFilter:
          type: string
        uidAttr:
          type: string
        samAccountNameAttr:
          type: string
        emailAttr:
          type: string
        displayNameAttr:
          type: string
        groupMembershipAttr:
          type: string
      description: This is the user settings list in LDAP setting.
    RestResponseLDAPSettings:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/LDAPSettings'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    RestResponseBoolean:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: boolean
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    RestResponseSSOConfig:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/SSOConfig'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    SSOConfig:
      type: object
      properties:
        accountId:
          type: string
        ssoSettings:
          type: array
          items:
            $ref: '#/components/schemas/SSOSettingsDTO'
        authenticationMechanism:
          type: string
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
    SSOSettingsDTO:
      required:
        - displayName
        - type
        - url
      type: object
      properties:
        type:
          type: string
          enum:
            - SAML
            - LDAP
            - OAUTH
            - OIDC
        displayName:
          type: string
        url:
          type: string
        uuid:
          type: string
        nextIterations:
          type: array
          items:
            type: integer
            format: int64
        accountId:
          type: string
      discriminator:
        propertyName: type
    AuthenticationSettingsResponse:
      type: object
      properties:
        ngAuthSettings:
          type: array
          description: List of Auth Settings configured for an Account.
          items:
            $ref: '#/components/schemas/NGAuthSettings'
        whitelistedDomains:
          uniqueItems: true
          type: array
          description: List of the whitelisted domains.
          items:
            type: string
            description: List of the whitelisted domains.
        authenticationMechanism:
          type: string
          description: Indicates if the Authentication Mechanism is SSO or NON-SSO.
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
        twoFactorEnabled:
          type: boolean
          description: >-
            If Two Factor Authentication is enabled, this value is true.
            Otherwise, it is false.
        sessionTimeoutInMinutes:
          type: integer
          description: >-
            Any user of this account will be logged out if there is no activity
            for this number of minutes
          format: int32
        publicAccessEnabled:
          type: boolean
          description: >-
            If public access is enabled, this value is true. Otherwise, it is
            false.
        oauthEnabled:
          type: boolean
          description: If OAUTH is enabled
        absoluteSessionTimeoutInMinutes:
          type: integer
          description: >-
            Any user of this account will be logged out after this number of
            minutes
          format: int32
      description: >-
        This contains information on the Authentication Settings defined in
        Harness.
    NGAuthSettings:
      type: object
      properties:
        settingsType:
          type: string
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
      description: This has the details of Authentication Settings supported in NG.
      discriminator:
        propertyName: settingsType
    RestResponseAuthenticationSettingsResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/AuthenticationSettingsResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    PasswordStrengthPolicy:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            This value is true if the password strength policy is enabled.
            Otherwise, it is false.
        minNumberOfCharacters:
          type: integer
          description: Minimum number of characters required in a password.
          format: int32
        minNumberOfUppercaseCharacters:
          type: integer
          description: Minimum number of uppercase characters required in a password.
          format: int32
        minNumberOfLowercaseCharacters:
          type: integer
          description: Minimum number of lower characters required in a password.
          format: int32
        minNumberOfSpecialCharacters:
          type: integer
          description: Minimum number of special characters required in a password.
          format: int32
        minNumberOfDigits:
          type: integer
          description: Minimum number of digits required in a password.
          format: int32
      description: This has information about the password strength policy in Harness.
    RestResponsePasswordStrengthPolicy:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/PasswordStrengthPolicy'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    LoginTypeResponse:
      type: object
      properties:
        authenticationMechanism:
          type: string
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
        showCaptcha:
          type: boolean
        defaultExperience:
          type: string
          enum:
            - NG
            - CG
        ssorequest:
          $ref: '#/components/schemas/SSORequest'
        oauthEnabled:
          type: boolean
    RestResponseLoginTypeResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/LoginTypeResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    SSORequest:
      type: object
      properties:
        oauthProviderType:
          type: string
          enum:
            - AZURE
            - BITBUCKET
            - GITHUB
            - GITLAB
            - GOOGLE
            - LINKEDIN
        idpRedirectUrl:
          type: string
        oauthProviderTypes:
          type: array
          items:
            type: string
            enum:
              - AZURE
              - BITBUCKET
              - GITHUB
              - GITLAB
              - GOOGLE
              - LINKEDIN
        ssoId:
          type: string
        friendlySamlName:
          type: string
        samlProviderType:
          type: string
          enum:
            - AZURE
            - OKTA
            - ONELOGIN
            - OTHER
    SessionTimeoutSettings:
      required:
        - sessionTimeOutInMinutes
      type: object
      properties:
        sessionTimeOutInMinutes:
          maximum: 4320
          minimum: 30
          type: integer
          description: >-
            Any user of this account will be logged out if there is no activity
            for this number of minutes
          format: int32
        absoluteSessionTimeOutInMinutes:
          maximum: 4320
          type: integer
          description: >-
            Any user of this account will be logged out after this number of
            minutes
          format: int32
      description: >-
        This contains the information about the session timeout for this account
        in Harness.
    TwoFactorAdminOverrideSettings:
      type: object
      properties:
        adminOverrideTwoFactorEnabled:
          type: boolean
          description: >-
            This value is true if Admin Override for Two Factor Authentication
            is enabled. Otherwise, it is false.
      description: >-
        This contains the information about the Two Factor Admin Override in
        Harness.
    OAuthSettings:
      type: object
      properties:
        filter:
          type: string
          description: Filter out the available OAuth providers.
        allowedProviders:
          uniqueItems: true
          type: array
          description: This is the list of OAuth Providers that are supported.
          items:
            type: string
            description: This is the list of OAuth Providers that are supported.
            enum:
              - AZURE
              - BITBUCKET
              - GITHUB
              - GITLAB
              - GOOGLE
              - LINKEDIN
        settingsType:
          type: string
          enum:
            - USER_PASSWORD
            - SAML
            - LDAP
            - OAUTH
            - OIDC
      description: This contains the information about OAuth settings defined in Harness.
    FormDataContentDisposition:
      type: object
      properties:
        type:
          type: string
        parameters:
          type: object
          additionalProperties:
            type: string
        fileName:
          type: string
        creationDate:
          type: string
          format: date-time
        modificationDate:
          type: string
          format: date-time
        readDate:
          type: string
          format: date-time
        size:
          type: integer
          format: int64
        name:
          type: string
    RestResponseSamlSettingsDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/SamlSettingsDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    SamlSettingsDTO:
      required:
        - accountId
        - displayName
        - origin
        - type
        - url
      type: object
      properties:
        type:
          type: string
          enum:
            - SAML
            - LDAP
            - OAUTH
            - OIDC
        displayName:
          type: string
        url:
          type: string
        metaDataFile:
          type: string
        accountId:
          type: string
        origin:
          type: string
        groupMembershipAttr:
          type: string
        logoutUrl:
          type: string
        entityIdentifier:
          type: string
        providerType:
          type: string
          writeOnly: true
          enum:
            - AZURE
            - OKTA
            - ONELOGIN
            - OTHER
        clientId:
          type: string
        clientSecret:
          type: array
          items:
            type: string
        friendlySamlName:
          type: string
        jitEnabled:
          type: boolean
        jitValidationKey:
          type: string
        jitValidationValue:
          type: string
        uuid:
          type: string
        nextIterations:
          type: array
          items:
            type: integer
            format: int64
        samlProviderType:
          type: string
          enum:
            - AZURE
            - OKTA
            - ONELOGIN
            - OTHER
        encryptedClientSecret:
          type: string
        configuredFromNG:
          type: boolean
        authenticationEnabled:
          type: boolean
        authorizationEnabled:
          type: boolean
    AccountSettingConfig:
      type: object
      description: Configuration of the Account Settings.
    AccountSettingResponse:
      type: object
      properties:
        accountSettings:
          $ref: '#/components/schemas/AccountSettings'
        createdAt:
          type: integer
          description: This is the time at which account setting was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which account setting was last modified.
          format: int64
      description: This has the Account Setting details along with its metadata.
    AccountSettings:
      required:
        - accountIdentifier
        - config
        - type
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        config:
          $ref: '#/components/schemas/AccountSettingConfig'
        type:
          type: string
          description: This is the type of resource for which Account Setting is created.
          enum:
            - Connector
      description: This is the view of Account Settings in Harness.
    ConnectorSettings:
      type: object
      allOf:
        - $ref: '#/components/schemas/AccountSettingConfig'
        - type: object
          properties:
            builtInSMDisabled:
              type: boolean
    ResponseDTOAccountSettingResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AccountSettingResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListAccountSettings:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AccountSettings'
        metaData:
          type: object
        correlationId:
          type: string
    AgentMtlsEndpointDetails:
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        fqdn:
          type: string
        caCertificates:
          type: string
        mode:
          type: string
          enum:
            - LOOSE
            - STRICT
    RestResponseAgentMtlsEndpointDetails:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/AgentMtlsEndpointDetails'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    AgentMtlsEndpointRequest:
      type: object
      properties:
        domainPrefix:
          type: string
        caCertificates:
          type: string
        mode:
          type: string
          enum:
            - LOOSE
            - STRICT
    EntityDetailProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        templateRef:
          $ref: '#/components/schemas/TemplateReferenceProtoDTO'
        entityGitMetadata:
          $ref: '#/components/schemas/EntityGitMetadata'
        typeValue:
          type: integer
          format: int32
        identifierRefOrBuilder:
          $ref: '#/components/schemas/IdentifierRefProtoDTOOrBuilder'
        inputSetRefOrBuilder:
          $ref: '#/components/schemas/InputSetReferenceProtoDTOOrBuilder'
        templateRefOrBuilder:
          $ref: '#/components/schemas/TemplateReferenceProtoDTOOrBuilder'
        infraDefRefOrBuilder:
          $ref: '#/components/schemas/InfraDefinitionReferenceProtoDTOOrBuilder'
        triggerRefOrBuilder:
          $ref: '#/components/schemas/TriggerReferenceProtoDTOOrBuilder'
        entityGitMetadataOrBuilder:
          $ref: '#/components/schemas/EntityGitMetadataOrBuilder'
        entityRefCase:
          type: string
          enum:
            - IDENTIFIERREF
            - INPUTSETREF
            - TEMPLATEREF
            - INFRADEFREF
            - TRIGGERREF
            - ENTITYREF_NOT_SET
        inputSetRef:
          $ref: '#/components/schemas/InputSetReferenceProtoDTO'
        infraDefRef:
          $ref: '#/components/schemas/InfraDefinitionReferenceProtoDTO'
        triggerRef:
          $ref: '#/components/schemas/TriggerReferenceProtoDTO'
        name:
          type: string
        type:
          type: string
          enum:
            - PROJECTS
            - PIPELINES
            - CONNECTORS
            - SECRETS
            - SERVICE
            - ENVIRONMENT
            - INPUT_SETS
            - CV_CONFIG
            - DELEGATES
            - DELEGATE_CONFIGURATIONS
            - CV_VERIFICATION_JOB
            - CV_KUBERNETES_ACTIVITY_SOURCE
            - INTEGRATION_STEPS
            - INTEGRATION_STAGE
            - DEPLOYMENT_STAGE
            - DEPLOYMENT_STEPS
            - PIPELINE_STEPS
            - APPROVAL_STAGE
            - TRIGGERS
            - FEATURE_FLAG_STAGE
            - MONITORED_SERVICE
            - TEMPLATE
            - GIT_REPOSITORIES
            - FEATURE_FLAGS
            - HTTP_STEP
            - SHELL_SCRIPT_STEP
            - K8S_CANARY_DEPLOY_STEP
            - JIRA_CREATE_STEP
            - SERVICENOW_APPROVAL_STEP
            - JIRA_UPDATE_STEP
            - JIRA_APPROVAL_STEP
            - HARNESS_APPROVAL_STEP
            - BARRIER_STEP
            - VERIFY_STEP
            - OPAPOLICIES
            - POLICY_STEP
            - ARTIFACTORY_UPLOAD
            - GCS_UPLOAD
            - S3_UPLOAD
            - BUILD_AND_PUSH_GCR
            - BUILD_AND_PUSH_ECR
            - BUILD_AND_PUSH_DOCKER_REGISTRY
            - RUN_STEP
            - RUN_TEST
            - PLUGIN
            - RESTORE_CACHE_GCS
            - RESTORE_CACHE_S3
            - SAVE_CACHE_GCS
            - SAVE_CACHE_S3
            - FLAG_CONFIGURATION
            - SECURITY
            - K8S_APPLY_STEP
            - K8S_BLUE_GREEN_DEPLOY_STEP
            - K8S_ROLLING_DEPLOY_STEP
            - K8S_ROLLING_ROLLBACK_STEP
            - K8S_SCALE_STEP
            - K8S_DELETE_STEP
            - K8S_BG_SWAP_SERVICES_STEP
            - K8S_CANARY_DELETE_STEP
            - TERRAFORM_APPLY_STEP
            - TERRAFORM_PLAN_STEP
            - TERRAFORM_DESTROY_STEP
            - TERRAFORM_ROLLBACK_STEP
            - HELM_DEPLOY_STEP
            - HELM_ROLLBACK_STEP
            - SERVICENOW_CREATE_STEP
            - SERVICENOW_UPDATE_STEP
            - ENVIRONMENT_GROUP
            - SECURITY_STAGE
            - SECURITY_STEPS
            - FILES
            - SERVERLESS_AWS_LAMBDA_DEPLOY_STEP
            - SERVERLESS_AWS_LAMBDA_ROLLBACK_STEP
            - CUSTOM_STAGE
            - CLOUDFORMATION_CREATE_STACK_STEP
            - CLOUDFORMATION_DELETE_STACK_STEP
            - CLOUDFORMATION_ROLLBACK_STACK_STEP
            - INFRASTRUCTURE
            - GITOPS_CREATE_PR
            - COMMAND_STEP
            - STRATEGY_NODE
            - AZURE_SLOT_DEPLOYMENT_STEP
            - AZURE_TRAFFIC_SHIFT_STEP
            - AZURE_SWAP_SLOT_STEP
            - AZURE_WEBAPP_ROLLBACK_STEP
            - GITOPS_MERGE_PR
            - QUEUE_STEP
            - CUSTOM_APPROVAL_STEP
            - JENKINS_BUILD
            - TEMPLATE_STAGE
            - EMAIL_STEP
            - BUILD_AND_PUSH_ACR
            - AZURE_CREATE_ARM_RESOURCE_STEP
            - GIT_CLONE
            - AZURE_CREATE_BP_RESOURCE_STEP
            - AZURE_ROLLBACK_ARM_RESOURCE_STEP
            - BACKGROUND_STEP
            - ECS_ROLLING_DEPLOY_STEP
            - ECS_ROLLING_ROLLBACK_STEP
            - ECS_CANARY_DEPLOY_STEP
            - ECS_CANARY_DELETE_STEP
            - TEMPLATE_CUSTOM_DEPLOYMENT
            - WAIT_STEP
            - ARTIFACT_SOURCE_TEMPLATE
            - ECS_BLUE_GREEN_CREATE_SERVICE_STEP
            - ECS_BLUE_GREEN_SWAP_TARGET_GROUPS_STEP
            - ECS_BLUE_GREEN_ROLLBACK_STEP
            - FETCH_INSTANCE_SCRIPT_STEP
            - PIPELINE_STAGE
            - SHELL_SCRIPT_PROVISION_STEP
            - SERVICENOW_IMPORT_SET_STEP
            - GITOPS_UPDATE_RELEASE_REPO
            - FREEZE
            - ECS_RUN_TASK_STEP
            - CHAOS_STEP
            - ELASTIGROUP_DEPLOY_STEP
            - ELASTIGROUP_ROLLBACK_STEP
            - ACTION_STEP
            - AWS_ECR
            - BANDIT
            - BLACKDUCK
            - BRAKEMAN
            - BURP
            - CHECKMARX
            - CLAIR
            - DATA_THEOREM
            - DOCKER_CONTENT_TRUST
            - EXTERNAL
            - FORTIFY_ON_DEMAND
            - GRYPE
            - JFROG_XRAY
            - MEND
            - METASPLOIT
            - NESSUS
            - NEXUS_IQ
            - NIKTO
            - NMAP
            - OPENVAS
            - OWASP
            - PRISMA_CLOUD
            - PROWLER
            - QUALYS
            - REAPSAW
            - SHIFT_LEFT
            - SNIPER
            - SNYK
            - SONARQUBE
            - SYSDIG
            - TENABLE
            - VERACODE
            - ZAP
            - AQUA_TRIVY
            - ELASTIGROUP_SETUP_STEP
            - BITRISE_STEP
            - GITOPS_FETCH_LINKED_APPS
            - TERRAGRUNT_PLAN_STEP
            - TERRAGRUNT_APPLY_STEP
            - TERRAGRUNT_DESTROY_STEP
            - TERRAGRUNT_ROLLBACK_STEP
            - IACM
            - IACM_STAGE
            - IACM_STEPS
            - CONTAINER_STEP
            - ASG_CANARY_DEPLOY_STEP
            - ELASTIGROUP_BG_STAGE_SETUP_STEP
            - ELASTIGROUP_SWAP_ROUTE_STEP
            - ASG_CANARY_DELETE_STEP
            - TAS_CANARY_APP_SETUP_STEP
            - TAS_BG_APP_SETUP_STEP
            - TAS_BASIC_APP_SETUP_STEP
            - TANZU_COMMAND_STEP
            - IACM_TERRAFORM_PLUGIN
            - TAS_APP_RESIZE_STEP
            - TAS_ROLLBACK_STEP
            - TAS_SWAP_ROUTES_STEP
            - TAS_SWAP_ROLLBACK_STEP
            - ASG_ROLLING_DEPLOY_STEP
            - ASG_ROLLING_ROLLBACK_STEP
            - IACM_APPROVAL
            - CCM_GOVERNANCE_RULE_AWS
            - TAS_ROLLING_DEPLOY
            - TAS_ROLLING_ROLLBACK
            - K8S_DRY_RUN_MANIFEST_STEP
            - ASG_BLUE_GREEN_SWAP_SERVICE_STEP
            - ASG_BLUE_GREEN_DEPLOY_STEP
            - ASG_BLUE_GREEN_ROLLBACK_STEP
            - TERRAFORM_CLOUD_RUN
            - GOOGLE_CLOUD_FUNCTIONS_DEPLOY
            - GOOGLE_CLOUD_FUNCTIONS_DEPLOY_WITHOUT_TRAFFIC
            - GOOGLE_CLOUD_FUNCTIONS_TRAFFIC_SHIFT
            - GOOGLE_CLOUD_FUNCTIONS_ROLLBACK
            - AWS_LAMBDA_DEPLOY
            - TERRAFORM_CLOUD_ROLLBACK
            - AWS_SAM_DEPLOY
            - AWS_SAM_ROLLBACK
            - SSCA_ORCHESTRATION
            - AWS_LAMBDA_ROLLBACK
            - GITOPS_SYNC
            - BAMBOO_BUILD
            - CD_SSCA_ORCHESTRATION
            - TAS_ROUTE_MAPPING
            - AWS_SECURITY_HUB
            - CUSTOM_INGEST
            - BACKSTAGE_ENVIRONMENT_VARIABLE
            - CODEQL
            - FOSSA
            - GIT_LEAKS
            - GOOGLE_CLOUD_FUNCTIONS_GEN_ONE_DEPLOY
            - GOOGLE_CLOUD_FUNCTIONS_GEN_ONE_ROLLBACK
            - K8S_BLUE_GREEN_STAGE_SCALE_DOWN
            - AWS_SAM_BUILD
            - SEMGREP
            - SSCA_ENFORCEMENT
            - IDP_CONNECTOR
            - CD_SSCA_ENFORCEMENT
            - DOWNLOAD_MANIFESTS
            - SERVERLESS_AWS_LAMBDA_PREPARE_ROLLBACK_V2
            - SERVERLESS_AWS_LAMBDA_ROLLBACK_V2
            - COVERITY
            - SERVERLESS_AWS_LAMBDA_DEPLOY_V2
            - ANALYZE_DEPLOYMENT_IMPACT_STEP
            - SERVERLESS_AWS_LAMBDA_PACKAGE_V2
            - GITOPS_REVERT_PR
            - AWS_CDK_BOOTSTRAP
            - AWS_CDK_SYNTH
            - AWS_CDK_DIFF
            - AWS_CDK_DEPLOY
            - AWS_CDK_DESTROY
            - IDP_SCORECARD
            - IDP_CHECK
            - AWS_CDK_ROLLBACK
            - SLSA_VERIFICATION
            - UPDATE_GITOPS_APP
            - ECS_SERVICE_SETUP_STEP
            - ECS_UPGRADE_CONTAINER_STEP
            - ECS_BASIC_ROLLBACK_STEP
            - CHAOS_INFRASTRUCTURE
            - BUILD_AND_PUSH_GAR
            - ANCHORE
            - OVERRIDES
            - ASG_SHIFT_TRAFFIC_STEP
            - AQUA_SECURITY
            - IDP_STAGE
            - CHAOS_HUB
            - COOKIECUTTER
            - CREATE_REPO
            - DOWNLOAD_AWS_S3
            - DIRECT_PUSH
            - REGISTER_CATALOG
            - K8S_TRAFFIC_ROUTING_STEP
            - DOWNLOAD_HARNESS_STORE
            - CREATE_CATALOG
            - SLACK_NOTIFY
            - OSV_SCANNER
            - IACM_OPEN_TOFU_PLUGIN
            - ASG_PHASED_DEPLOY_STEP
            - ASG_SETUP_STEP
            - ASG_ROLLBACK_STEP
            - RUN_TEST_V2
            - WIZ
            - CERTIFICATES
            - IACM_CHECKOV_PLUGIN
            - IACM_TF_COMPLIANCE_PLUGIN
            - IACM_TF_LINT_PLUGIN
            - IACM_TF_SEC_PLUGIN
            - NOTIFICATION_RULE
            - NOTIFICATION_CHANNEL
            - K8S_PATCH_STEP
            - CREATE_ORGANISATION
            - CREATE_PROJECT
            - DB_DEVOPS_APPLY_SCHEMA
            - IACM_PREPARE_EXECUTION
            - DB_DEVOPS_ROLLBACK_SCHEMA
            - K8S_ROLLOUT_STEP
            - CREATE_RESOURCE
            - CHECKOV
            - SERVICE_DISCOVERY_AGENT
            - CHAOS_INFRASTRUCTURE_V2
            - TRACEABLE
            - AZURE_FUNCTION_DEPLOY
            - AZURE_FUNCTION_ROLLBACK
            - GOOGLE_CLOUD_RUN_DEPLOY
            - GOOGLE_CLOUD_RUN_PREPARE_ROLLBACK_DATA
            - GOOGLE_CLOUD_RUN_TRAFFIC_SHIFT
            - GOOGLE_CLOUD_RUN_ROLLBACK
            - GOOGLE_CLOUD_RUN_JOB
            - UPDATE_CATALOG_PROPERTY
            - IACM_WORKSPACE
            - IACM_MODULE_TEST
            - CHECKMARX_ONE
            - ASG_STEADY_STATE_STEP
            - SSCA_ARTIFACT_VERIFICATION
            - GITOPS_APPLICATION
            - HELM_DELETE_STEP
            - ECS_BLUE_GREEN_TRAFFIC_SHIFT_STEP
            - STAND_ALONE_TRAFFIC_SHIFT_ROLLBACK_STEP
            - ELASTIGROUP_BLUE_GREEN_TRAFFIC_SHIFT_STEP
            - IDP_CATALOG
            - IACM_TERRAGRUNT_PLUGIN
            - IACM_ANSIBLE_PLUGIN
            - GITHUB_ADVANCED_SECURITY
            - AI_VERIFY
            - AI_EXPERIMENT
            - MODELSCAN
            - SAVE_CACHE
            - RESTORE_CACHE
            - UNRECOGNIZED
        initialized:
          type: boolean
        identifierRef:
          $ref: '#/components/schemas/IdentifierRefProtoDTO'
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserEntityDetailProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/EntityDetailProtoDTO'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    EntityGitMetadataOrBuilder:
      type: object
      properties:
        branchBytes:
          $ref: '#/components/schemas/ByteString'
        repoBytes:
          $ref: '#/components/schemas/ByteString'
        branch:
          type: string
        repo:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    IdentifierRefProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        scopeValue:
          type: integer
          format: int32
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        initialized:
          type: boolean
        identifier:
          $ref: '#/components/schemas/StringValue'
        scope:
          type: string
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - UNKNOWN
            - UNRECOGNIZED
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserIdentifierRefProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/IdentifierRefProtoDTO'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    IdentifierRefProtoDTOOrBuilder:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        scopeValue:
          type: integer
          format: int32
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifier:
          $ref: '#/components/schemas/StringValue'
        scope:
          type: string
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - UNKNOWN
            - UNRECOGNIZED
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    InfraDefinitionReferenceProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        envIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        envNameOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        envIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        initialized:
          type: boolean
        identifier:
          $ref: '#/components/schemas/StringValue'
        envName:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserInfraDefinitionReferenceProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/InfraDefinitionReferenceProtoDTO'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    InfraDefinitionReferenceProtoDTOOrBuilder:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        envIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        envNameOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        envIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifier:
          $ref: '#/components/schemas/StringValue'
        envName:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    InputSetReferenceProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        pipelineIdentifier:
          $ref: '#/components/schemas/StringValue'
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        pipelineIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        initialized:
          type: boolean
        identifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserInputSetReferenceProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/InputSetReferenceProtoDTO'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    InputSetReferenceProtoDTOOrBuilder:
      type: object
      properties:
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        pipelineIdentifier:
          $ref: '#/components/schemas/StringValue'
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        pipelineIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    ParserEntityDetailProtoDTO:
      type: object
    ParserEntityGitMetadata:
      type: object
    ParserIdentifierRefProtoDTO:
      type: object
    ParserInfraDefinitionReferenceProtoDTO:
      type: object
    ParserInputSetReferenceProtoDTO:
      type: object
    ParserStringValue:
      type: object
    ParserTemplateReferenceProtoDTO:
      type: object
    ParserTriggerReferenceProtoDTO:
      type: object
    ResponseDTOListEntityDetailProtoDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/EntityDetailProtoDTO'
        metaData:
          type: object
        correlationId:
          type: string
    StringValue:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        value:
          type: string
        initialized:
          type: boolean
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserStringValue'
        defaultInstanceForType:
          $ref: '#/components/schemas/StringValue'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    StringValueOrBuilder:
      type: object
      properties:
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        value:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    TemplateReferenceProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        versionLabel:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        versionLabelOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        scopeValue:
          type: integer
          format: int32
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        initialized:
          type: boolean
        identifier:
          $ref: '#/components/schemas/StringValue'
        scope:
          type: string
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - UNKNOWN
            - UNRECOGNIZED
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserTemplateReferenceProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplateReferenceProtoDTO'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TemplateReferenceProtoDTOOrBuilder:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        versionLabel:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        versionLabelOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        scopeValue:
          type: integer
          format: int32
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifier:
          $ref: '#/components/schemas/StringValue'
        scope:
          type: string
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - UNKNOWN
            - UNRECOGNIZED
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    TriggerReferenceProtoDTO:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        pipelineIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        pipelineIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        initialized:
          type: boolean
        identifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        serializedSize:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserTriggerReferenceProtoDTO'
        defaultInstanceForType:
          $ref: '#/components/schemas/TriggerReferenceProtoDTO'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TriggerReferenceProtoDTOOrBuilder:
      type: object
      properties:
        metadata:
          type: object
          additionalProperties:
            type: string
        parentUniqueId:
          $ref: '#/components/schemas/StringValue'
        accountIdentifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifier:
          $ref: '#/components/schemas/StringValue'
        projectIdentifier:
          $ref: '#/components/schemas/StringValue'
        pipelineIdentifier:
          $ref: '#/components/schemas/StringValue'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        accountIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        pipelineIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        parentUniqueIdOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        projectIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        identifier:
          $ref: '#/components/schemas/StringValue'
        orgIdentifierOrBuilder:
          $ref: '#/components/schemas/StringValueOrBuilder'
        metadataCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    CustomDeploymentYamlRequestDTO:
      required:
        - entityYaml
      type: object
      properties:
        entityYaml:
          type: string
    CustomDeploymentVariableProperties:
      required:
        - fqn
        - variableName
      type: object
      properties:
        fqn:
          type: string
        variableName:
          type: string
        localName:
          type: string
        aliasFqn:
          type: string
        visible:
          type: boolean
    CustomDeploymentVariableResponseDTO:
      required:
        - metadataMap
        - yaml
      type: object
      properties:
        yaml:
          type: string
        metadataMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CustomDeploymentVariableProperties'
    ResponseDTOCustomDeploymentVariableResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CustomDeploymentVariableResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    CustomDeploymentRefreshYamlDTO:
      required:
        - refreshedYaml
      type: object
      properties:
        refreshedYaml:
          type: string
    ResponseDTOCustomDeploymentRefreshYamlDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CustomDeploymentRefreshYamlDTO'
        metaData:
          type: object
        correlationId:
          type: string
    CustomDeploymentYamlDTO:
      required:
        - yaml
      type: object
      properties:
        yaml:
          type: string
    CustomDeploymentInfraResponseDTO:
      required:
        - obsolete
      type: object
      properties:
        obsolete:
          type: boolean
    ResponseDTOCustomDeploymentInfraResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CustomDeploymentInfraResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    DelegateDownloadRequest:
      required:
        - name
      type: object
      properties:
        name:
          type: string
        description:
          type: string
        size:
          type: string
          enum:
            - LAPTOP
            - SMALL
            - MEDIUM
            - LARGE
            - CCM_SMALL
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
        tokenName:
          type: string
        clusterPermissionType:
          type: string
          enum:
            - CLUSTER_ADMIN
            - CLUSTER_VIEWER
            - NAMESPACE_ADMIN
        customClusterNamespace:
          type: string
    DelegateGroupDTO:
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        name:
          type: string
        identifier:
          type: string
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
    RestResponseDelegateGroupDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/DelegateGroupDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    DelegateGroupTags:
      type: object
      properties:
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
    RestResponseListDelegateGroupDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/DelegateGroupDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    DelegateDeleteResponse:
      type: object
      properties:
        responseMsg:
          type: string
    RestResponseDelegateDeleteResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/DelegateDeleteResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    DelegateSetupDetails:
      required:
        - delegateType
        - name
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        name:
          type: string
        description:
          type: string
        size:
          type: string
          enum:
            - LAPTOP
            - SMALL
            - MEDIUM
            - LARGE
            - CCM_SMALL
        hostName:
          type: string
        delegateConfigurationId:
          type: string
        identifier:
          type: string
        k8sConfigDetails:
          $ref: '#/components/schemas/K8sConfigDetails'
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
        delegateType:
          type: string
          description: Currently KUBERNETES and HELM_DELEGATE are supported.
        tokenName:
          type: string
        runAsRoot:
          type: boolean
        version:
          type: string
    K8sConfigDetails:
      type: object
      properties:
        k8sPermissionType:
          type: string
          enum:
            - CLUSTER_ADMIN
            - CLUSTER_VIEWER
            - NAMESPACE_ADMIN
        namespace:
          type: string
    RestResponseVersionOverridesResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/VersionOverridesResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    VersionOverrideResponseDTO:
      type: object
      properties:
        version:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        parentUniqueId:
          type: string
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
        validTillNextRelease:
          type: boolean
        validUntil:
          type: string
          format: date-time
    VersionOverridesResponse:
      type: object
      properties:
        versionOverrides:
          type: array
          items:
            $ref: '#/components/schemas/VersionOverrideResponseDTO'
    DelegateListResponse:
      type: object
      properties:
        type:
          type: string
        name:
          type: string
        description:
          type: string
        tags:
          uniqueItems: true
          type: array
          items:
            type: string
        lastHeartBeat:
          type: integer
          format: int64
        connected:
          type: boolean
        delegateReplicas:
          type: array
          items:
            $ref: '#/components/schemas/DelegateReplica'
        autoUpgrade:
          type: string
          enum:
            - 'ON'
            - 'OFF'
            - DETECTING
        legacy:
          type: boolean
        orgName:
          type: string
        projectName:
          type: string
    DelegateReplica:
      type: object
      properties:
        uuid:
          type: string
        lastHeartbeat:
          type: integer
          format: int64
        connected:
          type: boolean
        hostName:
          type: string
        version:
          type: string
        expiringAt:
          type: integer
          format: int64
    RestResponseListDelegateListResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/DelegateListResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    DelegateFilterPropertiesDTO:
      required:
        - filterType
      type: object
      properties:
        status:
          type: string
          description: Filter on delegate connectivity
          enum:
            - CONNECTED
            - DISCONNECTED
            - ENABLED
            - WAITING_FOR_APPROVAL
            - DISABLED
            - DELETED
        description:
          type: string
          description: Filter on delegate description
        hostName:
          type: string
          description: Filter on delegate hostName
        delegateName:
          type: string
          description: Filter on delegate name
        delegateType:
          type: string
          description: Filter on delegate type
        delegateGroupIdentifier:
          type: string
          description: Filter on delegate group id
        delegateTags:
          uniqueItems: true
          type: array
          description: Filter on delegate tags
          items:
            type: string
            description: Filter on delegate tags
        delegateInstanceFilter:
          type: string
          description: Filter on delegate instance status
          enum:
            - EXPIRED
            - AVAILABLE
        autoUpgrade:
          type: string
          description: Filter on delegate auto upgrade
        versionStatus:
          type: string
          description: Filter on delegate version status
          enum:
            - EXPIRED
            - EXPIRING
            - UNSUPPORTED
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
      description: Properties to filter delegates
    RestResponseSupportedDelegateVersion:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/SupportedDelegateVersion'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    SupportedDelegateVersion:
      type: object
      properties:
        latestSupportedVersion:
          type: string
        latestSupportedMinimalVersion:
          type: string
    RestResponseString:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    DelegateTokenDetails:
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        name:
          type: string
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        createdByNgUser:
          $ref: '#/components/schemas/Principal2'
        createdAt:
          type: integer
          format: int64
        status:
          type: string
          enum:
            - ACTIVE
            - REVOKED
        value:
          type: string
          description: >-
            Value of delegate token. This is only populated when fetching
            delegate token by name or the user has edit delegate permission.
        ownerIdentifier:
          type: string
        parentUniqueId:
          type: string
        revokeAfter:
          type: integer
          format: int64
    EmbeddedUser:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        email:
          type: string
        externalUserId:
          type: string
    Principal2:
      required:
        - name
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - USER
            - SERVICE
            - API_KEY
            - SERVICE_ACCOUNT
        name:
          type: string
        jwtclaims:
          type: object
          additionalProperties:
            type: string
      discriminator:
        propertyName: type
    RestResponseDelegateTokenDetails:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/DelegateTokenDetails'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    RestResponseListDelegateTokenDetails:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/DelegateTokenDetails'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    DelegateConnectionDetails:
      type: object
      properties:
        uuid:
          type: string
        version:
          type: string
        lastHeartbeat:
          type: integer
          format: int64
        lastGrpcHeartbeat:
          type: integer
          format: int64
    DelegateGroupDetails:
      type: object
      properties:
        groupId:
          type: string
        delegateGroupIdentifier:
          type: string
        delegateType:
          type: string
        groupName:
          type: string
        delegateDescription:
          type: string
        delegateConfigurationId:
          type: string
        groupImplicitSelectors:
          type: object
          additionalProperties:
            type: string
            enum:
              - PROFILE_NAME
              - DELEGATE_NAME
              - HOST_NAME
              - GROUP_NAME
              - GROUP_SELECTORS
              - PROFILE_SELECTORS
        groupCustomSelectors:
          uniqueItems: true
          type: array
          items:
            type: string
        lastHeartBeat:
          type: integer
          format: int64
        connectivityStatus:
          type: string
        activelyConnected:
          type: boolean
        grpcActive:
          type: boolean
        delegateInstanceDetails:
          type: array
          items:
            $ref: '#/components/schemas/DelegateInner'
        tokenActive:
          type: boolean
        autoUpgrade:
          type: string
          enum:
            - 'ON'
            - 'OFF'
            - DETECTING
        delegateGroupExpirationTime:
          type: integer
          format: int64
        delegateVersion:
          type: string
        upgraderLastUpdated:
          type: integer
          format: int64
        immutable:
          type: boolean
        groupVersion:
          type: string
        isUnsupported:
          type: boolean
          writeOnly: true
        unsupported:
          type: boolean
    DelegateGroupListing:
      type: object
      properties:
        delegateGroupDetails:
          type: array
          items:
            $ref: '#/components/schemas/DelegateGroupDetails'
    DelegateInner:
      type: object
      properties:
        uuid:
          type: string
        lastHeartbeat:
          type: integer
          format: int64
        activelyConnected:
          type: boolean
        hostName:
          type: string
        tokenActive:
          type: boolean
        version:
          type: string
        delegateExpirationTime:
          type: integer
          format: int64
        polllingModeEnabled:
          type: boolean
        connections:
          type: array
          items:
            $ref: '#/components/schemas/DelegateConnectionDetails'
    RestResponseDelegateGroupListing:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/DelegateGroupListing'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    AllowedValuesUsagesInternalDTO:
      type: object
      properties:
        usedIn:
          type: array
          items:
            $ref: '#/components/schemas/EntityListWithAllowedValuesResponse'
        allEntriesChecked:
          type: boolean
      description: >-
        This is the list of all entries in one kind of entity which are using
        the allowedValues
    EntityListWithAllowedValuesResponse:
      type: object
      properties:
        accountId:
          type: string
        projectIdentifier:
          type: string
        orgIdentifier:
          type: string
        identifier:
          type: string
        entityType:
          type: string
        gitDetails:
          $ref: '#/components/schemas/GitDetails2'
      description: This is the list of entities which are using the allowedValues
    GitDetails2:
      type: object
      properties:
        branch:
          type: string
        repoUrl:
          type: string
        filePath:
          type: string
    ResponseDTOAllowedValuesUsagesInternalDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AllowedValuesUsagesInternalDTO'
        metaData:
          type: object
        correlationId:
          type: string
    AllowedValuesUsagesRequestDTO:
      type: object
      properties:
        maxPages:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
      description: >-
        This is the request details for finding the Allowed values usages in the
        entities.
    ResponseDTOEnvironmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    EnvironmentRequest:
      required:
        - type
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the Environment.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        name:
          type: string
          description: Name of the Environment.
        description:
          type: string
          description: Description of the entity
        color:
          type: string
          description: Color of the Environment.
        type:
          type: string
          description: 'Specify the environment type whether production or Preproduction. '
          enum:
            - PreProduction
            - Production
        yaml:
          type: string
          description: Yaml of this entity.
      description: This is the Environment entity defined in Harness
    EnvironmentImportResponseDetails:
      type: object
      properties:
        envIdentifier:
          type: string
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: Details of Imported Environment.
    ResponseDTOEnvironmentImportResponseDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentImportResponseDetails'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListEnvironmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/EnvironmentResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseEnvironmentResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/EnvironmentResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseEnvironmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseEnvironmentResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseServiceOverrideResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ServiceOverrideResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseServiceOverrideResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseServiceOverrideResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceOverrideResponse:
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        environmentRef:
          type: string
        serviceRef:
          type: string
        yaml:
          type: string
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: This is the Service Override Response entity defined in Harness
    EnvironmentMoveConfigResponse:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the successfully moved environment.
        success:
          type: boolean
          description: >-
            Indicates whether the environment move config operation was
            successful (true) or not (false).
      description: Tells us if the environment move config operation was successful or not
    ResponseDTOEnvironmentMoveConfigResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentMoveConfigResponse'
        metaData:
          type: object
        correlationId:
          type: string
    EnvironmentGitUpdateResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of updated environment
      description: Contains info about environment that is updated.
    ResponseDTOEnvironmentGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnvironmentGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOServiceOverrideResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceOverrideResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceOverrideRequest:
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        environmentIdentifier:
          type: string
          description: Environment Identifier for the Entity.
        serviceIdentifier:
          type: string
          description: Service Identifier for the Entity.
        yaml:
          type: string
          description: Yaml for the Service Override entity
      description: This is the Service Override Request entity defined in Harness
    InfrastructureResponse1:
      type: object
      properties:
        infrastructure:
          $ref: '#/components/schemas/InfrastructureResponseDTO'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        entityValidityDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
    InfrastructureResponseDTO:
      type: object
      properties:
        accountId:
          type: string
        identifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        environmentRef:
          type: string
        name:
          type: string
        description:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        type:
          type: string
          enum:
            - KubernetesDirect
            - KubernetesGcp
            - KubernetesAzure
            - Pdc
            - SshWinRmAzure
            - ServerlessAwsLambda
            - AzureWebApp
            - AzureFunction
            - SshWinRmAws
            - CustomDeployment
            - ECS
            - Elastigroup
            - TAS
            - Asg
            - GoogleCloudFunctions
            - AWS_SAM
            - AwsLambda
            - KubernetesAws
            - KubernetesRancher
            - GoogleCloudRun
        deploymentType:
          type: string
          enum:
            - Kubernetes
            - NativeHelm
            - Ssh
            - WinRm
            - ServerlessAwsLambda
            - AzureWebApp
            - AzureFunction
            - CustomDeployment
            - ECS
            - Elastigroup
            - TAS
            - Asg
            - GoogleCloudFunctions
            - AwsLambda
            - AWS_SAM
            - SERVICE_YAML_V1_TYPE
            - GoogleCloudRun
            - Salesforce
        yaml:
          type: string
      description: This is the InfrastructureResponseDTO entity defined in Harness
    ResponseDTOInfrastructureResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InfrastructureResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    InfrastructureRequest:
      required:
        - yaml
      type: object
      properties:
        identifier:
          type: string
          description: identifier of the infrastructure
          deprecated: true
        orgIdentifier:
          type: string
          description: organisation identifier of the infrastructure
          deprecated: true
        projectIdentifier:
          type: string
          description: project identifier of the infrastructure
          deprecated: true
        environmentRef:
          type: string
          description: environment reference of the infrastructure
          deprecated: true
        name:
          type: string
          description: name of the infrastructure
          deprecated: true
        description:
          type: string
          description: description of the infrastructure
          deprecated: true
        tags:
          type: object
          additionalProperties:
            type: string
            description: tags associated with the infrastructure
            deprecated: true
          description: tags associated with the infrastructure
          deprecated: true
        type:
          type: string
          description: type of the infrastructure
          deprecated: true
          enum:
            - KubernetesDirect
            - KubernetesGcp
            - KubernetesAzure
            - Pdc
            - SshWinRmAzure
            - ServerlessAwsLambda
            - AzureWebApp
            - AzureFunction
            - SshWinRmAws
            - CustomDeployment
            - ECS
            - Elastigroup
            - TAS
            - Asg
            - GoogleCloudFunctions
            - AWS_SAM
            - AwsLambda
            - KubernetesAws
            - KubernetesRancher
            - GoogleCloudRun
        yaml:
          type: string
          description: >-
            yaml spec of the infrastructure. Just yaml alone is sufficient to
            create an infrastructure.
      description: This is the InfrastructureRequest entity defined in Harness
    InfrastructureImportResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of imported infrastructure
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: Contains info about infrastructure that is imported.
    ResponseDTOInfrastructureImportResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InfrastructureImportResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseInfrastructureResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/InfrastructureResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseInfrastructureResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseInfrastructureResponse'
        metaData:
          type: object
        correlationId:
          type: string
    InfraMoveConfigResponse:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the successfully moved infrastructure.
        success:
          type: boolean
          description: >-
            Indicates whether the infrastructure move config operation was
            successful (true) or not (false).
      description: Tells us if the infra move config operation was successful or not
    ResponseDTOInfraMoveConfigResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InfraMoveConfigResponse'
        metaData:
          type: object
        correlationId:
          type: string
    InfrastructureGitUpdateResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of updated infrastructure
      description: Contains info about infrastructure that is updated.
    ResponseDTOInfrastructureGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InfrastructureGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Invite:
      required:
        - email
        - inviteType
      type: object
      properties:
        id:
          type: string
          description: Identifier of the Invite.
        name:
          type: string
          description: Name of the Invite.
        email:
          type: string
          description: Email Id associated with the user to be invited.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        roleBindings:
          type: array
          description: Role bindings to be associated with the invited users.
          items:
            $ref: '#/components/schemas/RoleBinding'
        userGroups:
          type: array
          description: List of the userGroups in the invite.
          items:
            type: string
            description: List of the userGroups in the invite.
        inviteType:
          type: string
          description: Specifies the invite type.
          enum:
            - USER_INITIATED_INVITE
            - ADMIN_INITIATED_INVITE
            - SCIM_INITIATED_INVITE
        approved:
          type: boolean
          description: >-
            Specifies whether or not the invite is approved. By default this
            value is set to false.
      description: This is the view of the Invite entity defined in Harness
    ResponseDTOOptionalInvite:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Invite'
        metaData:
          type: object
        correlationId:
          type: string
    RoleBinding:
      type: object
      properties:
        roleIdentifier:
          type: string
        roleName:
          type: string
        roleScopeLevel:
          type: string
        resourceGroupIdentifier:
          type: string
        resourceGroupName:
          type: string
        managedRole:
          type: boolean
    ResponseDTOInvite:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Invite'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseInvite:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/Invite'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseInvite:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseInvite'
        metaData:
          type: object
        correlationId:
          type: string
    ACLAggregateFilter:
      type: object
      properties:
        resourceGroupIdentifiers:
          uniqueItems: true
          type: array
          items:
            type: string
        roleIdentifiers:
          uniqueItems: true
          type: array
          items:
            type: string
    AwsOidcCredentialResponseDto:
      type: object
      properties:
        access_key:
          type: string
        secret_access_key:
          type: string
        session_token:
          type: string
    ResponseDTOAwsOidcCredentialResponseDto:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AwsOidcCredentialResponseDto'
        metaData:
          type: object
        correlationId:
          type: string
    AwsOidcCredentialsRequest:
      required:
        - iamRoleArn
      type: object
      properties:
        oidcIdToken:
          type: string
          description: The OIDC ID Token
        iamRoleArn:
          type: string
          description: IAM Role ARN
        retryPolicy:
          $ref: '#/components/schemas/AwsSdkRetryPolicySpec'
        awsOidcTokenRequestDto:
          $ref: '#/components/schemas/AwsOidcTokenRequest'
      description: This contains Aws OIDC Credentials request details
    AwsOidcTokenRequest:
      type: object
      properties:
        accountId:
          type: string
          description: This specifies the Harness Account Id
        oidcIdTokenCustomAttributesStructure:
          $ref: '#/components/schemas/OidcIdTokenCustomAttributesStructure'
        region:
          type: string
          description: This specifies the Aws region
      description: This contains AWS OIDC Token request details
    AwsSdkBackOffStrategySpec:
      type: object
      description: This contains AWS Sdk BackOff strategy spec
    AwsSdkRetryPolicySpec:
      type: object
      properties:
        backOffStrategyType:
          type: string
        backOffStrategy:
          $ref: '#/components/schemas/AwsSdkBackOffStrategySpec'
      description: Retry policy for aws sdk calls
    OidcIdTokenCustomAttributesStructure:
      required:
        - account_id
      type: object
      properties:
        account_id:
          type: string
        organization_id:
          type: string
        project_id:
          type: string
        pipeline_id:
          type: string
        environment_id:
          type: string
        environment_type:
          type: string
        connector_id:
          type: string
        connector_name:
          type: string
        service_id:
          type: string
        service_name:
          type: string
        triggered_by_name:
          type: string
        trigger_by_email:
          type: string
        stage_type:
          type: string
        step_type:
          type: string
        context:
          type: string
      description: This includes all the ID token custom attributes
    GcpOidcServiceAccountAccessTokenResponse:
      type: object
      properties:
        accessToken:
          type: string
        expireTime:
          type: integer
          format: int64
    ResponseDTOGcpOidcServiceAccountAccessTokenResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GcpOidcServiceAccountAccessTokenResponse'
        metaData:
          type: object
        correlationId:
          type: string
    GcpOidcAccessTokenRequest:
      required:
        - gcpOidcTokenRequestDTO
        - oidcIdToken
      type: object
      properties:
        oidcIdToken:
          type: string
          description: The OIDC ID Token
        gcpOidcTokenRequestDTO:
          $ref: '#/components/schemas/GcpOidcTokenRequest'
      description: This contains GCP OIDC Access Token request details
    GcpOidcTokenRequest:
      required:
        - accountId
        - gcpProjectId
        - providerId
        - workloadPoolId
      type: object
      properties:
        accountId:
          type: string
          description: This specifies the Harness Account Id
        workloadPoolId:
          type: string
          description: This specifies the Workload Pool Id
        providerId:
          type: string
          description: This specifies the OIDC ID Provider
        gcpProjectId:
          type: string
          description: This specifies the GCP Project Id
        serviceAccountEmail:
          type: string
          description: This specifies the GCP Service Account Email
        oidcIdTokenCustomAttributesStructure:
          $ref: '#/components/schemas/OidcIdTokenCustomAttributesStructure'
      description: This contains GCP OIDC Token request details
    AzureOidcCredentialResponseDTO:
      type: object
      properties:
        token_type:
          type: string
        expires_in:
          type: integer
          format: int64
        ext_expires_in:
          type: integer
          format: int64
        access_token:
          type: string
    ResponseDTOAzureOidcCredentialResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AzureOidcCredentialResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    AzureOidcCredentialExchangeRequestDTO:
      required:
        - azureOidcTokenRequestDTO
        - clientId
        - tenantId
      type: object
      properties:
        oidcToken:
          type: string
        tenantId:
          type: string
        clientId:
          type: string
        resource:
          type: string
        azureOidcTokenRequestDTO:
          $ref: '#/components/schemas/AzureOidcTokenRequestDTO'
        retryPolicy:
          type: string
    AzureOidcTokenRequestDTO:
      required:
        - accountId
      type: object
      properties:
        accountId:
          type: string
        tenantId:
          type: string
        clientId:
          type: string
        audience:
          type: string
        subscriptionId:
          type: string
        resourceGroup:
          type: string
        oidcIdTokenCustomAttributesStructure:
          $ref: '#/components/schemas/OidcIdTokenCustomAttributesStructure'
    OidcWorkloadAccessTokenResponse:
      type: object
      properties:
        access_token:
          type: string
        issued_token_type:
          type: string
        token_type:
          type: string
        expires_in:
          type: integer
          format: int32
    ResponseDTOOidcWorkloadAccessTokenResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/OidcWorkloadAccessTokenResponse'
        metaData:
          type: object
        correlationId:
          type: string
    CustomOidcIdTokenRequest:
      required:
        - aud
        - oidcIdTokenCustomAttributesStructure
      type: object
      properties:
        accountId:
          type: string
          description: This specifies the Harness Account Id
        oidcIdTokenCustomAttributesStructure:
          $ref: '#/components/schemas/OidcIdTokenCustomAttributesStructure'
        sub:
          type: string
          description: This overrides the default subject field in ID token
        aud:
          type: string
          description: This specifies the audience field in ID token
      description: This contains custom OIDC Token request details
    JwksPublicKeyDTO:
      type: object
      properties:
        alg:
          type: string
        e:
          type: string
        kid:
          type: string
        kty:
          type: string
        'n':
          type: string
        use:
          type: string
    JwksPublicKeysDTO:
      type: object
      properties:
        keys:
          type: array
          items:
            $ref: '#/components/schemas/JwksPublicKeyDTO'
    OidcConfiguration:
      type: object
      properties:
        issuer:
          type: string
        jwks_uri:
          type: string
        subject_types_supported:
          type: array
          items:
            type: string
        response_types_supported:
          type: array
          items:
            type: string
        claims_supported:
          type: array
          items:
            type: string
        id_token_signing_alg_values_supported:
          type: array
          items:
            type: string
        scopes_supported:
          type: array
          items:
            type: string
    CreateProviderResponse:
      type: object
      properties:
        identifier:
          type: string
    ResponseDTOCreateProviderResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CreateProviderResponse'
        metaData:
          type: object
        correlationId:
          type: string
    BitbucketServerProviderRequestInfo:
      type: object
      allOf:
        - $ref: '#/components/schemas/ProviderRequestInfo'
        - type: object
          properties:
            clientId:
              type: string
            clientSecretRef:
              type: string
    CreateProviderRequestDTO:
      type: object
      properties:
        name:
          type: string
          description: Name of the Provider Request.
        identifier:
          type: string
          description: Identifier of the Provider Request.
        description:
          type: string
          description: Description of the entity
        spec:
          $ref: '#/components/schemas/ProviderRequestInfo'
    GithubEnterpriseProviderRequestInfo:
      type: object
      allOf:
        - $ref: '#/components/schemas/ProviderRequestInfo'
        - type: object
          properties:
            clientId:
              type: string
            clientSecretRef:
              type: string
    GitlabOnPremProviderRequestInfo:
      type: object
      allOf:
        - $ref: '#/components/schemas/ProviderRequestInfo'
        - type: object
          properties:
            clientId:
              type: string
            clientSecretRef:
              type: string
    ProviderRequestInfo:
      required:
        - type
      type: object
      properties:
        domain:
          type: string
        delegateSelectors:
          type: array
          items:
            type: string
        secretManagerRef:
          type: string
        type:
          type: string
      description: Spec of the Provider
      discriminator:
        propertyName: type
    DeleteProviderResponse:
      type: object
      properties:
        successfullyDeleted:
          type: boolean
        identifier:
          type: string
    ResponseDTODeleteProviderResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/DeleteProviderResponse'
        metaData:
          type: object
        correlationId:
          type: string
    GetProviderResponse:
      type: object
      properties:
        accountIdentifier:
          type: string
        name:
          type: string
        description:
          type: string
        identifier:
          type: string
        type:
          type: string
          enum:
            - BITBUCKET_SERVER
            - GITLAB_ON_PREM
            - GITHUB_ENTERPRISE
        lastModifiedAt:
          type: integer
          format: int64
        providerResponseInfo:
          $ref: '#/components/schemas/ProviderResponseInfo'
    ProviderResponseInfo:
      required:
        - type
      type: object
      properties:
        domain:
          type: string
        delegateSelectors:
          type: array
          items:
            type: string
        secretManagerRef:
          type: string
        type:
          type: string
      discriminator:
        propertyName: type
    ResponseDTOGetProviderResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GetProviderResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListGetProviderResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/GetProviderResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOUpdateProviderResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/UpdateProviderResponse'
        metaData:
          type: object
        correlationId:
          type: string
    UpdateProviderResponse:
      type: object
      properties:
        identifier:
          type: string
    UpdateProviderRequestDTO:
      type: object
      properties:
        name:
          type: string
          description: Name of the Provider Request.
        description:
          type: string
          description: Description of the entity
        spec:
          $ref: '#/components/schemas/ProviderRequestInfo'
    ApiKey:
      required:
        - accountIdentifier
        - identifier
        - name
        - parentIdentifier
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the API Key
        name:
          type: string
          description: Name of the API Key
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the API Key
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags for the API Key
          description: Tags for the API Key
        apiKeyType:
          type: string
          description: Type of the API Key
          enum:
            - USER
            - SERVICE_ACCOUNT
            - SSH_KEY
        parentIdentifier:
          type: string
          description: Parent Entity Identifier of the API Key
        defaultTimeToExpireToken:
          type: integer
          description: Default expiration time of the Token within API Key.
          format: int64
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: This has API Key details defined in Harness.
    ResponseDTOApiKey:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ApiKey'
        metaData:
          type: object
        correlationId:
          type: string
    ApiKeyAggregate:
      required:
        - apiKey
        - createdAt
        - lastModifiedAt
      type: object
      properties:
        apiKey:
          $ref: '#/components/schemas/ApiKey'
        createdAt:
          type: integer
          description: This is the time at which API Key was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which API Key was last modified.
          format: int64
        tokensCount:
          type: integer
          description: The number of tokens within an API Key.
          format: int32
      description: This has API Key details and metadata.
    ResponseDTOApiKeyAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ApiKeyAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseApiKeyAggregate:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ApiKeyAggregate'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseApiKeyAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseApiKeyAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListApiKey:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ApiKey'
        metaData:
          type: object
        correlationId:
          type: string
    HostValidationDTO:
      type: object
      properties:
        host:
          type: string
          description: Hostname
        port:
          type: string
          description: Port
        status:
          type: string
          description: This has the validation status for a host.
          enum:
            - SUCCESS
            - FAILED
        error:
          $ref: '#/components/schemas/ErrorDetail'
      description: This has validation details for the host
    ResponseDTOListHostValidationDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/HostValidationDTO'
        metaData:
          type: object
        correlationId:
          type: string
    HostValidationParams:
      required:
        - hosts
      type: object
      properties:
        hosts:
          type: array
          description: Hosts to be validated
          items:
            type: string
            description: Hosts to be validated
        tags:
          type: array
          description: Delegate tags (optional)
          items:
            type: string
            description: Delegate tags (optional)
      description: Host validation parameters, including host names and delegate tags.
    Key:
      required:
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Key
        name:
          type: string
          description: Name of the key
        validTo:
          type: integer
          description: >-
            This is the time till which the key is valid. The time is in
            milliseconds.
          format: int64
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        parentIdentifier:
          type: string
          description: >-
            This is the ID of the Parent entity from which the Token inherits
            its role bindings.
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the key
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags for the key
          description: Tags for the key
        key:
          type: string
          description: Key
        keyUsage:
          type: array
          description: Keys can be used to authenticate or sign
          items:
            type: string
            description: Keys can be used to authenticate or sign
            enum:
              - AUTH
              - SIGN
      description: This has the Key details defined in Harness.
    PageResponseKey:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/Key'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseKey:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseKey'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseHostDTO:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/HostDTO'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseHostDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseHostDTO'
        metaData:
          type: object
        correlationId:
          type: string
    HostFilterDTO:
      type: object
      properties:
        type:
          type: string
          enum:
            - All
            - HostNames
            - HostAttributes
        filter:
          type: string
        matchCriteria:
          type: string
    ResponseDTOSecretManagerMetadataDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SecretManagerMetadataDTO'
        metaData:
          type: object
        correlationId:
          type: string
    SecretManagerMetadataDTO:
      type: object
      properties:
        encryptionType:
          type: string
          enum:
            - LOCAL
            - KMS
            - GCP_KMS
            - AWS_SECRETS_MANAGER
            - AZURE_VAULT
            - VAULT
            - GCP_SECRETS_MANAGER
            - CUSTOM
            - VAULT_SSH
            - CUSTOM_NG
        spec:
          $ref: '#/components/schemas/SecretManagerMetadataSpecDTO'
    SecretManagerMetadataSpecDTO:
      required:
        - encryptionType
      type: object
      properties:
        encryptionType:
          type: string
      discriminator:
        propertyName: encryptionType
    SecretManagerMetadataRequest:
      required:
        - encryptionType
        - identifier
        - spec
      type: object
      properties:
        encryptionType:
          type: string
          description: >-
            This specifies the type of encryption used by the Secret Manager to
            encrypt Secrets.
          enum:
            - LOCAL
            - KMS
            - GCP_KMS
            - AWS_SECRETS_MANAGER
            - AZURE_VAULT
            - VAULT
            - GCP_SECRETS_MANAGER
            - CUSTOM
            - VAULT_SSH
            - CUSTOM_NG
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the SecretManager metadata.
        spec:
          $ref: '#/components/schemas/SecretManagerMetadataRequestSpecDTO'
      description: >-
        This is the view of the SecretManagerMetadataRequest entity defined in
        Harness
    SecretManagerMetadataRequestSpecDTO:
      required:
        - encryptionType
      type: object
      properties:
        encryptionType:
          type: string
      description: Spec of the Secret Manager.
      discriminator:
        propertyName: encryptionType
    BaseSSHSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      description: This is the SSH specification details as defined in Harness.
      discriminator:
        propertyName: type
    BaseWinRmSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      description: This is the WinRm specification details as defined in Harness.
      discriminator:
        propertyName: type
    KerberosConfigDTO:
      required:
        - principal
        - realm
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseSSHSpec'
        - type: object
          properties:
            principal:
              type: string
              description: >-
                This is the authorization role, the user/service has in the
                realm.
            realm:
              type: string
              description: Name of the Realm.
            tgtGenerationMethod:
              type: string
              enum:
                - KeyTabFilePath
                - Password
            spec:
              $ref: '#/components/schemas/TGTGenerationSpecDTO'
    KerberosWinRmConfigDTO:
      required:
        - principal
        - realm
      type: object
      allOf:
        - $ref: '#/components/schemas/BaseWinRmSpec'
        - type: object
          properties:
            principal:
              type: string
              description: >-
                This is the authorization role, the user/service has in the
                realm.
            realm:
              type: string
              description: Name of the Realm.
            tgtGenerationMethod:
              type: string
              enum:
                - KeyTabFilePath
                - Password
            spec:
              $ref: '#/components/schemas/TGTGenerationSpecDTO'
            useSSL:
              type: boolean
              description: This is the Kerberos either to use SSL/https .
            skipCertChecks:
              type: boolean
              description: This is the Kerberos either to skip certificate checks .
            useNoProfile:
              type: boolean
              description: This is the Kerberos powershell runs without loading profile .
    NTLMConfig:
      required:
        - domain
        - password
        - username
      type: object
      description: This is the NTLM configuration details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/BaseWinRmSpec'
        - type: object
          properties:
            domain:
              type: string
              description: This is the NTLM domain name.
            username:
              type: string
              description: This is the NTLM user name.
            useSSL:
              type: boolean
              description: This is the NTLM either to use SSL/https .
            skipCertChecks:
              type: boolean
              description: This is the NTLM either to skip certificate checks .
            useNoProfile:
              type: boolean
              description: This is the NTLM powershell runs without loading profile .
            password:
              type: string
    ResponseDTOSecretResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SecretResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    SSHAuth:
      required:
        - spec
        - type
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/BaseSSHSpec'
        useSshClient:
          type: boolean
        useSshj:
          type: boolean
        type:
          type: string
          description: Specifies authentication scheme, SSH or Kerberos
          enum:
            - SSH
            - Kerberos
      description: This is the SSH Authentication specification defined in Harness.
    SSHConfig:
      required:
        - credentialType
        - spec
      type: object
      description: This is the SSH configuration details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/BaseSSHSpec'
        - type: object
          properties:
            credentialType:
              type: string
              description: >-
                This specifies SSH credential type as Password, KeyPath or
                KeyReference
              enum:
                - Password
                - KeyPath
                - KeyReference
            spec:
              $ref: '#/components/schemas/SSHCredentialSpec'
    SSHCredentialSpec:
      required:
        - credentialType
      type: object
      properties:
        credentialType:
          type: string
      description: This is the SSH credential specification defined in Harness.
      discriminator:
        propertyName: credentialType
    SSHKeyPathCredential:
      required:
        - keyPath
        - userName
      type: object
      description: This is SSH KeyPath credential specification as defined in harness
      allOf:
        - $ref: '#/components/schemas/SSHCredentialSpec'
        - type: object
          properties:
            userName:
              type: string
              description: SSH Username.
            keyPath:
              type: string
              description: Path of the key file.
            encryptedPassphrase:
              type: string
              description: >-
                This is the passphrase provided while creating the SSH key for
                local encryption.
    SSHKeyReferenceCredentialDTO:
      required:
        - key
        - userName
      type: object
      allOf:
        - $ref: '#/components/schemas/SSHCredentialSpec'
        - type: object
          properties:
            userName:
              type: string
            key:
              type: string
            encryptedPassphrase:
              type: string
    SSHKeySpec:
      required:
        - auth
      type: object
      description: This is the SSH key authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec1'
        - type: object
          properties:
            port:
              type: integer
              description: SSH port
              format: int32
            auth:
              $ref: '#/components/schemas/SSHAuth'
    SSHPasswordCredentialDTO:
      required:
        - password
        - userName
      type: object
      allOf:
        - $ref: '#/components/schemas/SSHCredentialSpec'
        - type: object
          properties:
            userName:
              type: string
            password:
              type: string
    Secret1:
      required:
        - identifier
        - name
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          description: This specifies the type of secret
          enum:
            - SecretFile
            - SecretText
            - SSHKey
            - WinRmCredentials
        name:
          type: string
          description: Name of the Secret
        identifier:
          type: string
          description: Identifier of the Secret
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        description:
          type: string
          description: Description of the Secret
        spec:
          $ref: '#/components/schemas/SecretSpec1'
      description: This is details of the secret entity defined in Harness.
    SecretFileSpec1:
      required:
        - secretManagerIdentifier
      type: object
      description: This has details of Secret File defined in harness
      allOf:
        - $ref: '#/components/schemas/SecretSpec1'
        - type: object
          properties:
            secretManagerIdentifier:
              type: string
              description: Identifier of the Secret Manager used to manage the secret.
            additionalMetadata:
              $ref: '#/components/schemas/AdditionalMetadata'
    SecretResponse1:
      required:
        - secret
      type: object
      properties:
        secret:
          $ref: '#/components/schemas/Secret1'
        createdAt:
          type: integer
          description: This is the time at which the Secret was created.
          format: int64
        updatedAt:
          type: integer
          description: This is the time at which the Secret was last updated.
          format: int64
        draft:
          type: boolean
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: This has details of the Secret along with its metadata.
    SecretSpec1:
      required:
        - type
      type: object
      properties:
        errorMessageForInvalidYaml:
          type: string
        type:
          type: string
      description: This has details of the Secret defined in Harness.
      discriminator:
        propertyName: type
    SecretTextSpec1:
      required:
        - secretManagerIdentifier
        - valueType
      type: object
      description: This has details of encrypted text secret.
      allOf:
        - $ref: '#/components/schemas/SecretSpec1'
        - type: object
          properties:
            secretManagerIdentifier:
              type: string
              description: Identifier of the Secret Manager used to manage the secret.
            valueType:
              type: string
              description: >-
                This has details to specify if the secret value is inline or
                referenced.
              enum:
                - Inline
                - Reference
                - CustomSecretManagerValues
            value:
              type: string
              description: Value of the Secret [Required]
            additionalMetadata:
              $ref: '#/components/schemas/AdditionalMetadata'
    TGTGenerationSpecDTO:
      required:
        - tgtGenerationMethod
      type: object
      properties:
        tgtGenerationMethod:
          type: string
      discriminator:
        propertyName: tgtGenerationMethod
    TGTKeyTabFilePathSpecDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/TGTGenerationSpecDTO'
        - type: object
          properties:
            keyPath:
              type: string
    TGTPasswordSpecDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/TGTGenerationSpecDTO'
        - type: object
          properties:
            password:
              type: string
    WinRmAuth:
      required:
        - spec
        - type
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/BaseWinRmSpec'
        type:
          type: string
          description: Specifies authentication scheme, NTLM or Kerberos
          enum:
            - NTLM
            - Kerberos
      description: This is the WinRm Authentication specification defined in Harness.
    WinRmCommandParameter:
      type: object
      properties:
        parameter:
          type: string
        value:
          type: string
    WinRmCredentialsSpec:
      required:
        - auth
      type: object
      description: This is the WinRm authentication details defined in Harness.
      allOf:
        - $ref: '#/components/schemas/SecretSpec1'
        - type: object
          properties:
            port:
              type: integer
              description: WinRm port
              format: int32
            auth:
              $ref: '#/components/schemas/WinRmAuth'
            parameters:
              type: array
              items:
                $ref: '#/components/schemas/WinRmCommandParameter'
    SecretRequestWrapper:
      required:
        - secret
      type: object
      properties:
        secret:
          $ref: '#/components/schemas/Secret1'
    PageResponseSecretResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/SecretResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseSecretResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseSecretResponse'
        metaData:
          type: object
        correlationId:
          type: string
    SecretFilterProperties:
      type: object
      properties:
        secretName:
          type: string
          description: This is the secret name on which the filter will be applied.
        secretIdentifier:
          type: string
          description: This is the secret identifier on which the filter will be applied.
        secretTypes:
          type: array
          description: >-
            This is the list of the ENTITY types on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the ENTITY types on which the filter will be
              applied.
            enum:
              - SecretFile
              - SecretText
              - SSHKey
              - WinRmCredentials
        secretManagerIdentifiers:
          uniqueItems: true
          type: array
          description: secretManagerIdentifiers
          items:
            type: string
            description: secretManagerIdentifiers
        description:
          type: string
          description: Description of filter created.
        searchTerm:
          type: string
          description: Text to search/filter the Entity.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          enum:
            - Secret
      description: Properties of the Secret Filter defined in Harness
    SecretResourceFilter:
      type: object
      properties:
        identifiers:
          type: array
          description: >-
            This is the list of Entity Identifiers on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of Entity Identifiers on which the filter will be
              applied.
        searchTerm:
          type: string
          description: Text to search/filter the Entity.
        secretTypes:
          type: array
          description: >-
            This is the list of the ENTITY types on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the ENTITY types on which the filter will be
              applied.
            enum:
              - SecretFile
              - SecretText
              - SSHKey
              - WinRmCredentials
        sourceCategory:
          type: string
          description: Specifies the connector category.
          enum:
            - CLOUD_PROVIDER
            - SECRET_MANAGER
            - CLOUD_COST
            - ARTIFACTORY
            - CODE_REPO
            - MONITORING
            - TICKETING
            - DATABASE
            - COMMUNICATION
            - DOCUMENTATION
            - ML_OPS
        includeSecretsFromEverySubScope:
          type: boolean
          description: This is true if secrets are filtered at each subsequent scope.
        includeAllSecretsAccessibleAtScope:
          type: boolean
          description: This is true if secrets are filtered from all super scopes.
      description: This has the filter information for the Secret in Harness.
    ResponseDTOSecretValidationResult:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SecretValidationResult'
        metaData:
          type: object
        correlationId:
          type: string
    SecretValidationResult:
      type: object
      properties:
        success:
          type: boolean
          description: >-
            This has the validation status for a secret. It is Success, if
            validation is successful, else the status is Failed.
        message:
          type: string
          description: This is the error message when validation for secret fails.
      description: This has validation details for the Secret defined in Harness.
    SecretValidationMetaData:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - SecretFile
            - SecretText
            - SSHKey
            - WinRmCredentials
      discriminator:
        propertyName: type
    Organization1:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Organization
        name:
          type: string
          description: Name of the Organization
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the Organization.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags for the Organization.
          description: Tags for the Organization.
      description: This has details of the Organization as defined in Harness.
    OrganizationResponse1:
      required:
        - organization
      type: object
      properties:
        organization:
          $ref: '#/components/schemas/Organization1'
        createdAt:
          type: integer
          description: This is the time at which Organization was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which Organization was last modified.
          format: int64
        harnessManaged:
          type: boolean
          description: >-
            This indicates if this Organization is managed by Harness or not. If
            True, Harness can manage and modify this Organization.
      description: This has details of the Organization along with its metadata in Harness.
    ResponseDTOOrganizationResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/OrganizationResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    OrganizationRequest:
      required:
        - organization
      type: object
      properties:
        organization:
          $ref: '#/components/schemas/Organization1'
      description: This contains details of the Organization.
    PageResponseOrganizationResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/OrganizationResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseOrganizationResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseOrganizationResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Project1:
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        identifier:
          type: string
          description: Project Identifier for the Entity.
        name:
          type: string
          description: Project Name for the entity
        color:
          type: string
          description: Color
        modules:
          maxItems: 1024
          minItems: 0
          type: array
          description: List of modules
          items:
            type: string
            description: List of modules
            enum:
              - CD
              - CI
              - CV
              - CF
              - CE
              - STO
              - CHAOS
              - AI_TEST_AUTOMATION
              - SRM
              - IACM
              - CET
              - IDP
              - CODE
              - SSCA
              - CORE
              - PMS
              - TEMPLATESERVICE
              - RMG
              - GOVERNANCE
              - PLATFORM
              - SEI
              - HAR
              - DevopsEssentials
              - FME
              - DBOPS
              - AI_AGENT_MLOPS
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
      description: This is the Project Entity details defined in Harness
    ProjectResponse1:
      required:
        - isFavorite
        - project
      type: object
      properties:
        project:
          $ref: '#/components/schemas/Project1'
        createdAt:
          type: integer
          description: This specifies the time at which project was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This specifies the time at which project was last modified.
          format: int64
        lastMovedAt:
          type: integer
          description: >-
            This specifies the time at which project was last moved across
            scopes.
          format: int64
        isFavorite:
          type: boolean
      description: This has Project details along with its metadata as defined in Harness .
    ResponseDTOProjectResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ProjectResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    ProjectRequest1:
      required:
        - project
      type: object
      properties:
        project:
          $ref: '#/components/schemas/Project1'
    PageResponseProjectResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ProjectResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseProjectResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseProjectResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Token:
      required:
        - apiKeyIdentifier
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Token
        name:
          type: string
          description: Name of the Token
        validFrom:
          type: integer
          description: >-
            This is the time from which the Token is valid. The time is in
            milliseconds.
          format: int64
        validTo:
          type: integer
          description: >-
            This is the time till which the Token is valid. The time is in
            milliseconds.
          format: int64
        scheduledExpireTime:
          type: integer
          description: Scheduled expiry time in milliseconds.
          format: int64
        valid:
          type: boolean
          description: Boolean value to indicate if Token is valid or not.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        apiKeyIdentifier:
          type: string
          description: This is the API Key Id within which the Token is created.
        parentIdentifier:
          type: string
          description: >-
            This is the ID of the Parent entity from which the Token inherits
            its role bindings.
        apiKeyType:
          type: string
          description: Type of the API Key
          enum:
            - USER
            - SERVICE_ACCOUNT
            - SSH_KEY
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the Token
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags for the Token
          description: Tags for the Token
        sshKeyContent:
          type: string
          description: >-
            SSH key content from a public key, this is only present if API_KEY
            Type is SSH_KEY
        sshKeyUsage:
          type: array
          description: 'SSH key Usage: SSH keys can be used to authenticate or sign'
          items:
            type: string
            description: 'SSH key Usage: SSH keys can be used to authenticate or sign'
            enum:
              - AUTH
              - SIGN
      description: This has the API Key Token details defined in Harness.
    PageResponseTokenAggregate:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/TokenAggregate'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseTokenAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseTokenAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    TokenAggregate:
      required:
        - createdAt
        - expiryAt
        - lastModifiedAt
        - token
      type: object
      properties:
        token:
          $ref: '#/components/schemas/Token'
        expiryAt:
          type: integer
          description: Expiry time of the Token.
          format: int64
        createdAt:
          type: integer
          description: This is the time at which Token was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which Token was last modified.
          format: int64
      description: This has token details and metadata.
    ResponseDTOToken:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Token'
        metaData:
          type: object
        correlationId:
          type: string
    EmailConfigDTO:
      required:
        - groupEmail
        - sendEmailToAllUsers
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        - type: object
          properties:
            groupEmail:
              type: string
            sendEmailToAllUsers:
              type: boolean
    MicrosoftTeamsConfigDTO:
      required:
        - microsoftTeamsWebhookUrl
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        - type: object
          properties:
            microsoftTeamsWebhookUrl:
              type: string
    NotificationSettingConfigDTO1:
      type: object
      properties:
        type:
          type: string
          enum:
            - EMAIL
            - SLACK
            - PAGERDUTY
            - MSTEAMS
            - WEBHOOK
            - DATADOG
      description: List of notification settings.
      discriminator:
        propertyName: type
    PagerDutyConfigDTO:
      required:
        - pagerDutyKey
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        - type: object
          properties:
            pagerDutyKey:
              type: string
    ResponseDTOUserGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/UserGroup'
        metaData:
          type: object
        correlationId:
          type: string
    SlackConfigDTO:
      required:
        - slackWebhookUrl
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        - type: object
          properties:
            slackWebhookUrl:
              type: string
    UserGroup:
      required:
        - identifier
        - name
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the UserGroup.
        name:
          type: string
          description: Name of the UserGroup.
        users:
          type: array
          description: List of users ids in the UserGroup.
          items:
            type: string
            description: List of users ids in the UserGroup.
        notificationConfigs:
          type: array
          description: List of notification settings.
          items:
            $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        isSsoLinked:
          type: boolean
          writeOnly: true
        linkedSsoId:
          type: string
          description: Identifier of the linked SSO.
        linkedSsoDisplayName:
          type: string
          description: Name of the linked SSO.
        ssoGroupId:
          type: string
          description: Identifier of the userGroup in SSO.
        ssoGroupName:
          type: string
          description: Name of the SSO userGroup.
        linkedSsoType:
          type: string
          description: Type of linked SSO
        externallyManaged:
          type: boolean
          description: Specifies whether or not the userGroup is externally managed.
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the entity
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        harnessManaged:
          type: boolean
          description: Specifies whether or not the userGroup is managed by harness.
        ssoLinked:
          type: boolean
      description: User Group details defined in Harness.
    ResponseDTOListScopeName:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ScopeName'
        metaData:
          type: object
        correlationId:
          type: string
    ScopeName:
      type: object
      properties:
        accountIdentifier:
          type: string
        orgName:
          type: string
        orgIdentifier:
          type: string
        projectName:
          type: string
        projectIdentifier:
          type: string
    PageResponseUserMetadata:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/UserMetadata'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseUserMetadata:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseUserMetadata'
        metaData:
          type: object
        correlationId:
          type: string
    UserMetadata:
      required:
        - disabled
        - email
        - externallyManaged
        - locked
        - uuid
      type: object
      properties:
        name:
          type: string
        email:
          type: string
        uuid:
          type: string
        locked:
          type: boolean
        disabled:
          type: boolean
        externallyManaged:
          type: boolean
        twoFactorAuthenticationEnabled:
          type: boolean
      description: This is the view of the UserMetadata entity defined in Harness
    UserFilter:
      type: object
      properties:
        searchTerm:
          type: string
          description: >-
            This string will be used to filter the results. Details of all the
            users having this string in their name or email address will be
            filtered.
        identifiers:
          uniqueItems: true
          type: array
          description: Filter by User Identifiers
          items:
            type: string
            description: Filter by User Identifiers
        emails:
          uniqueItems: true
          type: array
          description: Filter by User Emails
          items:
            type: string
            description: Filter by User Emails
        parentFilter:
          type: string
          enum:
            - NO_PARENT_SCOPES
            - INCLUDE_PARENT_SCOPES
            - STRICTLY_PARENT_SCOPES
    NotificationSettingConfig:
      required:
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - EMAIL
            - SLACK
            - PAGERDUTY
            - MSTEAMS
            - WEBHOOK
            - DATADOG
      discriminator:
        propertyName: type
    RestResponseUserGroup:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/UserGroup'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    LdapLinkGroupRequest:
      required:
        - ldapGroupDN
        - ldapGroupName
      type: object
      properties:
        ldapGroupDN:
          type: string
        ldapGroupName:
          type: string
    OidcLinkGroupRequest:
      required:
        - oidcGroupName
      type: object
      properties:
        oidcGroupName:
          type: string
    SamlLinkGroupRequest:
      required:
        - samlGroupName
      type: object
      properties:
        samlGroupName:
          type: string
    ResponseDTOListUserGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
        metaData:
          type: object
        correlationId:
          type: string
    UserGroupFilter:
      required:
        - accountIdentifier
      type: object
      properties:
        databaseIdFilter:
          uniqueItems: true
          type: array
          description: Filter by the internal database ids of user group
          items:
            type: string
            description: Filter by the internal database ids of user group
        identifierFilter:
          uniqueItems: true
          type: array
          description: Filter by the user group identifier
          items:
            type: string
            description: Filter by the user group identifier
        userIdentifierFilter:
          uniqueItems: true
          type: array
          description: Filter by the users present in the user group
          items:
            type: string
            description: Filter by the users present in the user group
        accountIdentifier:
          type: string
          description: Filter by account using account identifier
        orgIdentifier:
          type: string
          description: Filter by organization using account identifier
        projectIdentifier:
          type: string
          description: Filter by project using account identifier
        searchTerm:
          type: string
          description: Filter by search term matching entities by name/identifier
        filterType:
          type: string
          description: Filter by user group filterType
          enum:
            - INCLUDE_INHERITED_GROUPS
            - EXCLUDE_INHERITED_GROUPS
            - INCLUDE_CHILD_SCOPE_GROUPS
            - INCLUDE_PARENT_SCOPE_GROUPS
      description: This is the view of the UserGroupFilter entity defined in Harness
    PageResponseUserGroup:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/UserGroup'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseUserGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseUserGroup'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOUserGroupResponseV2:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/UserGroupResponseV2'
        metaData:
          type: object
        correlationId:
          type: string
    UserBasicInfo:
      type: object
      properties:
        id:
          type: string
        email:
          type: string
      description: List of users emails in the UserGroup.
    UserGroupResponseV2:
      required:
        - identifier
        - name
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the UserGroup.
        name:
          type: string
          description: Name of the UserGroup.
        users:
          type: array
          description: List of users emails in the UserGroup.
          items:
            $ref: '#/components/schemas/UserBasicInfo'
        notificationConfigs:
          type: array
          description: List of notification settings.
          items:
            $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        isSsoLinked:
          type: boolean
          writeOnly: true
        linkedSsoId:
          type: string
          description: Identifier of the linked SSO.
        linkedSsoDisplayName:
          type: string
          description: Name of the linked SSO.
        ssoGroupId:
          type: string
          description: Identifier of the userGroup in SSO.
        ssoGroupName:
          type: string
          description: Name of the SSO userGroup.
        linkedSsoType:
          type: string
          description: Type of linked SSO
        externallyManaged:
          type: boolean
          description: Specifies whether or not the userGroup is externally managed.
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the entity
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        harnessManaged:
          type: boolean
          description: Specifies whether or not the userGroup is managed by harness.
        ssoLinked:
          type: boolean
      description: User Group details defined in Harness.
    UserGroupRequestV2:
      required:
        - identifier
        - name
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the UserGroup.
        name:
          type: string
          description: Name of the UserGroup.
        users:
          maxItems: 5000
          minItems: 0
          type: array
          description: List of users emails in the UserGroup. Maximum users can be 5000.
          items:
            type: string
            description: List of users emails in the UserGroup. Maximum users can be 5000.
        notificationConfigs:
          type: array
          description: List of notification settings.
          items:
            $ref: '#/components/schemas/NotificationSettingConfigDTO1'
        isSsoLinked:
          type: boolean
          writeOnly: true
        linkedSsoId:
          type: string
          description: Identifier of the linked SSO.
        linkedSsoDisplayName:
          type: string
          description: Name of the linked SSO.
        ssoGroupId:
          type: string
          description: Identifier of the userGroup in SSO.
        ssoGroupName:
          type: string
          description: Name of the SSO userGroup.
        linkedSsoType:
          type: string
          description: Type of linked SSO
        externallyManaged:
          type: boolean
          description: Specifies whether or not the userGroup is externally managed.
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the entity
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        harnessManaged:
          type: boolean
          description: Specifies whether or not the userGroup is managed by harness.
        ssoLinked:
          type: boolean
      description: User Group details defined in Harness.
    ResponseDTOServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceResponse1:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/ServiceResponseDetails'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        entityValidityDetails:
          $ref: '#/components/schemas/EntityGitDetails1'
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
    ServiceResponseDetails:
      type: object
      properties:
        accountId:
          type: string
        identifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        name:
          type: string
        description:
          type: string
        deleted:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
        yaml:
          type: string
        type:
          type: string
          enum:
            - Kubernetes
            - NativeHelm
            - Ssh
            - WinRm
            - ServerlessAwsLambda
            - AzureWebApp
            - AzureFunction
            - CustomDeployment
            - ECS
            - Elastigroup
            - TAS
            - Asg
            - GoogleCloudFunctions
            - AwsLambda
            - AWS_SAM
            - SERVICE_YAML_V1_TYPE
            - GoogleCloudRun
            - Salesforce
      description: This is the Service entity defined in Harness
    ServiceRequest:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Service Request.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        name:
          type: string
          description: Name of the Service Request.
        description:
          type: string
          description: Description of the entity
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
        yaml:
          type: string
          description: YAML for the Service Request
      description: Service Request details defined in Harness.
    PageResponseServiceResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ServiceResponse1'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseServiceResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSetK8sCommandFlagType:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          uniqueItems: true
          type: array
          items:
            type: string
            enum:
              - Apply
              - Patch
              - Rollout
              - Delete
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSetKustomizeCommandFlagType:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          uniqueItems: true
          type: array
          items:
            type: string
            enum:
              - Build
        metaData:
          type: object
        correlationId:
          type: string
    PluginInfoResponseDto:
      type: object
      properties:
        runtimeLanguage:
          type: array
          items:
            $ref: '#/components/schemas/ResourceItem'
        serverlessVersion:
          type: array
          items:
            $ref: '#/components/schemas/ResourceItem'
    ResourceItem:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    ResponseDTOPluginInfoResponseDto:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PluginInfoResponseDto'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSetServiceHookAction:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          uniqueItems: true
          type: array
          items:
            type: string
            enum:
              - FetchFiles
              - TemplateManifest
              - SteadyStateCheck
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOServiceImportResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceImportResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceImportResponse:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the imported Service
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: Contains the details of the Saved Service
    ResponseDTOListServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ServiceResponse1'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOServiceMoveConfigResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceMoveConfigResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceMoveConfigResponse:
      type: object
      description: Tells us if the service move config operation was successful or not
    ResponseDTOServiceGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceGitUpdateResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of updated service
      description: Contains info about service that is updated.
    OverrideResponse:
      type: object
      properties:
        identifier:
          type: string
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        environmentRef:
          type: string
        serviceRef:
          type: string
        infraIdentifier:
          type: string
        clusterIdentifier:
          type: string
        type:
          type: string
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
        isNewlyCreated:
          type: boolean
          writeOnly: true
        yaml:
          type: string
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
        newlyCreated:
          type: boolean
      description: This is the Override Response entity defined in Harness
    ResponseDTOOverrideResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/OverrideResponse'
        metaData:
          type: object
        correlationId:
          type: string
    OverrideRequest:
      required:
        - environmentRef
        - type
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Override Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        environmentRef:
          type: string
          description: Environment Reference for the Entity.
        serviceRef:
          type: string
          description: Service Reference for Entity
        infraIdentifier:
          type: string
          description: infraIdentifier
        clusterIdentifier:
          type: string
          description: clusterIdentifier
        type:
          type: string
          description: Type of the override which is based on source of overrides
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
        yaml:
          type: string
          description: >-
            Yaml for overrides, containing overriding fields like manifests,
            variables, config files
      description: This is the Override Request details defined in Harness
    ResponseDTOServiceOverrideMoveConfigResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceOverrideMoveConfigResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceOverrideMoveConfigResponse:
      required:
        - environmentRef
        - type
      type: object
      properties:
        identifier:
          type: string
          description: >-
            Contains the ServiceOverrideIdentifier of the successfully moved
            config.
        environmentRef:
          type: string
          description: Environment Reference for the Entity.
        serviceRef:
          type: string
          description: Service Reference for Entity
        infraIdentifier:
          type: string
          description: infraIdentifier
        type:
          type: string
          description: Type of the override which is based on source of overrides
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
      description: Tells us if the move config was successful or not
    ResponseDTOServiceOverrideGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceOverrideGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceOverrideGitUpdateResponse:
      required:
        - environmentRef
        - type
      type: object
      properties:
        identifier:
          type: string
          description: >-
            Contains the ServiceOverrideIdentifier of the successfully moved
            config.
        environmentRef:
          type: string
          description: Environment Reference for the Entity.
        serviceRef:
          type: string
          description: Service Reference for Entity
        infraIdentifier:
          type: string
          description: infraIdentifier
        type:
          type: string
          description: Type of the override which is based on source of overrides
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
      description: Contains info about ServiceOverride that is updated.
    GitMetadataUpdateRequestInfo:
      type: object
      properties:
        connectorRef:
          type: string
        repoName:
          type: string
        filePath:
          type: string
      description: This lists down GIT metadata params that can be updated for given entity
    ApplicationSettingsConfiguration:
      required:
        - store
      type: object
      properties:
        store:
          $ref: '#/components/schemas/StoreConfigWrapper'
        metadata:
          type: string
    ConfigFile:
      required:
        - identifier
        - spec
      type: object
      properties:
        identifier:
          type: string
        metadata:
          type: string
        __uuid:
          type: string
        spec:
          $ref: '#/components/schemas/ConfigFileAttributes'
    ConfigFileAttributes:
      required:
        - store
      type: object
      properties:
        __uuid:
          type: string
        store:
          $ref: '#/components/schemas/ParameterFieldStoreConfigWrapper'
        metadata:
          type: string
    ConfigFileWrapper:
      type: object
      properties:
        __uuid:
          type: string
        configFile:
          $ref: '#/components/schemas/ConfigFile'
        metadata:
          type: string
    ConnectionStringsConfiguration:
      required:
        - store
      type: object
      properties:
        store:
          $ref: '#/components/schemas/StoreConfigWrapper'
        metadata:
          type: string
    InputSetValidator:
      type: object
      properties:
        validatorType:
          type: string
          enum:
            - ALLOWED_VALUES
            - REGEX
            - SELECT_ONE_FROM
            - SELECT_MANY_FROM
        parameters:
          type: string
    ManifestAttributes:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    ManifestConfig:
      required:
        - identifier
        - spec
        - type
      type: object
      properties:
        identifier:
          type: string
        metadata:
          type: string
        __uuid:
          type: string
        type:
          type: string
          enum:
            - HelmChart
            - HelmRepoOverride
            - K8sManifest
            - Kustomize
            - KustomizePatches
            - OpenshiftParam
            - OpenshiftTemplate
            - Values
            - ServerlessAwsLambda
            - ReleaseRepo
            - DeploymentRepo
            - EcsTaskDefinition
            - EcsServiceDefinition
            - EcsScalableTargetDefinition
            - EcsScalingPolicyDefinition
            - TasManifest
            - TasVars
            - TasAutoScaler
            - AsgLaunchTemplate
            - AsgConfiguration
            - AsgAdditionalConfiguration
            - AsgScalingPolicy
            - AsgScheduledUpdateGroupAction
            - GoogleCloudFunctionDefinition
            - AwsLambdaFunctionDefinition
            - AwsLambdaFunctionAliasDefinition
            - AwsSamDirectory
            - GoogleCloudFunctionGenOneDefinition
            - GoogleCloudRunService
            - GoogleCloudRunJob
        spec:
          $ref: '#/components/schemas/ManifestAttributes'
    ManifestConfigWrapper:
      type: object
      properties:
        manifest:
          $ref: '#/components/schemas/ManifestConfig'
        __uuid:
          type: string
        metadata:
          type: string
    NGVariable1:
      type: object
      properties:
        name:
          type: string
        type:
          type: string
          enum:
            - String
            - Number
            - Secret
        description:
          type: string
        required:
          type: boolean
        metadata:
          type: string
      discriminator:
        propertyName: type
    NumberNGVariable1:
      required:
        - value
      type: object
      allOf:
        - $ref: '#/components/schemas/NGVariable1'
        - type: object
          properties:
            name:
              pattern: ^[a-zA-Z_][0-9a-zA-Z_\.$-]{0,127}$
              type: string
            value:
              $ref: '#/components/schemas/ParameterFieldDouble'
            default:
              type: number
              format: double
    ParameterFieldDouble:
      type: object
      properties:
        expressionValue:
          type: string
        expression:
          type: boolean
        value:
          type: number
          format: double
        defaultValue:
          type: number
          format: double
        typeString:
          type: boolean
        inputSetValidator:
          $ref: '#/components/schemas/InputSetValidator'
        jsonResponseField:
          type: boolean
        responseField:
          type: string
        executionInput:
          type: boolean
    ParameterFieldSecretRefData:
      type: object
      properties:
        expressionValue:
          type: string
        expression:
          type: boolean
        value:
          type: string
        defaultValue:
          type: string
        typeString:
          type: boolean
        inputSetValidator:
          $ref: '#/components/schemas/InputSetValidator'
        jsonResponseField:
          type: boolean
        responseField:
          type: string
        executionInput:
          type: boolean
    ParameterFieldStoreConfigWrapper:
      type: object
      properties:
        expressionValue:
          type: string
        expression:
          type: boolean
        value:
          $ref: '#/components/schemas/StoreConfigWrapper'
        defaultValue:
          $ref: '#/components/schemas/StoreConfigWrapper'
        typeString:
          type: boolean
        inputSetValidator:
          $ref: '#/components/schemas/InputSetValidator'
        jsonResponseField:
          type: boolean
        responseField:
          type: string
        executionInput:
          type: boolean
    ParameterFieldString:
      type: object
      properties:
        expressionValue:
          type: string
        expression:
          type: boolean
        value:
          type: string
        defaultValue:
          type: string
        typeString:
          type: boolean
        inputSetValidator:
          $ref: '#/components/schemas/InputSetValidator'
        jsonResponseField:
          type: boolean
        responseField:
          type: string
        executionInput:
          type: boolean
    ResponseDTOServiceOverrideResponseV2:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceOverrideResponseV2'
        metaData:
          type: object
        correlationId:
          type: string
    SecretNGVariable:
      required:
        - value
      type: object
      allOf:
        - $ref: '#/components/schemas/NGVariable1'
        - type: object
          properties:
            name:
              pattern: ^[a-zA-Z_][0-9a-zA-Z_\.$-]{0,127}$
              type: string
            value:
              $ref: '#/components/schemas/ParameterFieldSecretRefData'
            default:
              type: string
    ServiceOverrideResponseV2:
      type: object
      properties:
        identifier:
          type: string
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        environmentRef:
          type: string
        serviceRef:
          type: string
        infraIdentifier:
          type: string
        clusterIdentifier:
          type: string
        type:
          type: string
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
        spec:
          $ref: '#/components/schemas/ServiceOverrideSpec'
        isNewlyCreated:
          type: boolean
          writeOnly: true
        yaml:
          type: string
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
        newlyCreated:
          type: boolean
      description: This is the Service Override Response entity defined in Harness
    ServiceOverrideSpec:
      type: object
      properties:
        variables:
          type: array
          items:
            $ref: '#/components/schemas/NGVariable1'
        manifests:
          type: array
          items:
            $ref: '#/components/schemas/ManifestConfigWrapper'
        configFiles:
          type: array
          items:
            $ref: '#/components/schemas/ConfigFileWrapper'
        applicationSettings:
          $ref: '#/components/schemas/ApplicationSettingsConfiguration'
        connectionStrings:
          $ref: '#/components/schemas/ConnectionStringsConfiguration'
        cliEnvironmentVariables:
          type: array
          items:
            $ref: '#/components/schemas/NGVariable1'
        metadata:
          type: string
      description: This is the Service Override Spec entity defined in Harness
    StoreConfig:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    StoreConfigWrapper:
      required:
        - spec
        - type
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/StoreConfig'
        metadata:
          type: string
        __uuid:
          type: string
        type:
          type: string
          enum:
            - CustomRemote
            - Git
            - Github
            - Bitbucket
            - GitLab
            - Http
            - S3
            - Gcs
            - Inline
            - Artifactory
            - S3Url
            - InheritFromManifest
            - Harness
            - OciHelmChart
            - AzureRepo
            - ArtifactBundle
            - HarnessCode
    StringNGVariable1:
      required:
        - value
      type: object
      allOf:
        - $ref: '#/components/schemas/NGVariable1'
        - type: object
          properties:
            name:
              pattern: ^[a-zA-Z_][0-9a-zA-Z_\.$-]{0,127}$
              type: string
            value:
              $ref: '#/components/schemas/ParameterFieldString'
            default:
              type: string
            __uuid:
              type: string
    ServiceOverrideRequestV2:
      required:
        - environmentRef
        - type
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        environmentRef:
          type: string
          description: Environment Reference for the Entity.
        serviceRef:
          type: string
          description: Service Reference for Entity
        infraIdentifier:
          type: string
          description: infraIdentifier
        clusterIdentifier:
          type: string
          description: clusterIdentifier
        type:
          type: string
          description: Type of the override which is based on source of overrides
          enum:
            - ENV_GLOBAL_OVERRIDE
            - ENV_SERVICE_OVERRIDE
            - INFRA_GLOBAL_OVERRIDE
            - INFRA_SERVICE_OVERRIDE
            - CLUSTER_GLOBAL_OVERRIDE
            - CLUSTER_SERVICE_OVERRIDE
        spec:
          $ref: '#/components/schemas/ServiceOverrideSpec'
        yaml:
          type: string
        identifier:
          type: string
          description: Service Overrides Identifier for Entity.
      description: This is the Service Override Request entity defined in Harness
    NgSmtp:
      required:
        - accountId
        - name
        - value
      type: object
      properties:
        uuid:
          type: string
          description: Identifier of the SMTP config.
        accountId:
          type: string
          description: Account Identifier for the Entity.
        name:
          type: string
          description: Name of the SMTP config.
        value:
          $ref: '#/components/schemas/SmtpConfig'
      description: This is the view of the NgSmtp entity defined in Harness
    ResponseDTONgSmtp:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NgSmtp'
        metaData:
          type: object
        correlationId:
          type: string
    SmtpConfig:
      required:
        - host
        - port
      type: object
      properties:
        host:
          type: string
          description: This is the host of the SMTP server.
        port:
          type: integer
          description: This is the port of the SMTP server.
          format: int32
        fromAddress:
          type: string
          description: From address of the email that needs to be send.
        useSSL:
          type: boolean
          description: Specify whether or not to use SSL certificate.
        startTLS:
          type: boolean
          description: Specify whether or not to use TLS.
        username:
          type: string
          description: Username credential to authenticate with SMTP server.
        password:
          type: array
          description: Password credential to authenticate with SMTP server.
          items:
            type: string
            description: Password credential to authenticate with SMTP server.
        delegateSelectors:
          uniqueItems: true
          type: array
          description: >-
            List of delegate selectors of delegates used by SMTP server as
            connectivity mode.
          items:
            type: string
            description: >-
              List of delegate selectors of delegates used by SMTP server as
              connectivity mode.
      description: This has the SMTP configuration details defined in Harness.
    ResponseDTOValidationResult:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ValidationResult'
        metaData:
          type: object
        correlationId:
          type: string
    ValidationResult:
      type: object
      properties:
        valid:
          type: boolean
        errorMessage:
          type: string
    UserAddToUserGroupDTO:
      type: object
      properties:
        userGroupIdsToAdd:
          uniqueItems: true
          type: array
          items:
            type: string
    AddUsersResponse:
      type: object
      properties:
        addUserResponseMap:
          type: object
          additionalProperties:
            type: string
            enum:
              - USER_INVITED_SUCCESSFULLY
              - USER_ADDED_SUCCESSFULLY
              - USER_ALREADY_ADDED
              - USER_ALREADY_INVITED
              - USER_INVITE_NOT_REQUIRED
              - FAIL
    ResponseDTOAddUsersResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AddUsersResponse'
        metaData:
          type: object
        correlationId:
          type: string
    AddUsersDTO:
      required:
        - emails
      type: object
      properties:
        emails:
          maxItems: 100
          minItems: 0
          type: array
          items:
            type: string
        roleBindings:
          type: array
          items:
            $ref: '#/components/schemas/RoleBinding'
        userGroups:
          type: array
          items:
            type: string
        userSettings:
          type: array
          items:
            $ref: '#/components/schemas/UserSettingFromInvite'
    UserSettingFromInvite:
      type: object
      properties:
        identifier:
          type: string
        value:
          type: string
    ResponseDTOPasswordChangeResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: string
          enum:
            - PASSWORD_CHANGED
            - INCORRECT_CURRENT_PASSWORD
            - PASSWORD_STRENGTH_VIOLATED
        metaData:
          type: object
        correlationId:
          type: string
    PasswordChange:
      type: object
      properties:
        currentPassword:
          type: string
          description: This is the current password.
        newPassword:
          type: string
          description: This is the new password.
      description: This is the view of the PasswordChange entity defined in Harness
    GatewayAccountRequest:
      type: object
      properties:
        uuid:
          type: string
        accountName:
          type: string
        companyName:
          type: string
        defaultExperience:
          type: string
          enum:
            - NG
            - CG
        createdFromNG:
          type: boolean
        isNextGenEnabled:
          type: boolean
          writeOnly: true
        nextGenEnabled:
          type: boolean
      description: >-
        Returns Gateway account request details like uuid, account name, company
        name, default experience, whether or not created from NextGen and
        whether NextGen is enabled or not.
    ResponseDTOUserInfo:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/UserInfo'
        metaData:
          type: object
        correlationId:
          type: string
    UserInfo:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        email:
          type: string
        token:
          type: string
        defaultAccountId:
          type: string
        intent:
          type: string
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/GatewayAccountRequest'
        admin:
          type: boolean
        twoFactorAuthenticationEnabled:
          type: boolean
        emailVerified:
          type: boolean
        locked:
          type: boolean
        disabled:
          type: boolean
        signupAction:
          type: string
        edition:
          type: string
        billingFrequency:
          type: string
        utmInfo:
          $ref: '#/components/schemas/UtmInfo'
        externallyManaged:
          type: boolean
        givenName:
          type: string
        familyName:
          type: string
        externalId:
          type: string
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        userPreferences:
          type: object
          additionalProperties:
            type: string
        isEnrichedInfoCollected:
          type: boolean
        lastLogin:
          type: integer
          format: int64
    UtmInfo:
      type: object
      properties:
        utmSource:
          type: string
        utmContent:
          type: string
        utmMedium:
          type: string
        utmTerm:
          type: string
        utmCampaign:
          type: string
    ResponseDTOUserAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/UserAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    RoleAssignmentMetadata:
      type: object
      properties:
        identifier:
          type: string
        roleIdentifier:
          type: string
        roleName:
          type: string
        roleScopeLevel:
          type: string
        resourceGroupIdentifier:
          type: string
        resourceGroupName:
          type: string
        managedRole:
          type: boolean
        managedRoleAssignment:
          type: boolean
      description: This has information of Role like name, id, resource group name, etc.
    UserAggregate:
      type: object
      properties:
        user:
          $ref: '#/components/schemas/UserMetadata'
        roleAssignmentMetadata:
          type: array
          items:
            $ref: '#/components/schemas/RoleAssignmentMetadata'
      description: Returns User's metadata and Role Assignments metadata
    PageResponseUserAggregate:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/UserAggregate'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseUserAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseUserAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOTwoFactorAuthSettingsInfo:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TwoFactorAuthSettingsInfo'
        metaData:
          type: object
        correlationId:
          type: string
    TwoFactorAuthSettingsInfo:
      type: object
      properties:
        userId:
          type: string
        email:
          type: string
        twoFactorAuthenticationEnabled:
          type: boolean
        mechanism:
          type: string
          enum:
            - TOTP
        totpSecretKey:
          type: string
        totpqrurl:
          type: string
    ImpersonateDTO:
      required:
        - reasonOfImpersonation
      type: object
      properties:
        reasonOfImpersonation:
          type: string
    UserInfoUpdateDTO:
      type: object
      properties:
        name:
          type: string
        email:
          type: string
        givenName:
          type: string
        familyName:
          type: string
    ResponseDTOVariableResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/VariableResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    StringVariableConfigDTO:
      required:
        - fixedValue
        - valueType
      type: object
      allOf:
        - $ref: '#/components/schemas/VariableConfigDTO'
        - type: object
          properties:
            fixedValue:
              type: string
              description: Fixed Value of the Variable.
    VariableConfigDTO:
      required:
        - type
        - valueType
      type: object
      properties:
        valueType:
          type: string
          description: Type of Value of the Variable.
          enum:
            - FIXED
        type:
          type: string
      discriminator:
        propertyName: type
    VariableDTO:
      required:
        - identifier
        - name
        - spec
        - type
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Variable.
        name:
          type: string
          description: Name of the Variable.
        description:
          type: string
          description: Description of the entity
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        type:
          type: string
          description: Type of the Variable.
          enum:
            - String
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
        spec:
          $ref: '#/components/schemas/VariableConfigDTO'
    VariableResponseDTO:
      required:
        - variable
      type: object
      properties:
        variable:
          $ref: '#/components/schemas/VariableDTO'
        createdAt:
          type: integer
          description: Time when the Variable was first created.
          format: int64
        lastModifiedAt:
          type: integer
          description: Time when the Variable was last modified.
          format: int64
    VariableRequestDTO:
      type: object
      properties:
        variable:
          $ref: '#/components/schemas/VariableDTO'
    PageResponseVariableResponseDTO:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/VariableResponseDTO'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseVariableResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseVariableResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    VariableListRequestDTO:
      type: object
      properties:
        identifiers:
          type: array
          items:
            type: string
    FreezeResponse:
      required:
        - accountId
        - identifier
        - name
        - yaml
      type: object
      properties:
        accountId:
          type: string
        type:
          type: string
          enum:
            - GLOBAL
            - MANUAL
        status:
          type: string
          enum:
            - Enabled
            - Disabled
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        windows:
          type: array
          items:
            $ref: '#/components/schemas/FreezeWindow'
        identifier:
          type: string
        yaml:
          type: string
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        freezeScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
      description: This contains details of the Freeze Response
    FreezeWindow:
      required:
        - startTime
        - timeZone
      type: object
      properties:
        timeZone:
          type: string
        startTime:
          type: string
        duration:
          type: string
        endTime:
          type: string
        recurrence:
          $ref: '#/components/schemas/Recurrence'
    Recurrence:
      required:
        - type
      type: object
      properties:
        spec:
          $ref: '#/components/schemas/RecurrenceSpec'
        type:
          type: string
          enum:
            - Daily
            - Weekly
            - Monthly
            - Yearly
    RecurrenceSpec:
      type: object
      properties:
        until:
          type: string
        value:
          maximum: 11
          minimum: 2
          type: integer
          format: int32
    ResponseDTOFreezeResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FreezeResponse'
        metaData:
          type: object
        correlationId:
          type: string
    FreezeErrorResponseDTO:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        errorMessage:
          type: string
    FreezeResponseWrapperDTO:
      type: object
      properties:
        noOfSuccess:
          type: integer
          format: int32
        noOfFailed:
          type: integer
          format: int32
        successfulFreezeResponseDTOList:
          type: array
          items:
            $ref: '#/components/schemas/FreezeResponse'
        freezeErrorResponseDTOList:
          type: array
          items:
            $ref: '#/components/schemas/FreezeErrorResponseDTO'
    ResponseDTOFreezeResponseWrapperDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FreezeResponseWrapperDTO'
        metaData:
          type: object
        correlationId:
          type: string
    CurrentOrUpcomingWindow:
      type: object
      properties:
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
    FreezeDetailedResponse:
      required:
        - accountId
        - identifier
        - name
      type: object
      properties:
        accountId:
          type: string
        type:
          type: string
          enum:
            - GLOBAL
            - MANUAL
        status:
          type: string
          enum:
            - Enabled
            - Disabled
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        windows:
          type: array
          items:
            $ref: '#/components/schemas/FreezeWindow'
        currentOrUpcomingWindow:
          $ref: '#/components/schemas/CurrentOrUpcomingWindow'
        identifier:
          type: string
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        freezeScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        yaml:
          type: string
      description: This contains detailed information of the Freeze Config
    ResponseDTOFreezeDetailedResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FreezeDetailedResponse'
        metaData:
          type: object
        correlationId:
          type: string
    FreezeSummaryResponse:
      required:
        - accountId
        - identifier
        - name
      type: object
      properties:
        accountId:
          type: string
        type:
          type: string
          enum:
            - GLOBAL
            - MANUAL
        status:
          type: string
          enum:
            - Enabled
            - Disabled
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        windows:
          type: array
          items:
            $ref: '#/components/schemas/FreezeWindow'
        currentOrUpcomingWindow:
          $ref: '#/components/schemas/CurrentOrUpcomingWindow'
        identifier:
          type: string
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        freezeScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        yaml:
          type: string
      description: This contains summary of the Freeze Response
    PageResponseFreezeSummaryResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/FreezeSummaryResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseFreezeSummaryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseFreezeSummaryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    FreezeFilterPropertiesDTO:
      type: object
      properties:
        freezeIdentifiers:
          type: array
          items:
            type: string
        sort:
          type: array
          items:
            type: string
        freezeStatus:
          type: string
          enum:
            - Enabled
            - Disabled
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        searchTerm:
          type: string
    FrozenExecutionDetail:
      type: object
      properties:
        freeze:
          $ref: '#/components/schemas/FreezeSummaryResponse'
        url:
          type: string
    FrozenExecutionDetails:
      type: object
      properties:
        freezeList:
          type: array
          items:
            $ref: '#/components/schemas/FrozenExecutionDetail'
    ResponseDTOFrozenExecutionDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FrozenExecutionDetails'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterResponse:
      required:
        - envRef
      type: object
      properties:
        clusterRef:
          type: string
          description: identifier of the gitops cluster
        orgIdentifier:
          type: string
          description: organization identifier of the cluster
        projectIdentifier:
          type: string
          description: project identifier of the cluster
        agentIdentifier:
          type: string
          description: agent identifier of the cluster
        accountIdentifier:
          type: string
          description: account identifier of the cluster
        envRef:
          type: string
          description: environment identifier of the cluster
        linkedAt:
          type: integer
          description: time at which the cluster was linked
          format: int64
        scope:
          type: string
          description: >-
            scope at which the cluster exists in harness gitops, project vs org
            vs account
          enum:
            - ACCOUNT
            - ORGANIZATION
            - PROJECT
        name:
          type: string
          description: name of the gitops cluster
        tags:
          type: object
          additionalProperties:
            type: string
            description: name of the gitops cluster
          description: name of the gitops cluster
      description: This is the ClusterRequest entity defined in Harness
    ResponseDTOClusterResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ClusterResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterRequest:
      required:
        - envRef
      type: object
      properties:
        identifier:
          type: string
          description: identifier of the cluster
        orgIdentifier:
          type: string
          description: organization identifier of the cluster
        agentIdentifier:
          type: string
          description: agent identifier of the cluster
        projectIdentifier:
          type: string
          description: project identifier of the cluster
        envRef:
          type: string
          description: environment identifier of the cluster
        scope:
          type: string
          description: >-
            scope at which the cluster exists in harness gitops, project vs org
            vs account
          enum:
            - ACCOUNT
            - ORGANIZATION
            - PROJECT
      description: This is the ClusterRequest entity defined in Harness
    ClusterBatchResponse:
      type: object
      properties:
        linked:
          type: integer
          description: number of clusters linked
          format: int64
        unlinked:
          type: integer
          description: number of clusters unlinked
          format: int64
      description: This is the Cluster Batch Response defined in Harness
    ResponseDTOClusterBatchResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ClusterBatchResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterBasicDTO:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of the cluster
        agentIdentifier:
          type: string
          description: agent identifier of the cluster
        name:
          type: string
          description: name of the cluster
        scope:
          type: string
          description: >-
            scope at which the cluster exists in harness gitops, project vs org
            vs account
          enum:
            - ACCOUNT
            - ORGANIZATION
            - PROJECT
      description: List of cluster identifiers and names
    ClusterLinkRequest:
      required:
        - envRef
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization identifier of the environment
        projectIdentifier:
          type: string
          description: Project identifier of the environment
        envRef:
          type: string
          description: Environment identifier for the cluster
        clusters:
          type: array
          description: List of cluster identifiers and names
          items:
            $ref: '#/components/schemas/ClusterBasicDTO'
        linkAllClusters:
          type: boolean
          description: >-
            Link all clusters to the environment. When true, links all clusters
            matching the searchTerm.
        searchTerm:
          type: string
          description: >-
            Search term to filter clusters when linkAllClusters is true. Only
            used with linkAllClusters=true.
      description: Batch Request to link clusters to the environment in a batch
    PageResponseClusterResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ClusterResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseClusterResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseClusterResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterUnlinkRequest:
      required:
        - envRef
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization identifier of the environment
        projectIdentifier:
          type: string
          description: Project identifier of the environment
        envRef:
          type: string
          description: Environment identifier for the cluster
        clusters:
          type: array
          description: List of cluster identifiers and names
          items:
            $ref: '#/components/schemas/ClusterBasicDTO'
        unlinkAllClusters:
          type: boolean
          description: >-
            Unlink all clusters from the environment. Warning: Setting this to
            true will unlink ALL clusters linked to provided environment
      description: Batch Request to unlink clusters to the environment in a batch
    CountGroupedOnArtifact:
      type: object
      properties:
        artifactPath:
          type: string
        artifactVersion:
          type: string
        artifact:
          type: string
        count:
          type: integer
          format: int64
        executionCountGroupedOnStatusList:
          type: array
          items:
            $ref: '#/components/schemas/CountGroupedOnStatus'
    CountGroupedOnService:
      type: object
      properties:
        serviceReference:
          type: string
        serviceName:
          type: string
        count:
          type: integer
          format: int64
        executionCountGroupedOnStatusList:
          type: array
          items:
            $ref: '#/components/schemas/CountGroupedOnStatus'
        executionCountGroupedOnArtifactList:
          type: array
          items:
            $ref: '#/components/schemas/CountGroupedOnArtifact'
    CountGroupedOnStatus:
      type: object
      properties:
        status:
          type: string
        count:
          type: integer
          format: int64
    PipelineExecutionCountInfo:
      type: object
      properties:
        executionCountGroupedOnServiceList:
          type: array
          items:
            $ref: '#/components/schemas/CountGroupedOnService'
    ResponseDTOPipelineExecutionCountInfo:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PipelineExecutionCountInfo'
        metaData:
          type: object
        correlationId:
          type: string
    PostProdRollbackCheckDTO:
      type: object
      properties:
        isRollbackAllowed:
          type: boolean
          writeOnly: true
        message:
          type: string
        swimLaneInfo:
          $ref: '#/components/schemas/PostProdRollbackSwimLaneInfo'
        rollbackAllowed:
          type: boolean
    PostProdRollbackSwimLaneInfo:
      type: object
    ResponseDTOPostProdRollbackCheckDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PostProdRollbackCheckDTO'
        metaData:
          type: object
        correlationId:
          type: string
    PostProdRollbackRequestDTO:
      required:
        - infrastructureMappingId
        - instanceKey
      type: object
      properties:
        instanceKey:
          type: string
        infrastructureMappingId:
          type: string
    PostProdRollbackResponseDTO:
      type: object
      properties:
        isRollbackTriggered:
          type: boolean
          writeOnly: true
        instanceKey:
          type: string
        infraMappingId:
          type: string
        planExecutionId:
          type: string
        message:
          type: string
        rollbackTriggered:
          type: boolean
    ResponseDTOPostProdRollbackResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PostProdRollbackResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTORollbackResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RollbackResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    RollbackResponseDTO:
      type: object
      properties:
        isRollbackTriggered:
          type: boolean
          writeOnly: true
        instanceKey:
          type: string
        infraMappingId:
          type: string
        planExecutionId:
          type: string
        message:
          type: string
        serviceIdentifier:
          type: string
        envIdentifier:
          type: string
        environmentType:
          type: string
        infraIdentifier:
          type: string
        rollbackTriggered:
          type: boolean
    RollbackRequestDTO:
      required:
        - envIdentifier
        - serviceIdentifier
      type: object
      properties:
        serviceIdentifier:
          type: string
        envIdentifier:
          type: string
        environmentType:
          type: string
          enum:
            - PreProduction
            - Production
        infraIdentifier:
          type: string
        artifact:
          type: string
        chartVersion:
          type: string
    ResponseDTOServiceAccount:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceAccount'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceAccount:
      required:
        - accountIdentifier
        - email
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Service Account.
        name:
          type: string
          description: Name of the Service Account.
        email:
          type: string
          description: Email of the Service Account.
        description:
          maxLength: 1024
          minLength: 0
          type: string
          description: Description of the Service Account.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags of the Service Account.
          description: Tags of the Service Account.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        governanceMetadata:
          $ref: '#/components/schemas/GovernanceMetadata2'
      description: This has the details of Service Account in Harness.
    ResponseDTOServiceAccountAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ServiceAccountAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceAccountAggregate:
      required:
        - createdAt
        - lastModifiedAt
        - serviceAccount
      type: object
      properties:
        serviceAccount:
          $ref: '#/components/schemas/ServiceAccount'
        createdAt:
          type: integer
          description: This is the time at which Service Account was created.
          format: int64
        lastModifiedAt:
          type: integer
          description: This is the time at which Service Account was last modified.
          format: int64
        tokensCount:
          type: integer
          description: This is the total number of tokens in a Service Account.
          format: int32
        roleAssignmentsMetadataDTO:
          type: array
          description: This is the list of Role Assignments for the Service Account.
          items:
            $ref: '#/components/schemas/RoleAssignmentMetadata'
      description: This contains the Service Account details and its metadata.
    PageResponseServiceAccountAggregate:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ServiceAccountAggregate'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseServiceAccountAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseServiceAccountAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListServiceAccount:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ServiceAccount'
        metaData:
          type: object
        correlationId:
          type: string
    CannyResponse:
      type: object
      properties:
        message:
          type: string
        postURL:
          type: string
      description: Contains information about post creation status on Canny
    ResponseDTOCannyResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CannyResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Board:
      type: object
      properties:
        name:
          type: string
        id:
          type: string
    CannyBoardsResponse:
      type: object
      properties:
        message:
          type: string
        boards:
          type: array
          items:
            $ref: '#/components/schemas/Board'
      description: Contains list of Boards and their ID's from Canny
    ResponseDTOCannyBoardsResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CannyBoardsResponse'
        metaData:
          type: object
        correlationId:
          type: string
    CannyCategoriesResponse:
      type: object
      properties:
        boardId:
          type: string
        categoryList:
          type: array
          items:
            $ref: '#/components/schemas/Category'
      description: Contains list of Categories and their ID's from Canny for a given board
    Category:
      type: object
      properties:
        name:
          type: string
        id:
          type: string
    ResponseDTOCannyCategoriesResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CannyCategoriesResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListSourceCodeManager:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/SourceCodeManager'
        metaData:
          type: object
        correlationId:
          type: string
    SourceCodeManager:
      required:
        - name
      type: object
      properties:
        id:
          type: string
          description: Source Code Manager Identifier
        userIdentifier:
          type: string
          description: Id of the User
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        name:
          type: string
          description: Name of Source Code Manager
        createdAt:
          type: integer
          description: Time at which this Source Code Manager was created
          format: int64
        lastModifiedAt:
          type: integer
          description: Time at which this Source Code Manager was last Updated
          format: int64
        type:
          type: string
          description: Type of SCM
          enum:
            - BITBUCKET
            - GITHUB
            - GITLAB
            - AWS_CODE_COMMIT
            - AZURE_REPO
            - BITBUCKET_SERVER
            - GITLAB_ON_PREM
            - HARNESS
            - GITHUB_ENTERPRISE
        authentication:
          $ref: '#/components/schemas/SourceCodeManagerAuthentication'
      description: This contains details of Source Code Manager
      discriminator:
        propertyName: type
    SourceCodeManagerAuthentication:
      type: object
      description: Authentication Details of Source Code Manager
    ResponseDTOSourceCodeManager:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SourceCodeManager'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSettingValueResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SettingValueResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    SettingValueResponseDTO:
      required:
        - value
        - valueType
      type: object
      properties:
        valueType:
          type: string
          description: Type of Value of the Setting.
          enum:
            - String
            - Boolean
            - Number
        value:
          type: string
          description: Value of the setting
    ResponseDTOListSettingResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/SettingResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    SettingDTO:
      required:
        - allowOverrides
        - allowedScopes
        - category
        - groupIdentifier
        - identifier
        - isSettingEditable
        - name
        - valueType
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        name:
          type: string
          description: Name of the Setting.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        category:
          type: string
          description: Category of the Setting.
          enum:
            - CD
            - CI
            - CE
            - CV
            - CF
            - STO
            - CORE
            - PMS
            - TEMPLATESERVICE
            - GOVERNANCE
            - CHAOS
            - SCIM
            - GIT_EXPERIENCE
            - CONNECTORS
            - EULA
            - NOTIFICATIONS
            - SUPPLY_CHAIN_ASSURANCE
            - USER
            - MODULES_VISIBILITY
            - DBOPS
            - IR
        groupIdentifier:
          type: string
          description: Group Id of the setting
        valueType:
          type: string
          description: Type of Value of the Setting.
          enum:
            - String
            - Boolean
            - Number
        allowedValues:
          uniqueItems: true
          type: array
          description: Set of Values allowed for the Setting.
          items:
            type: string
            description: Set of Values allowed for the Setting.
        allowOverrides:
          type: boolean
          description: Allow override of the Setting in sub-scopes.
        value:
          type: string
          description: Value of the setting
        defaultValue:
          type: string
          description: Default Value of the Setting.
        settingSource:
          type: string
          description: Source of the setting value
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - DEFAULT
        isSettingEditable:
          type: boolean
          description: Is the setting editable at the current scope
        allowedScopes:
          uniqueItems: true
          type: array
          description: List of scopes where the setting is available
          items:
            type: string
            description: List of scopes where the setting is available
            enum:
              - ACCOUNT
              - ORGANIZATION
              - PROJECT
    SettingResponseDTO:
      required:
        - setting
      type: object
      properties:
        setting:
          $ref: '#/components/schemas/SettingDTO'
        lastModifiedAt:
          type: integer
          description: Time when the Setting was last modified.
          format: int64
    ResponseDTOListSettingUpdateResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/SettingUpdateResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    SettingUpdateResponseDTO:
      required:
        - identifier
        - setting
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        setting:
          $ref: '#/components/schemas/SettingDTO'
        lastModifiedAt:
          type: integer
          description: Time when the Setting was last modified.
          format: int64
        updateStatus:
          type: boolean
          description: Request status for the corresponding item in batch request
        errorMessage:
          type: string
          description: Error message
    SettingRequestDTO:
      required:
        - allowOverrides
        - identifier
        - updateType
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        value:
          type: string
          description: Value of the setting
        allowOverrides:
          type: boolean
          description: Allow override of the Setting in sub-scopes.
        updateType:
          type: string
          description: >-
            Type of the update operation. When update type is RESTORE, field
            [value] is ignored
          enum:
            - UPDATE
            - RESTORE
    ResponseDTOListUserSettingResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/UserSettingResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    UserSettingDTO:
      required:
        - category
        - groupIdentifier
        - identifier
        - valueType
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        category:
          type: string
          description: Category of the Setting.
          enum:
            - CD
            - CI
            - CE
            - CV
            - CF
            - STO
            - CORE
            - PMS
            - TEMPLATESERVICE
            - GOVERNANCE
            - CHAOS
            - SCIM
            - GIT_EXPERIENCE
            - CONNECTORS
            - EULA
            - NOTIFICATIONS
            - SUPPLY_CHAIN_ASSURANCE
            - USER
            - MODULES_VISIBILITY
            - DBOPS
            - IR
        valueType:
          type: string
          description: Type of Value of the Setting.
          enum:
            - String
            - Boolean
            - Number
        allowedValues:
          uniqueItems: true
          type: array
          description: Set of Values allowed for the Setting.
          items:
            type: string
            description: Set of Values allowed for the Setting.
        value:
          type: string
          description: Value of the setting
        userID:
          type: string
          description: userID
        groupIdentifier:
          type: string
          description: Group Id of the setting
    UserSettingResponseDTO:
      required:
        - userSetting
      type: object
      properties:
        userSetting:
          $ref: '#/components/schemas/UserSettingDTO'
        lastModifiedAt:
          type: integer
          description: Time when the Setting was last modified.
          format: int64
    ResponseDTOListUserSettingUpdateResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/UserSettingUpdateResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    UserSettingUpdateResponseDTO:
      required:
        - identifier
        - userSettingDTO
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        userSettingDTO:
          $ref: '#/components/schemas/UserSettingDTO'
        lastModifiedAt:
          type: integer
          description: Time when the Setting was last modified.
          format: int64
        updateStatus:
          type: boolean
          description: Request status for the corresponding item in batch request
        errorMessage:
          type: string
          description: Error message
    UserSettingRequestDTO:
      required:
        - identifier
        - updateType
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the Setting.
        value:
          type: string
          description: Value of the setting
        updateType:
          type: string
          description: >-
            Type of the update operation. When update type is RESTORE, field
            [value] is ignored
          enum:
            - UPDATE
            - RESTORE
        enableAcrossAccounts:
          type: boolean
    ResponseDTOMapStringString:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
          additionalProperties:
            type: string
        metaData:
          type: object
        correlationId:
          type: string
    PipelineError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
        metadata:
          $ref: '#/components/schemas/PipelineErrorMetadata'
      description: This is Error entity as defined in Harness
    PipelineErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    PerpetualTaskInfoForTriggers:
      type: object
      properties:
        state:
          type: string
        unassignedReason:
          type: string
        taskDescription:
          type: string
        createdAt:
          type: integer
          format: int64
        delegateId:
          type: string
        delegateHostName:
          type: string
    PolledResponse:
      type: object
      properties:
        allPolledKeys:
          uniqueItems: true
          type: array
          items:
            type: string
    PollingInfoForTriggers:
      type: object
      properties:
        perpetualTaskId:
          type: string
        polledResponse:
          $ref: '#/components/schemas/PolledResponse'
        pollingDocId:
          type: string
        perpetualTaskInfoForTriggers:
          $ref: '#/components/schemas/PerpetualTaskInfoForTriggers'
    ResponseDTOPollingInfoForTriggers:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PollingInfoForTriggers'
        metaData:
          type: object
        correlationId:
          type: string
    NGTriggerEventHistoryDTO:
      type: object
      properties:
        triggerIdentifier:
          type: string
        accountId:
          type: string
        eventCorrelationId:
          type: string
        payload:
          type: string
        headers:
          type: object
          additionalProperties:
            type: string
        eventCreatedAt:
          type: integer
          format: int64
        finalStatus:
          type: string
          enum:
            - SCM_SERVICE_CONNECTION_FAILED
            - INVALID_PAYLOAD
            - TRIGGER_DID_NOT_MATCH_EVENT_CONDITION
            - TRIGGER_DID_NOT_MATCH_METADATA_CONDITION
            - TRIGGER_DID_NOT_MATCH_ARTIFACT_JEXL_CONDITION
            - NO_MATCHING_TRIGGER_FOR_REPO
            - NO_MATCHING_TRIGGER_FOR_EVENT_ACTION
            - NO_MATCHING_TRIGGER_FOR_METADATA_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_PAYLOAD_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_JEXL_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_HEADER_CONDITIONS
            - INVALID_RUNTIME_INPUT_YAML
            - TARGET_DID_NOT_EXECUTE
            - TARGET_EXECUTION_REQUESTED
            - NO_ENABLED_CUSTOM_TRIGGER_FOUND
            - NO_ENABLED_CUSTOM_TRIGGER_FOUND_FOR_ACCOUNT
            - NO_ENABLED_TRIGGER_FOR_PROJECT
            - NO_ENABLED_TRIGGER_FOR_ACCOUNT
            - NO_ENABLED_TRIGGER_FOR_SOURCEREPO_TYPE
            - NO_ENABLED_TRIGGER_FOR_ACCOUNT_SOURCE_REPO
            - NO_MATCHING_TRIGGER_FOR_FILEPATH_CONDITIONS
            - FAILED_TO_FETCH_PR_DETAILS
            - EXCEPTION_WHILE_PROCESSING
            - TRIGGER_CONFIRMATION_SUCCESSFUL
            - TRIGGER_CONFIRMATION_FAILED
            - TRIGGER_AUTHENTICATION_FAILED
            - VALIDATION_FAILED_FOR_TRIGGER
            - ALL_MAPPED_TRIGGER_FAILED_VALIDATION_FOR_POLLING_EVENT
            - NO_MATCHING_TRIGGER_FOR_FOR_EVENT_SIGNATURES
            - NO_MATCHING_TRIGGER_FOR_FOR_EVENT_CONDITION
            - POLLING_EVENT_WITH_NO_VERSIONS
            - NEW_ARTIFACT_EVENT_PROCESSED
            - NEW_MANIFEST_EVENT_PROCESSED
            - SKIPPED
            - QUEUED
            - INVALID_HARNESS_ARTIFACT_REGISTRY_TRIGGER_ACTION
            - NO_TRIGGERS_FOUND_FOR_HARNESS_ARTIFACT_REGISTRY_WEBHOOK
            - HARNESS_ARTIFACT_REGISTRY_WEBHOOK_NOT_EXECUTED
        message:
          type: string
        exceptionOccurred:
          type: boolean
        createdAt:
          type: integer
          format: int64
        triggerEventStatus:
          $ref: '#/components/schemas/TriggerEventStatus'
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        targetIdentifier:
          type: string
        targetExecutionSummary:
          $ref: '#/components/schemas/TargetExecutionSummary'
        type:
          type: string
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        ngTriggerEventInfo:
          $ref: '#/components/schemas/NGTriggerEventInfo'
    NGTriggerEventInfo:
      type: object
    PageNGTriggerEventHistoryDTO:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/NGTriggerEventHistoryDTO'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPageNGTriggerEventHistoryDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageNGTriggerEventHistoryDTO'
        metaData:
          type: object
        correlationId:
          type: string
    TargetExecutionSummary:
      type: object
      properties:
        triggerId:
          type: string
        targetId:
          type: string
        runtimeInput:
          type: string
        planExecutionId:
          type: string
        runSequence:
          type: integer
          format: int32
        executionStatus:
          type: string
        startTs:
          type: integer
          format: int64
    TriggerEventStatus:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - SKIPPED
        message:
          type: string
    NGTriggerEventsApiResponse:
      required:
        - triggerIdentifier
      type: object
      properties:
        triggerIdentifier:
          type: string
        name:
          type: string
        scope:
          $ref: '#/components/schemas/PipelineScope'
        eventCorrelationId:
          type: string
        eventCreatedAt:
          type: integer
          format: int64
        message:
          type: string
        triggerEventStatus:
          $ref: '#/components/schemas/TriggerEventStatus'
        ngTriggerType:
          type: string
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        subTriggerType:
          type: string
        ngTriggerMetaData:
          $ref: '#/components/schemas/NGTriggerMetaData'
    NGTriggerMetaData:
      type: object
      properties:
        pollingDocumentId:
          type: string
          writeOnly: true
        build:
          type: string
          writeOnly: true
    PageNGTriggerEventsApiResponse:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/NGTriggerEventsApiResponse'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPageNGTriggerEventsApiResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageNGTriggerEventsApiResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PipelineScope:
      required:
        - accountIdentifier
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        parentUniqueId:
          type: string
    NGTriggerEventHistoryBaseDTO:
      type: object
      properties:
        triggerIdentifier:
          type: string
        accountId:
          type: string
        eventCorrelationId:
          type: string
        payload:
          type: string
        headers:
          type: object
          additionalProperties:
            type: string
        eventCreatedAt:
          type: integer
          format: int64
        finalStatus:
          type: string
          enum:
            - SCM_SERVICE_CONNECTION_FAILED
            - INVALID_PAYLOAD
            - TRIGGER_DID_NOT_MATCH_EVENT_CONDITION
            - TRIGGER_DID_NOT_MATCH_METADATA_CONDITION
            - TRIGGER_DID_NOT_MATCH_ARTIFACT_JEXL_CONDITION
            - NO_MATCHING_TRIGGER_FOR_REPO
            - NO_MATCHING_TRIGGER_FOR_EVENT_ACTION
            - NO_MATCHING_TRIGGER_FOR_METADATA_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_PAYLOAD_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_JEXL_CONDITIONS
            - NO_MATCHING_TRIGGER_FOR_HEADER_CONDITIONS
            - INVALID_RUNTIME_INPUT_YAML
            - TARGET_DID_NOT_EXECUTE
            - TARGET_EXECUTION_REQUESTED
            - NO_ENABLED_CUSTOM_TRIGGER_FOUND
            - NO_ENABLED_CUSTOM_TRIGGER_FOUND_FOR_ACCOUNT
            - NO_ENABLED_TRIGGER_FOR_PROJECT
            - NO_ENABLED_TRIGGER_FOR_ACCOUNT
            - NO_ENABLED_TRIGGER_FOR_SOURCEREPO_TYPE
            - NO_ENABLED_TRIGGER_FOR_ACCOUNT_SOURCE_REPO
            - NO_MATCHING_TRIGGER_FOR_FILEPATH_CONDITIONS
            - FAILED_TO_FETCH_PR_DETAILS
            - EXCEPTION_WHILE_PROCESSING
            - TRIGGER_CONFIRMATION_SUCCESSFUL
            - TRIGGER_CONFIRMATION_FAILED
            - TRIGGER_AUTHENTICATION_FAILED
            - VALIDATION_FAILED_FOR_TRIGGER
            - ALL_MAPPED_TRIGGER_FAILED_VALIDATION_FOR_POLLING_EVENT
            - NO_MATCHING_TRIGGER_FOR_FOR_EVENT_SIGNATURES
            - NO_MATCHING_TRIGGER_FOR_FOR_EVENT_CONDITION
            - POLLING_EVENT_WITH_NO_VERSIONS
            - NEW_ARTIFACT_EVENT_PROCESSED
            - NEW_MANIFEST_EVENT_PROCESSED
            - SKIPPED
            - QUEUED
            - INVALID_HARNESS_ARTIFACT_REGISTRY_TRIGGER_ACTION
            - NO_TRIGGERS_FOUND_FOR_HARNESS_ARTIFACT_REGISTRY_WEBHOOK
            - HARNESS_ARTIFACT_REGISTRY_WEBHOOK_NOT_EXECUTED
        message:
          type: string
        exceptionOccurred:
          type: boolean
        createdAt:
          type: integer
          format: int64
        triggerEventStatus:
          $ref: '#/components/schemas/TriggerEventStatus'
    PageNGTriggerEventHistoryBaseDTO:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/NGTriggerEventHistoryBaseDTO'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPageNGTriggerEventHistoryBaseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageNGTriggerEventHistoryBaseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    NGTriggerResponse:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        type:
          type: string
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        targetIdentifier:
          type: string
        yaml:
          type: string
        enabled:
          type: boolean
        errors:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: string
        errorResponse:
          type: boolean
        stagesToExecute:
          $ref: '#/components/schemas/ParameterFieldListString'
        yamlVersion:
          type: string
        webhookUrl:
          type: string
      description: This contains the trigger details
    ParameterFieldListString:
      type: object
      properties:
        expressionValue:
          type: string
        expression:
          type: boolean
        value:
          type: array
          items:
            type: string
        defaultValue:
          type: array
          items:
            type: string
        typeString:
          type: boolean
        inputSetValidator:
          $ref: '#/components/schemas/InputSetValidator'
        jsonResponseField:
          type: boolean
        responseField:
          type: string
        executionInput:
          type: boolean
    ResponseDTONGTriggerResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NGTriggerResponse'
        metaData:
          type: object
        correlationId:
          type: string
    BuildDetails:
      type: object
      properties:
        buildType:
          type: string
    LastTriggerExecutionDetails:
      type: object
      properties:
        lastExecutionTime:
          type: integer
          format: int64
        lastExecutionSuccessful:
          type: boolean
        lastExecutionStatus:
          type: string
        planExecutionId:
          type: string
        message:
          type: string
    NGTriggerDetailsResponseDTO:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        type:
          type: string
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        triggerStatus:
          $ref: '#/components/schemas/TriggerStatus'
        lastTriggerExecutionDetails:
          $ref: '#/components/schemas/LastTriggerExecutionDetails'
        webhookDetails:
          $ref: '#/components/schemas/WebhookDetails'
        buildDetails:
          $ref: '#/components/schemas/BuildDetails'
        tags:
          type: object
          additionalProperties:
            type: string
        executions:
          type: array
          items:
            type: integer
            format: int32
        yaml:
          type: string
        webhookUrl:
          type: string
        webhookCurlCommand:
          type: string
        registrationStatus:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - ERROR
            - TIMEOUT
            - UNAVAILABLE
        enabled:
          type: boolean
        isPipelineInputOutdated:
          type: boolean
          writeOnly: true
        yamlVersion:
          type: string
        pipelineInputOutdated:
          type: boolean
    PageResponseNGTriggerDetailsResponseDTO:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/NGTriggerDetailsResponseDTO'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    PollingSubscriptionStatus:
      type: object
      properties:
        statusResult:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - UNKNOWN
            - PENDING
        detailedMessage:
          type: string
        lastPolled:
          type: array
          items:
            type: string
        lastPollingUpdate:
          type: integer
          format: int64
        errorStatusValidUntil:
          type: integer
          format: int64
    ResponseDTOPageResponseNGTriggerDetailsResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseNGTriggerDetailsResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    TriggerStatus:
      type: object
      properties:
        pollingSubscriptionStatus:
          $ref: '#/components/schemas/PollingSubscriptionStatus'
        validationStatus:
          $ref: '#/components/schemas/ValidationStatus'
        webhookAutoRegistrationStatus:
          $ref: '#/components/schemas/WebhookAutoRegistrationStatus'
        webhookInfo:
          $ref: '#/components/schemas/WebhookInfo'
        status:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - UNKNOWN
            - PENDING
        detailMessages:
          type: array
          items:
            type: string
        lastPollingUpdate:
          type: integer
          format: int64
        lastPolled:
          type: array
          items:
            type: string
    ValidationStatus:
      type: object
      properties:
        statusResult:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - UNKNOWN
            - PENDING
        detailedMessage:
          type: string
    WebhookAutoRegistrationStatus:
      type: object
      properties:
        registrationResult:
          type: string
          enum:
            - SUCCESS
            - FAILED
            - ERROR
            - TIMEOUT
            - UNAVAILABLE
        detailedMessage:
          type: string
    WebhookDetails:
      type: object
      properties:
        webhookSecret:
          type: string
        webhookSourceRepo:
          type: string
    WebhookInfo:
      type: object
      properties:
        webhookId:
          type: string
    TriggerFilterProperties:
      required:
        - filterType
      type: object
      properties:
        triggerNames:
          type: array
          description: >-
            This is the list of the Trigger names on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the Trigger names on which the filter will be
              applied.
        triggerIdentifiers:
          type: array
          description: >-
            This is the list of the Trigger identifiers on which the filter will
            be applied.
          items:
            type: string
            description: >-
              This is the list of the Trigger identifiers on which the filter
              will be applied.
        triggerTypes:
          type: array
          description: >-
            This is the list of the Trigger types on which the filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of the Trigger types on which the filter will be
              applied.
            enum:
              - Webhook
              - Artifact
              - Manifest
              - Scheduled
              - MultiRegionArtifact
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
      description: This contains details of the Trigger Filter
    ResponseDTOTriggerCatalogResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TriggerCatalogResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TriggerCatalogItem:
      required:
        - category
        - triggerCatalogType
      type: object
      properties:
        category:
          type: string
          description: Category of this Trigger.
          enum:
            - Webhook
            - Artifact
            - Manifest
            - Scheduled
            - MultiRegionArtifact
        triggerCatalogType:
          type: array
          description: List of Trigger types corresponding to a specific category.
          items:
            type: string
            description: List of Trigger types corresponding to a specific category.
            enum:
              - Github
              - Gitlab
              - Harness
              - Bitbucket
              - AzureRepo
              - Custom
              - EventRelay
              - HarnessArtifactRegistry
              - Gcr
              - Ecr
              - DockerRegistry
              - ArtifactoryRegistry
              - Acr
              - AmazonS3
              - GoogleArtifactRegistry
              - CustomArtifact
              - GithubPackageRegistry
              - Jenkins
              - Nexus3Registry
              - Nexus2Registry
              - AzureArtifacts
              - AmazonMachineImage
              - Bamboo
              - GoogleCloudStorage
              - HelmChart
              - Cron
      description: This has details of the Trigger Catalog.
    TriggerCatalogResponse:
      required:
        - catalog
      type: object
      properties:
        catalog:
          type: array
          description: >-
            List of Trigger category and Trigger types corresponding to a
            specific category.
          items:
            $ref: '#/components/schemas/TriggerCatalogItem'
      description: This has details of the retrieved Trigger Catalog.
    ResponseDTONGTriggerDetailsResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NGTriggerDetailsResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOWebhookEventProcessingDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/WebhookEventProcessingDetails'
        metaData:
          type: object
        correlationId:
          type: string
    WebhookEventProcessingDetails:
      type: object
      properties:
        eventFound:
          type: boolean
        eventId:
          type: string
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        triggerIdentifier:
          type: string
        pipelineIdentifier:
          type: string
        pipelineExecutionId:
          type: string
        exceptionOccured:
          type: boolean
        status:
          type: string
        message:
          type: string
        payload:
          type: string
        eventCreatedAt:
          type: integer
          format: int64
        runtimeInput:
          type: string
        warningMsg:
          type: string
    ResponseDTOWebhookExecutionDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/WebhookExecutionDetails'
        metaData:
          type: object
        correlationId:
          type: string
    WebhookExecutionDetails:
      type: object
      properties:
        webhookProcessingDetails:
          $ref: '#/components/schemas/WebhookEventProcessingDetails'
        executionDetails:
          type: object
        executionUrl:
          type: string
    NGProcessWebhookResponse:
      type: object
      properties:
        eventCorrelationId:
          type: string
        apiUrl:
          type: string
        uiUrl:
          type: string
        uiSetupUrl:
          type: string
      description: This contains details about the triggered webhook
    ResponseDTONGProcessWebhookResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NGProcessWebhookResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ApprovalInstanceDetailsDTO:
      type: object
    ApprovalInstanceResponse:
      required:
        - details
        - id
        - status
        - type
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - HarnessApproval
            - JiraApproval
            - CustomApproval
            - ServiceNowApproval
        status:
          type: string
          enum:
            - WAITING
            - APPROVED
            - REJECTED
            - FAILED
            - ABORTED
            - EXPIRED
        deadline:
          type: integer
          format: int64
        details:
          $ref: '#/components/schemas/ApprovalInstanceDetailsDTO'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        errorMessage:
          type: string
      description: This contains details of Approval Instance response
    ApprovalServiceAccount:
      required:
        - identifier
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the ServiceAccount.
      description: Service Account details used in Approvals.
    ApprovalUserGroup:
      required:
        - identifier
        - name
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        identifier:
          type: string
          description: Identifier of the UserGroup.
        name:
          type: string
          description: Name of the UserGroup.
      description: User Group details used in Approvals.
    ApproverInput:
      required:
        - name
        - value
      type: object
      properties:
        name:
          type: string
        value:
          type: string
      description: Custom data to capture at the time of approval
    ApproverInputInfo:
      required:
        - name
      type: object
      properties:
        name:
          type: string
        defaultValue:
          type: string
        regex:
          type: string
        allowedValues:
          type: array
          items:
            type: string
        selectOneFrom:
          type: array
          items:
            type: string
        required:
          type: boolean
        description:
          type: string
      description: This contains details of Approver Inputs
    Approvers:
      type: object
      properties:
        userGroups:
          type: array
          items:
            type: string
        serviceAccounts:
          type: array
          items:
            type: string
        disallowedUserEmails:
          type: array
          items:
            type: string
        minimumCount:
          type: integer
          format: int32
        disallowPipelineExecutor:
          type: boolean
      description: This contains details of the Approvers
    Auto Approval:
      required:
        - action
        - scheduledDeadline
      type: object
      properties:
        scheduledDeadline:
          $ref: '#/components/schemas/Scheduled Approval'
        action:
          type: string
          enum:
            - APPROVE
        comments:
          type: string
      description: This contains details of the Auto Approval
    Condition:
      required:
        - key
        - operator
        - value
      type: object
      properties:
        key:
          type: string
        value:
          type: string
        operator:
          type: string
          enum:
            - equals
            - not equals
            - in
            - not in
      description: This contains details of the Condition entity in Harness
    CriteriaSpecDTO:
      type: object
    CriteriaSpecWrapper:
      required:
        - spec
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Jexl
            - KeyValues
        spec:
          $ref: '#/components/schemas/CriteriaSpecDTO'
      description: This contains details of Criteria Specifications such as Criteria Type
    HarnessApprovalActivity:
      required:
        - action
        - user
      type: object
      properties:
        user:
          $ref: '#/components/schemas/EmbeddedUser'
        action:
          type: string
          enum:
            - APPROVE
            - REJECT
        approverInputs:
          type: array
          items:
            $ref: '#/components/schemas/ApproverInput'
        comments:
          type: string
        approvedAt:
          type: integer
          format: int64
    HarnessApprovalInstanceDetails:
      required:
        - approvers
      type: object
      description: This contains details of Harness Approval Instance
      allOf:
        - $ref: '#/components/schemas/ApprovalInstanceDetailsDTO'
        - type: object
          properties:
            approvalMessage:
              type: string
            includePipelineExecutionHistory:
              type: boolean
            approvers:
              $ref: '#/components/schemas/Approvers'
            approvalActivities:
              type: array
              items:
                $ref: '#/components/schemas/HarnessApprovalActivity'
            autoApprovalParams:
              $ref: '#/components/schemas/Auto Approval'
            approverInputs:
              type: array
              items:
                $ref: '#/components/schemas/ApproverInputInfo'
            validatedApprovalUserGroups:
              type: array
              items:
                $ref: '#/components/schemas/ApprovalUserGroup'
            validatedApprovalServiceAccounts:
              type: array
              items:
                $ref: '#/components/schemas/ApprovalServiceAccount'
            isAutoRejectEnabled:
              type: boolean
              writeOnly: true
            autoRejectEnabled:
              type: boolean
    JexlCriteriaSpec:
      required:
        - expression
      type: object
      description: This contains details of the Jexl Criteria
      allOf:
        - $ref: '#/components/schemas/CriteriaSpecDTO'
        - type: object
          properties:
            expression:
              type: string
    JiraApprovalInstanceDetails:
      required:
        - approvalCriteria
        - connectorRef
        - issue
        - rejectionCriteria
      type: object
      description: This contains details of Jira Approval Instance
      allOf:
        - $ref: '#/components/schemas/ApprovalInstanceDetailsDTO'
        - type: object
          properties:
            connectorRef:
              type: string
            issue:
              $ref: '#/components/schemas/JiraIssueKeyNG'
            approvalCriteria:
              $ref: '#/components/schemas/CriteriaSpecWrapper'
            rejectionCriteria:
              $ref: '#/components/schemas/CriteriaSpecWrapper'
            retryInterval:
              type: string
            latestDelegateTaskId:
              type: string
            delegateTaskName:
              type: string
    JiraIssueKeyNG:
      required:
        - key
        - url
      type: object
      properties:
        url:
          type: string
        key:
          type: string
        ticketFields:
          type: object
          additionalProperties:
            type: object
    KeyValuesCriteriaSpec:
      required:
        - conditions
      type: object
      description: This contains details of Key-Value Criteria specifications
      allOf:
        - $ref: '#/components/schemas/CriteriaSpecDTO'
        - type: object
          properties:
            matchAnyCondition:
              type: boolean
            conditions:
              type: array
              items:
                $ref: '#/components/schemas/Condition'
    ResponseDTOApprovalInstanceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ApprovalInstanceResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Scheduled Approval:
      required:
        - time
        - timeZone
      type: object
      properties:
        timeZone:
          type: string
        time:
          type: string
      description: This contains details of the Scheduled Approval
    ServiceNowApprovalInstanceDetails:
      required:
        - approvalCriteria
        - connectorRef
        - ticket
      type: object
      description: This contains details of ServiceNow Approval Instance
      allOf:
        - $ref: '#/components/schemas/ApprovalInstanceDetailsDTO'
        - type: object
          properties:
            connectorRef:
              type: string
            ticket:
              $ref: '#/components/schemas/ServiceNowTicketKeyNG'
            approvalCriteria:
              $ref: '#/components/schemas/CriteriaSpecWrapper'
            rejectionCriteria:
              $ref: '#/components/schemas/CriteriaSpecWrapper'
            changeWindowSpec:
              $ref: '#/components/schemas/ServiceNowChangeWindowSpec'
            retryInterval:
              type: string
            latestDelegateTaskId:
              type: string
            delegateTaskName:
              type: string
    ServiceNowChangeWindowSpec:
      required:
        - endField
        - startField
      type: object
      properties:
        startField:
          type: string
        endField:
          type: string
      description: This contains details of the ServiceNow ChangeWindow
    ServiceNowTicketKeyNG:
      required:
        - key
        - ticketType
        - url
      type: object
      properties:
        url:
          type: string
        key:
          type: string
        ticketType:
          type: string
        ticketFields:
          type: object
          additionalProperties:
            type: string
    HarnessApprovalActivityRequest:
      required:
        - action
      type: object
      properties:
        action:
          type: string
          description: Approval activity action
          enum:
            - APPROVE
            - REJECT
        approverInputs:
          type: array
          description: Custom data to capture at the time of approval
          items:
            $ref: '#/components/schemas/ApproverInput'
        comments:
          type: string
          description: Approval activity with the comment
        autoApprove:
          type: boolean
      description: Details of approval activity requested
    DashboardPipelineExecution:
      type: object
      properties:
        pipelineExecutionInfoList:
          type: array
          items:
            $ref: '#/components/schemas/PipelineExecution'
      description: >-
        This is the view of the Pipeline Executions for given Time Interval
        presented in day wise format
    PipelineCount:
      type: object
      properties:
        total:
          type: integer
          format: int64
        success:
          type: integer
          format: int64
        failure:
          type: integer
          format: int64
        expired:
          type: integer
          format: int64
        aborted:
          type: integer
          format: int64
      description: >-
        This is the view of the Pipeline Execution Count Info for a particular
        Date
    PipelineExecution:
      type: object
      properties:
        date:
          type: integer
          format: int64
        count:
          $ref: '#/components/schemas/PipelineCount'
      description: This is the view of the Pipeline Executions for a particular Date
    ResponseDTODashboardPipelineExecution:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/DashboardPipelineExecution'
        metaData:
          type: object
        correlationId:
          type: string
    RestResponseInteger:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: integer
          format: int32
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    PipelineEntityGitDetails:
      type: object
      properties:
        valid:
          type: boolean
          description: Indicates if the Entity is valid
        invalidYaml:
          type: string
          description: This has the Git File content if the entity is invalid
      description: This contains Validity Details of the Entity
    PipelineInputSetError:
      type: object
      properties:
        fieldName:
          type: string
          description: Name of the field that has the error
        message:
          type: string
          description: Error message for this field
        identifierOfErrorSource:
          type: string
          description: Identifier of the Input Set from which this field is from
      description: This contains the error details for a field while saving an Input Set
    InputSetErrorWrapper:
      type: object
      properties:
        errorPipelineYaml:
          type: string
          description: >-
            If an Input Set save fails, this field contains the error fields,
            with the field values replaced with a UUID
        uuidToErrorResponseMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InputSetErrorWrapper'
          description: >-
            If an Input Set save fails, this field contains the map from FQN to
            why that FQN threw an error
        invalidInputSetReferences:
          type: array
          description: List of Input Sets that are invalid
          items:
            type: string
            description: List of Input Sets that are invalid
        type:
          type: string
      description: This contains the error response if the Input Set save failed
    InputSetResponse:
      type: object
      properties:
        accountId:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        pipelineIdentifier:
          type: string
          description: Pipeline Identifier for the entity.
        identifier:
          type: string
          description: Input Set Identifier
        inputSetYaml:
          type: string
          description: Input Set YAML
        name:
          type: string
          description: Input Set Name
        description:
          type: string
          description: Input Set description
        tags:
          type: object
          additionalProperties:
            type: string
            description: Input Set tags
          description: Input Set tags
        isOutdated:
          type: boolean
          writeOnly: true
        isErrorResponse:
          type: boolean
          writeOnly: true
        inputSetErrorWrapper:
          $ref: '#/components/schemas/InputSetErrorWrapper'
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        outdated:
          type: boolean
        errorResponse:
          type: boolean
      description: This contains Input Set details.
    ResponseDTOInputSetResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InputSetResponse'
        metaData:
          type: object
        correlationId:
          type: string
    OverlayInputSetResponse:
      type: object
      properties:
        accountId:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        pipelineIdentifier:
          type: string
          description: Pipeline Identifier for the entity.
        identifier:
          type: string
          description: Input Set Identifier
        name:
          type: string
          description: Input Set Name
        description:
          type: string
          description: Input Set description
        inputSetReferences:
          type: array
          description: Input Set References in the Overlay Input Set
          items:
            type: string
            description: Input Set References in the Overlay Input Set
        overlayInputSetYaml:
          type: string
          description: Overlay Input Set YAML
        tags:
          type: object
          additionalProperties:
            type: string
            description: Input Set tags
          description: Input Set tags
        isOutdated:
          type: boolean
          writeOnly: true
        isErrorResponse:
          type: boolean
          writeOnly: true
        invalidInputSetReferences:
          type: object
          additionalProperties:
            type: string
            description: >-
              This contains the invalid references in the Overlay Input Set,
              along with a message why they are invalid
          description: >-
            This contains the invalid references in the Overlay Input Set, along
            with a message why they are invalid
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        outdated:
          type: boolean
        errorResponse:
          type: boolean
      description: This contains Overlay Input Set details.
    ResponseDTOOverlayInputSetResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/OverlayInputSetResponse'
        metaData:
          type: object
        correlationId:
          type: string
    InputSetListResponse:
      type: object
      properties:
        identifier:
          type: string
          description: Input Set Identifier
        name:
          type: string
          description: Input Set Name
        pipelineIdentifier:
          type: string
          description: Pipeline Identifier for the entity.
        inputSetIdWithPipelineId:
          type: string
          description: InputSet Identifier prefixed with Pipeline Identifier.
        description:
          type: string
          description: Input Set description
        inputSetType:
          type: string
          description: Type of Input Set. The default value is ALL.
          enum:
            - INPUT_SET
            - OVERLAY_INPUT_SET
      description: This is the response of InputSet list call.
    PageResponseInputSetListResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/InputSetListResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseInputSetListResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseInputSetListResponse'
        metaData:
          type: object
        correlationId:
          type: string
    BatchInputSetsAPIRequest:
      required:
        - pipelineIdentifiers
      type: object
      properties:
        pipelineIdentifiers:
          type: array
          items:
            type: string
    BulkInputSetsAPIResponse:
      type: object
      properties:
        inputSets:
          type: array
          items:
            $ref: '#/components/schemas/InputSetSummaryResponse'
    InputSetSummaryResponse:
      type: object
      properties:
        identifier:
          type: string
          description: Input Set Identifier
        name:
          type: string
          description: Input Set Name
        pipelineIdentifier:
          type: string
          description: Pipeline Identifier for the entity.
        description:
          type: string
          description: Input Set description
        inputSetType:
          type: string
          description: Type of Input Set. The default value is ALL.
          enum:
            - INPUT_SET
            - OVERLAY_INPUT_SET
        tags:
          type: object
          additionalProperties:
            type: string
            description: Input Set tags
          description: Input Set tags
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        isOutdated:
          type: boolean
          description: >-
            This field is true if a Pipeline update has made this Input Set
            invalid, and cannot be used for Pipeline Execution
        inputSetErrorDetails:
          $ref: '#/components/schemas/InputSetErrorWrapper'
        overlaySetErrorDetails:
          type: object
          additionalProperties:
            type: string
            description: >-
              This contains the invalid references in the Overlay Input Set,
              along with a message why they are invalid
          description: >-
            This contains the invalid references in the Overlay Input Set, along
            with a message why they are invalid
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        modules:
          uniqueItems: true
          type: array
          description: Modules in which the Pipeline belongs
          items:
            type: string
            description: Modules in which the Pipeline belongs
      description: This is the view of the Input Set Summary.
    ResponseDTOBulkInputSetsAPIResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/BulkInputSetsAPIResponse'
        metaData:
          type: object
        correlationId:
          type: string
    BulkInputSetsAPIRequest:
      required:
        - inputSetIdentifiers
      type: object
      properties:
        inputSetIdentifiers:
          type: array
          items:
            type: string
    MergeInputSetResponse:
      type: object
      properties:
        pipelineYaml:
          type: string
          description: Merged YAML of all the Input Sets
        completePipelineYaml:
          type: string
          description: Pipeline YAML after merging with the Input Sets
        isErrorResponse:
          type: boolean
          writeOnly: true
        inputSetErrorWrapper:
          $ref: '#/components/schemas/InputSetErrorWrapper'
        errorResponse:
          type: boolean
      description: View of the Response of Merging of Input Sets of a Pipeline
    ResponseDTOMergeInputSetResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/MergeInputSetResponse'
        metaData:
          type: object
        correlationId:
          type: string
    MergeInputSetRequest:
      type: object
      properties:
        inputSetReferences:
          type: array
          description: List of Input Set References to be merged
          items:
            type: string
            description: List of Input Set References to be merged
        withMergedPipelineYaml:
          type: boolean
          description: >-
            This is a boolean value that indicates if the response must contain
            the YAML for the merged Pipeline. The default value is False.
        stageIdentifiers:
          type: array
          description: >-
            List of Stage Ids. Input Sets corresponding to these Ids will be
            merged.
          items:
            type: string
            description: >-
              List of Stage Ids. Input Sets corresponding to these Ids will be
              merged.
        lastYamlToMerge:
          type: string
          description: >-
            Runtime Input Yaml needed to be merged into the result of the merged
            Yaml of the inputSetReferences
      description: Contains list of Input Set references and Stage Ids
    EntityInputsMetadata:
      type: object
      properties:
        identifier:
          type: string
        entityType:
          type: string
        inputsMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/InputsMetadata'
      description: Metadata for runtime input for Entities.
    InputSetTemplateWithReplacedExpressionsResponse:
      type: object
      properties:
        inputSetTemplateYaml:
          type: string
          description: Runtime Input template for the Pipeline
        replacedExpressions:
          type: array
          description: >-
            List of Expressions that need to be replaced for running selected
            Stages. Empty if the full Pipeline is being run or no expressions
            need to be replaced
          items:
            type: string
            description: >-
              List of Expressions that need to be replaced for running selected
              Stages. Empty if the full Pipeline is being run or no expressions
              need to be replaced
        modules:
          uniqueItems: true
          type: array
          description: Modules in which the Pipeline belongs
          items:
            type: string
            description: Modules in which the Pipeline belongs
        hasInputSets:
          type: boolean
          description: Tells whether there are any Input Sets for this Pipeline or not.
        replacedExpressionsPerStage:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        inputsMetadata:
          type: array
          description: Metadata for runtime input for Entities.
          items:
            $ref: '#/components/schemas/EntityInputsMetadata'
      description: This is the Runtime Input Template for a Pipeline defined in Harness.
    InputsMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        description:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/InputsMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserInputsMetadata'
        serializedSize:
          type: integer
          format: int32
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        required:
          type: boolean
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ParserInputsMetadata:
      type: object
    ResponseDTOInputSetTemplateWithReplacedExpressionsResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InputSetTemplateWithReplacedExpressionsResponse'
        metaData:
          type: object
        correlationId:
          type: string
    EntityWithGitInfo:
      required:
        - ref
      type: object
      properties:
        ref:
          type: string
        branch:
          type: string
      description: >-
        Map of Service identifiers with their gitBranch for which the Runtime
        Input Metadata is needed
    InputSetTemplateRequest:
      type: object
      properties:
        stageIdentifiers:
          type: array
          description: >-
            List of Stage identifiers for which the Runtime Input template is
            needed
          items:
            type: string
            description: >-
              List of Stage identifiers for which the Runtime Input template is
              needed
        serviceWithGitInfoList:
          type: array
          description: >-
            Map of Service identifiers with their gitBranch for which the
            Runtime Input Metadata is needed
          items:
            $ref: '#/components/schemas/EntityWithGitInfo'
      description: Contains Stage Identifiers to filter Runtime Input Template.
    PageResponseInputSetSummaryResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/InputSetSummaryResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseInputSetSummaryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseInputSetSummaryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    InputSetGitUpdateResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of updated input-set
      description: Contains info about input-set that is updated.
    ResponseDTOInputSetGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InputSetGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PipelineGovernanceMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        message:
          type: string
        id:
          type: string
        type:
          type: string
        timestamp:
          type: integer
          format: int64
        status:
          type: string
        action:
          type: string
        entity:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PipelineGovernanceMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserGovernanceMetadata'
        serializedSize:
          type: integer
          format: int32
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        deny:
          type: boolean
        detailsList:
          type: array
          items:
            $ref: '#/components/schemas/PipelinePolicySetMetadata'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        detailsCount:
          type: integer
          format: int32
        detailsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PipelinePolicySetMetadataOrBuilder'
        entityBytes:
          $ref: '#/components/schemas/ByteString'
        actionBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PipelineSaveResponse:
      type: object
      properties:
        identifier:
          type: string
        governanceMetadata:
          $ref: '#/components/schemas/PipelineGovernanceMetadata'
        publicAccessResponse:
          $ref: '#/components/schemas/PublicAccessResponse'
      description: Contains the Pipeline details for the given Pipeline ID
    PipelinePolicyMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        severity:
          type: string
        status:
          type: string
        error:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PipelinePolicyMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicyMetadata'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyId:
          type: string
        policyName:
          type: string
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        denyMessagesCount:
          type: integer
          format: int32
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PipelinePolicySetMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        description:
          type: string
        status:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PipelinePolicySetMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicySetMetadata'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/PipelinePolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PipelinePolicySetMetadataOrBuilder:
      type: object
      properties:
        description:
          type: string
        status:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/PipelinePolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    PublicAccessResponse:
      type: object
      properties:
        isPublic:
          type: boolean
          writeOnly: true
        errorMessage:
          type: string
        public:
          type: boolean
    ResponseDTOPipelineSaveResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PipelineSaveResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ExecutionSummaryInfo:
      type: object
      properties:
        numOfErrors:
          type: array
          items:
            type: integer
            format: int32
        deployments:
          type: array
          items:
            type: integer
            format: int32
        lastExecutionTs:
          type: integer
          format: int64
        lastExecutionStatus:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        lastExecutionId:
          type: string
      description: This is the view of the Execution Summary
    PMSPipelineSummaryResponse:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        version:
          type: integer
          format: int64
        numOfStages:
          type: integer
          format: int32
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        modules:
          uniqueItems: true
          type: array
          items:
            type: string
        executionSummaryInfo:
          $ref: '#/components/schemas/ExecutionSummaryInfo'
        filters:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: object
        stageNames:
          type: array
          items:
            type: string
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        connectorRef:
          type: string
        isDraft:
          type: boolean
        yamlVersion:
          type: string
        isInlineHCEntity:
          type: boolean
      description: >-
        This is the view of the Pipeline Summary for Pipeline entity defined in
        Harness.
    PagePMSPipelineSummaryResponse:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/PMSPipelineSummaryResponse'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPagePMSPipelineSummaryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PagePMSPipelineSummaryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Document:
      type: object
      properties:
        empty:
          type: boolean
      additionalProperties:
        type: object
        description: These are the Module Properties on which the filter will be applied.
      description: These are the Module Properties on which the filter will be applied.
    PipelineFilterProperties:
      required:
        - filterType
      type: object
      properties:
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
        pipelineTags:
          type: array
          description: >-
            This is the list of the Pipeline Tags on which the filter will be
            applied.
          items:
            $ref: '#/components/schemas/NGTag'
        pipelineIdentifiers:
          type: array
          description: >-
            This is the list of the Pipeline Identifiers on which the filter
            will be applied.
          items:
            type: string
            description: >-
              This is the list of the Pipeline Identifiers on which the filter
              will be applied.
        name:
          type: string
          description: This is the Pipeline Name on which the filter will be applied.
        description:
          type: string
          description: >-
            This is the Pipeline Description on which the filter will be
            applied.
        moduleProperties:
          type: object
          properties:
            empty:
              type: boolean
          additionalProperties:
            type: object
            description: >-
              These are the Module Properties on which the filter will be
              applied.
          description: These are the Module Properties on which the filter will be applied.
        repoName:
          type: string
          description: >-
            This is the Pipeline repo filter on which the filter will be
            applied.
      description: Properties of the Pipelines Filter defined in Harness
    CacheResponseMetadata:
      required:
        - cacheState
        - isSyncEnabled
        - lastUpdatedAt
        - ttlLeft
      type: object
      properties:
        cacheState:
          type: string
          enum:
            - VALID_CACHE
            - STALE_CACHE
            - UNKNOWN
        ttlLeft:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        isSyncEnabled:
          type: boolean
      description: This tells the state of the cache from which the template was fetched.
    ErrorNodeSummary:
      type: object
      properties:
        nodeInfo:
          $ref: '#/components/schemas/PipelineNodeInfo'
        templateInfo:
          $ref: '#/components/schemas/TemplateInfo'
        templateResponse:
          $ref: '#/components/schemas/PipelineTemplateResponse'
        childrenErrorNodes:
          type: array
          items:
            $ref: '#/components/schemas/ErrorNodeSummary'
    NodeErrorInfo:
      type: object
      properties:
        identifier:
          type: string
        type:
          type: string
        name:
          type: string
        fqn:
          type: string
    PipelineNodeInfo:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        localFqn:
          type: string
    PMSPipelineResponse:
      type: object
      properties:
        yamlPipeline:
          type: string
        resolvedTemplatesPipelineYaml:
          type: string
          description: Pipeline YAML after resolving templates
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        modules:
          uniqueItems: true
          type: array
          items:
            type: string
        governanceMetadata:
          $ref: '#/components/schemas/PipelineGovernanceMetadata'
        yamlSchemaErrorWrapper:
          $ref: '#/components/schemas/YamlSchemaErrorWrapperDTO'
        validateTemplateInputsResponse:
          $ref: '#/components/schemas/ValidateTemplateInputsResponseDTO'
        cacheResponse:
          $ref: '#/components/schemas/CacheResponseMetadata'
        validationUuid:
          type: string
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        publicAccessResponse:
          $ref: '#/components/schemas/PublicAccessResponse'
        connectorRef:
          type: string
        allowDynamicExecutions:
          type: boolean
        isInlineHCEntity:
          type: boolean
      description: This contains pipeline yaml with the version.
    ResponseDTOPMSPipelineResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PMSPipelineResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateInfo:
      type: object
      properties:
        templateIdentifier:
          type: string
        versionLabel:
          type: string
        templateEntityType:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
            - ArtifactSource
            - StepGroup
            - Workspace
            - Notification
    PipelineTemplateResponse:
      required:
        - accountId
        - identifier
        - name
        - yaml
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        yaml:
          type: string
        mergedYaml:
          type: string
        versionLabel:
          type: string
        isStableTemplate:
          type: boolean
          writeOnly: true
        templateEntityType:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
            - ArtifactSource
            - StepGroup
            - Workspace
            - Notification
        childType:
          type: string
        templateScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        version:
          type: integer
          format: int64
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        lastUpdatedAt:
          type: integer
          format: int64
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        connectorRef:
          type: string
        icon:
          type: string
        cacheResponseMetadata:
          $ref: '#/components/schemas/CacheResponseMetadata'
        yamlVersion:
          type: string
        bulkReconcileUUID:
          type: string
        hasInsert:
          type: boolean
        isInlineHCEntity:
          type: boolean
        stableTemplate:
          type: boolean
      description: This contains details of the Template Response
    ValidateTemplateInputsResponseDTO:
      type: object
      properties:
        validYaml:
          type: boolean
        errorNodeSummary:
          $ref: '#/components/schemas/TemplateErrorNodeSummary'
        type:
          type: string
    YamlSchemaErrorDTO:
      type: object
      properties:
        message:
          type: string
        messageWithFQN:
          type: string
        stageInfo:
          $ref: '#/components/schemas/NodeErrorInfo'
        stepInfo:
          $ref: '#/components/schemas/NodeErrorInfo'
        fqn:
          type: string
        hintMessage:
          type: string
    YamlSchemaErrorWrapperDTO:
      type: object
      properties:
        schemaErrors:
          type: array
          items:
            $ref: '#/components/schemas/YamlSchemaErrorDTO'
        type:
          type: string
    ResponseDTOPMSPipelineSummaryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PMSPipelineSummaryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PipelineImportRequest:
      type: object
      properties:
        pipelineName:
          type: string
          description: Expected Name of the Pipeline to be imported
        pipelineDescription:
          type: string
          description: Expected Description of the Pipeline to be imported
        version:
          type: string
          description: YAML Version of the Pipeline
      description: >-
        Contains basic information required to be linked with imported Pipeline
        YAML
    PMSGitUpdateResponse:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of updated pipeline
      description: Contains info about pipeline that is updated.
    ResponseDTOPMSGitUpdateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PMSGitUpdateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    AbortedBy:
      type: object
      properties:
        email:
          type: string
          description: Email id of the user who aborted the pipeline
        userName:
          type: string
          description: User name of the user who aborted the pipeline
        createdAt:
          type: integer
          description: Timestamp when user aborted the pipeline
          format: int64
      description: This contains info of the user who aborted the pipeline
    AdviserIssuer:
      required:
        - adviseType
      type: object
      properties:
        adviseType:
          type: string
          enum:
            - UNKNOWN
            - NEXT_STEP
            - RETRY
            - INTERVENTION_WAIT
            - END_PLAN
            - MARK_SUCCESS
            - IGNORE_FAILURE
            - PROCEED_WITH_DEFAULT
            - MARK_AS_FAILURE
            - UNRECOGNIZED
    AsyncChainExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        chainEnd:
          type: boolean
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        callbackIdBytes:
          $ref: '#/components/schemas/ByteString'
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        timeout:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/AsyncChainExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserAsyncChainExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        statusValue:
          type: integer
          format: int32
        callbackIdsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        callbackId:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    AsyncChainExecutableResponseOrBuilder:
      type: object
      properties:
        chainEnd:
          type: boolean
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        callbackIdBytes:
          $ref: '#/components/schemas/ByteString'
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        timeout:
          type: integer
          format: int32
        statusValue:
          type: integer
          format: int32
        callbackIdsList:
          type: array
          items:
            type: string
        callbackId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    AsyncExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        timeout:
          type: integer
          format: int64
        defaultInstanceForType:
          $ref: '#/components/schemas/AsyncExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserAsyncExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        statusValue:
          type: integer
          format: int32
        callbackIdsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    AsyncExecutableResponseOrBuilder:
      type: object
      properties:
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        timeout:
          type: integer
          format: int64
        statusValue:
          type: integer
          format: int32
        callbackIdsList:
          type: array
          items:
            type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    BuildInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        imagePathBytes:
          $ref: '#/components/schemas/ByteString'
        buildBytes:
          $ref: '#/components/schemas/ByteString'
        imagePath:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/BuildInfo'
        parserForType:
          $ref: '#/components/schemas/ParserBuildInfo'
        serializedSize:
          type: integer
          format: int32
        build:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    BuildInfoOrBuilder:
      type: object
      properties:
        imagePathBytes:
          $ref: '#/components/schemas/ByteString'
        buildBytes:
          $ref: '#/components/schemas/ByteString'
        imagePath:
          type: string
        build:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Child:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        strategyMetadataOrBuilder:
          $ref: '#/components/schemas/StrategyMetadataOrBuilder'
        childNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/Child'
        parserForType:
          $ref: '#/components/schemas/ParserChild'
        serializedSize:
          type: integer
          format: int32
        childNodeId:
          type: string
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ChildChainExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        lastLink:
          type: boolean
        suspend:
          type: boolean
        previousChildId:
          type: string
        previousChildIdBytes:
          $ref: '#/components/schemas/ByteString'
        nextChildId:
          type: string
        nextChildIdBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/ChildChainExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserChildChainExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ChildChainExecutableResponseOrBuilder:
      type: object
      properties:
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        lastLink:
          type: boolean
        suspend:
          type: boolean
        previousChildId:
          type: string
        previousChildIdBytes:
          $ref: '#/components/schemas/ByteString'
        nextChildId:
          type: string
        nextChildIdBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ChildExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        childNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/ChildExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserChildExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        childNodeId:
          type: string
        skip:
          type: boolean
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ChildExecutableResponseOrBuilder:
      type: object
      properties:
        childNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        childNodeId:
          type: string
        skip:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ChildExecutionDetail:
      type: object
      properties:
        pipelineExecutionSummary:
          $ref: '#/components/schemas/PipelineExecutionSummary'
        executionGraph:
          $ref: '#/components/schemas/ExecutionGraph'
      description: This contains the Pipeline Execution details of Child Pipeline
    ChildOrBuilder:
      type: object
      properties:
        strategyMetadataOrBuilder:
          $ref: '#/components/schemas/StrategyMetadataOrBuilder'
        childNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        childNodeId:
          type: string
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ChildrenExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        childrenList:
          type: array
          items:
            $ref: '#/components/schemas/Child'
        childrenCount:
          type: integer
          format: int32
        childrenOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ChildOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/ChildrenExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserChildrenExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        shouldProceedIfFailed:
          type: boolean
        maxConcurrency:
          type: integer
          format: int64
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ChildrenExecutableResponseOrBuilder:
      type: object
      properties:
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        childrenList:
          type: array
          items:
            $ref: '#/components/schemas/Child'
        childrenCount:
          type: integer
          format: int32
        childrenOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ChildOrBuilder'
        shouldProceedIfFailed:
          type: boolean
        maxConcurrency:
          type: integer
          format: int64
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    DelegateInfo:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        taskId:
          type: string
        taskName:
          type: string
    EdgeLayoutList:
      type: object
      properties:
        currentNodeChildren:
          type: array
          items:
            type: string
        nextIds:
          type: array
          items:
            type: string
      description: This contains info about the Layout of the Graph
    ExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        child:
          $ref: '#/components/schemas/ChildExecutableResponse'
        children:
          $ref: '#/components/schemas/ChildrenExecutableResponse'
        async:
          $ref: '#/components/schemas/AsyncExecutableResponse'
        defaultInstanceForType:
          $ref: '#/components/schemas/ExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        childOrBuilder:
          $ref: '#/components/schemas/ChildExecutableResponseOrBuilder'
        childrenOrBuilder:
          $ref: '#/components/schemas/ChildrenExecutableResponseOrBuilder'
        childChain:
          $ref: '#/components/schemas/ChildChainExecutableResponse'
        childChainOrBuilder:
          $ref: '#/components/schemas/ChildChainExecutableResponseOrBuilder'
        taskOrBuilder:
          $ref: '#/components/schemas/TaskExecutableResponseOrBuilder'
        taskChain:
          $ref: '#/components/schemas/TaskChainExecutableResponse'
        taskChainOrBuilder:
          $ref: '#/components/schemas/TaskChainExecutableResponseOrBuilder'
        sync:
          $ref: '#/components/schemas/SyncExecutableResponse'
        syncOrBuilder:
          $ref: '#/components/schemas/SyncExecutableResponseOrBuilder'
        skipTask:
          $ref: '#/components/schemas/SkipTaskExecutableResponse'
        skipTaskOrBuilder:
          $ref: '#/components/schemas/SkipTaskExecutableResponseOrBuilder'
        asyncChain:
          $ref: '#/components/schemas/AsyncChainExecutableResponse'
        asyncChainOrBuilder:
          $ref: '#/components/schemas/AsyncChainExecutableResponseOrBuilder'
        facilitator:
          $ref: '#/components/schemas/FacilitatorExecutableResponse'
        facilitatorOrBuilder:
          $ref: '#/components/schemas/FacilitatorExecutableResponseOrBuilder'
        responseCase:
          type: string
          enum:
            - ASYNC
            - CHILD
            - CHILDREN
            - CHILDCHAIN
            - TASK
            - TASKCHAIN
            - SYNC
            - SKIPTASK
            - ASYNCCHAIN
            - FACILITATOR
            - RESPONSE_NOT_SET
        asyncOrBuilder:
          $ref: '#/components/schemas/AsyncExecutableResponseOrBuilder'
        initialized:
          type: boolean
        task:
          $ref: '#/components/schemas/TaskExecutableResponse'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExecutionErrorInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        message:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/ExecutionErrorInfo'
        parserForType:
          $ref: '#/components/schemas/ParserExecutionErrorInfo'
        serializedSize:
          type: integer
          format: int32
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExecutionGraph:
      type: object
      properties:
        rootNodeId:
          type: string
        nodeMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ExecutionNode'
        nodeAdjacencyListMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ExecutionNodeAdjacencyList'
        executionMetadata:
          type: object
          additionalProperties:
            type: string
        representationStrategy:
          type: string
          enum:
            - camelCase
    ExecutionNode:
      type: object
      properties:
        uuid:
          type: string
        setupId:
          type: string
        name:
          type: string
        identifier:
          type: string
        baseFqn:
          type: string
        outcomes:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/OrchestrationMap'
        stepParameters:
          $ref: '#/components/schemas/OrchestrationMap'
        createdAt:
          type: integer
          format: int64
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        stepType:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        failureInfo:
          $ref: '#/components/schemas/FailureInfoDTO'
        skipInfo:
          $ref: '#/components/schemas/SkipInfo'
        nodeRunInfo:
          $ref: '#/components/schemas/NodeRunInfo'
        retryNodeMetadata:
          $ref: '#/components/schemas/RetryNodeMetadata'
        executableResponses:
          type: array
          items:
            $ref: '#/components/schemas/ExecutableResponse'
        unitProgresses:
          type: array
          items:
            $ref: '#/components/schemas/UnitProgress'
        progressData:
          $ref: '#/components/schemas/OrchestrationMap'
        delegateInfoList:
          type: array
          items:
            $ref: '#/components/schemas/DelegateInfo'
        interruptHistories:
          type: array
          items:
            $ref: '#/components/schemas/InterruptEffectDTO'
        stepDetails:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/OrchestrationMap'
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        executionInputConfigured:
          type: boolean
        logBaseKey:
          type: string
        manualInterventionAvailableActions:
          type: array
          items:
            type: string
            enum:
              - UNKNOWN
              - RETRY
              - MANUAL_INTERVENTION
              - IGNORE
              - END_EXECUTION
              - MARK_AS_SUCCESS
              - ON_FAIL
              - STAGE_ROLLBACK
              - STEP_GROUP_ROLLBACK
              - CUSTOM_FAILURE
              - MARK_AS_FAILURE
              - PIPELINE_ROLLBACK
              - UNRECOGNIZED
    ExecutionNodeAdjacencyList:
      type: object
      properties:
        children:
          type: array
          items:
            type: string
        nextIds:
          type: array
          items:
            type: string
    ExecutionTriggerInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
        parserForType:
          $ref: '#/components/schemas/ParserExecutionTriggerInfo'
        serializedSize:
          type: integer
          format: int32
        triggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        triggeredBy:
          $ref: '#/components/schemas/TriggeredBy'
        triggeredByOrBuilder:
          $ref: '#/components/schemas/TriggeredByOrBuilder'
        isRerun:
          type: boolean
        rerunInfo:
          $ref: '#/components/schemas/RerunInfo'
        rerunInfoOrBuilder:
          $ref: '#/components/schemas/RerunInfoOrBuilder'
        buildInfo:
          $ref: '#/components/schemas/BuildInfo'
        buildInfoOrBuilder:
          $ref: '#/components/schemas/BuildInfoOrBuilder'
        triggerTypeValue:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExpressionBlock:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        expressionBytes:
          $ref: '#/components/schemas/ByteString'
        expressionValueBytes:
          $ref: '#/components/schemas/ByteString'
        count:
          type: integer
          format: int32
        expression:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/ExpressionBlock'
        parserForType:
          $ref: '#/components/schemas/ParserExpressionBlock'
        serializedSize:
          type: integer
          format: int32
        expressionValue:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExpressionBlockOrBuilder:
      type: object
      properties:
        expressionBytes:
          $ref: '#/components/schemas/ByteString'
        expressionValueBytes:
          $ref: '#/components/schemas/ByteString'
        count:
          type: integer
          format: int32
        expression:
          type: string
        expressionValue:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    FacilitatorExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        type:
          type: string
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/FacilitatorExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserFacilitatorExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        statusValue:
          type: integer
          format: int32
        startTs:
          type: integer
          format: int64
        callbackIdsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        timeoutInSeconds:
          type: integer
          format: int64
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FacilitatorExecutableResponseOrBuilder:
      type: object
      properties:
        type:
          type: string
        callbackIdsCount:
          type: integer
          format: int32
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        statusValue:
          type: integer
          format: int32
        startTs:
          type: integer
          format: int64
        callbackIdsList:
          type: array
          items:
            type: string
        timeoutInSeconds:
          type: integer
          format: int64
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    FailureInfoDTO:
      type: object
      properties:
        message:
          type: string
        failureTypeList:
          type: array
          items:
            type: string
            enum:
              - EXPIRED
              - DELEGATE_PROVISIONING
              - CONNECTIVITY
              - AUTHENTICATION
              - VERIFICATION_FAILURE
              - APPLICATION_ERROR
              - AUTHORIZATION_ERROR
              - TIMEOUT_ERROR
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    ForMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        partitionCount:
          type: integer
          format: int32
        value:
          type: string
        partitionList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/ForMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserForMetadata'
        serializedSize:
          type: integer
          format: int32
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ForMetadataOrBuilder:
      type: object
      properties:
        partitionCount:
          type: integer
          format: int32
        value:
          type: string
        partitionList:
          type: array
          items:
            type: string
        valueBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    GraphLayoutNode:
      type: object
      properties:
        nodeType:
          type: string
        nodeGroup:
          type: string
        nodeIdentifier:
          type: string
        name:
          type: string
        nodeUuid:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        module:
          type: string
        moduleInfo:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: object
        createdAt:
          type: integer
          format: int64
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        edgeLayoutList:
          $ref: '#/components/schemas/EdgeLayoutList'
        skipInfo:
          $ref: '#/components/schemas/SkipInfo'
        nodeRunInfo:
          $ref: '#/components/schemas/NodeRunInfo'
        barrierFound:
          type: boolean
        failureInfo:
          $ref: '#/components/schemas/ExecutionErrorInfo'
        failureInfoDTO:
          $ref: '#/components/schemas/FailureInfoDTO'
        stepDetails:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/PmsStepDetails'
        hidden:
          type: boolean
        nodeExecutionId:
          type: string
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        executionInputConfigured:
          type: boolean
        isRollbackStageNode:
          type: boolean
        isManualExecution:
          type: boolean
      description: This is the view of the Graph for execution of the Pipeline.
    InterruptConfig:
      required:
        - issuedBy
      type: object
      properties:
        issuedBy:
          $ref: '#/components/schemas/IssuedBy'
        retryInterruptConfig:
          $ref: '#/components/schemas/RetryInterruptConfig'
    InterruptEffectDTO:
      required:
        - interruptConfig
        - interruptId
        - interruptType
        - tookEffectAt
      type: object
      properties:
        interruptId:
          type: string
        tookEffectAt:
          type: integer
          format: int64
        interruptType:
          type: string
          enum:
            - UNKNOWN
            - ABORT
            - ABORT_ALL
            - PAUSE
            - PAUSE_ALL
            - RESUME
            - RESUME_ALL
            - RETRY
            - IGNORE
            - WAITING_FOR_MANUAL_INTERVENTION
            - MARK_FAILED
            - MARK_SUCCESS
            - NEXT_STEP
            - END_EXECUTION
            - MARK_EXPIRED
            - CUSTOM_FAILURE
            - EXPIRE_ALL
            - PROCEED_WITH_DEFAULT
            - USER_MARKED_FAIL_ALL
            - UNRECOGNIZED
        interruptConfig:
          $ref: '#/components/schemas/InterruptConfig'
    IssuedBy:
      required:
        - issueTime
      type: object
      properties:
        issueTime:
          type: integer
          format: int64
        manualIssuer:
          $ref: '#/components/schemas/ManualIssuer'
        adviserIssuer:
          $ref: '#/components/schemas/AdviserIssuer'
        timeoutIssuer:
          $ref: '#/components/schemas/TimeoutIssuer'
        triggerIssuer:
          $ref: '#/components/schemas/TriggerIssuer'
        systemIssuer:
          $ref: '#/components/schemas/SystemIssuer'
    ManualIssuer:
      required:
        - email_id
        - identifier
        - type
        - user_id
      type: object
      properties:
        email_id:
          type: string
        user_id:
          type: string
        type:
          type: string
        identifier:
          type: string
    MatrixMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        matrixKeysToSkipInNameList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        matrixValuesCount:
          type: integer
          format: int32
        matrixValues:
          type: object
          additionalProperties:
            type: string
        matrixCombinationList:
          type: array
          items:
            type: integer
            format: int32
        matrixCombinationCount:
          type: integer
          format: int32
        subType:
          type: string
        subTypeBytes:
          $ref: '#/components/schemas/ByteString'
        matrixKeysToSkipInNameCount:
          type: integer
          format: int32
        nodeNameBytes:
          $ref: '#/components/schemas/ByteString'
        nodeName:
          type: string
        matrixValuesMap:
          type: object
          additionalProperties:
            type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/MatrixMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserMatrixMetadata'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    MatrixMetadataOrBuilder:
      type: object
      properties:
        matrixKeysToSkipInNameList:
          type: array
          items:
            type: string
        matrixValuesCount:
          type: integer
          format: int32
        matrixValues:
          type: object
          additionalProperties:
            type: string
        matrixCombinationList:
          type: array
          items:
            type: integer
            format: int32
        matrixCombinationCount:
          type: integer
          format: int32
        subType:
          type: string
        subTypeBytes:
          $ref: '#/components/schemas/ByteString'
        matrixKeysToSkipInNameCount:
          type: integer
          format: int32
        nodeNameBytes:
          $ref: '#/components/schemas/ByteString'
        nodeName:
          type: string
        matrixValuesMap:
          type: object
          additionalProperties:
            type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    NGLabel:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
    NodeRunInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/NodeRunInfo'
        parserForType:
          $ref: '#/components/schemas/ParserNodeRunInfo'
        serializedSize:
          type: integer
          format: int32
        evaluatedCondition:
          type: boolean
        expressionsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ExpressionBlockOrBuilder'
        whenConditionBytes:
          $ref: '#/components/schemas/ByteString'
        expressionsList:
          type: array
          items:
            $ref: '#/components/schemas/ExpressionBlock'
        expressionsCount:
          type: integer
          format: int32
        isManualExecution:
          type: boolean
        whenCondition:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    OrchestrationMap:
      type: object
      additionalProperties:
        type: object
    ParserAsyncChainExecutableResponse:
      type: object
    ParserAsyncExecutableResponse:
      type: object
    ParserBuildInfo:
      type: object
    ParserChild:
      type: object
    ParserChildChainExecutableResponse:
      type: object
    ParserChildExecutableResponse:
      type: object
    ParserChildrenExecutableResponse:
      type: object
    ParserExecutableResponse:
      type: object
    ParserExecutionErrorInfo:
      type: object
    ParserExecutionTriggerInfo:
      type: object
    ParserExpressionBlock:
      type: object
    ParserFacilitatorExecutableResponse:
      type: object
    ParserForMetadata:
      type: object
    ParserMatrixMetadata:
      type: object
    ParserNodeRunInfo:
      type: object
    ParserPipelineStageInfo:
      type: object
    ParserRerunInfo:
      type: object
    ParserSkipInfo:
      type: object
    ParserSkipTaskExecutableResponse:
      type: object
    ParserStrategyMetadata:
      type: object
    ParserSyncExecutableResponse:
      type: object
    ParserTaskChainExecutableResponse:
      type: object
    ParserTaskExecutableResponse:
      type: object
    ParserTemplateReferenceSummary:
      type: object
    ParserTriggeredBy:
      type: object
    ParserUnitProgress:
      type: object
    PipelineExecutionDetail:
      type: object
      properties:
        pipelineExecutionSummary:
          $ref: '#/components/schemas/PipelineExecutionSummary'
        executionGraph:
          $ref: '#/components/schemas/ExecutionGraph'
        childGraph:
          $ref: '#/components/schemas/ChildExecutionDetail'
      description: This contains the Pipeline Execution details.
    PipelineExecutionSummary:
      required:
        - orgIdentifier
        - projectIdentifier
      type: object
      properties:
        pipelineIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        planExecutionId:
          type: string
        name:
          type: string
        yamlVersion:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        tags:
          type: array
          items:
            $ref: '#/components/schemas/NGTag'
        labels:
          type: array
          items:
            $ref: '#/components/schemas/NGLabel'
        executionTriggerInfo:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
        executionErrorInfo:
          $ref: '#/components/schemas/ExecutionErrorInfo'
        governanceMetadata:
          $ref: '#/components/schemas/PipelineGovernanceMetadata'
        failureInfo:
          $ref: '#/components/schemas/FailureInfoDTO'
        retryExecutionMetadata:
          $ref: '#/components/schemas/RetryExecutionMetadata'
        moduleInfo:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: object
        layoutNodeMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/GraphLayoutNode'
        modules:
          type: array
          items:
            type: string
        startingNodeId:
          type: string
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        createdAt:
          type: integer
          format: int64
        canRetry:
          type: boolean
        canReExecute:
          type: boolean
        showRetryHistory:
          type: boolean
        isRetriedExecution:
          type: boolean
          writeOnly: true
        runSequence:
          type: integer
          format: int32
        successfulStagesCount:
          type: integer
          format: int64
        runningStagesCount:
          type: integer
          format: int64
        failedStagesCount:
          type: integer
          format: int64
        totalStagesCount:
          type: integer
          format: int64
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        connectorRef:
          type: string
        executionInputConfigured:
          type: boolean
        isStagesExecution:
          type: boolean
          writeOnly: true
        parentStageInfo:
          $ref: '#/components/schemas/PipelineStageInfo'
        stagesExecuted:
          type: array
          items:
            type: string
        stagesExecutedNames:
          type: object
          additionalProperties:
            type: string
        allowStageExecutions:
          type: boolean
        abortedBy:
          $ref: '#/components/schemas/AbortedBy'
        executionMode:
          type: string
          enum:
            - UNDEFINED_MODE
            - NORMAL
            - POST_EXECUTION_ROLLBACK
            - PIPELINE_ROLLBACK
            - UNRECOGNIZED
        notesExistForPlanExecutionId:
          type: boolean
        shouldUseSimplifiedKey:
          type: boolean
        isDynamicExecution:
          type: boolean
          writeOnly: true
        isOriginalYamlUsedOnRerun:
          type: boolean
          writeOnly: true
        inputSetIdentifiers:
          type: array
          items:
            type: string
        queuedType:
          type: string
          enum:
            - MAX_CONCURRENCY_REACHED
            - MAX_CONCURRENCY_NOT_REACHED
            - PRIORITY_CONCURRENCY_REACHED
        queuedReason:
          type: string
        templateReferenceSummary:
          $ref: '#/components/schemas/TemplateReferenceSummary'
        stagesExecution:
          type: boolean
        retriedExecution:
          type: boolean
        dynamicExecution:
          type: boolean
        originalYamlUsedOnRerun:
          type: boolean
      description: This is the view of the Pipeline Execution Summary
    PipelineStageInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        stageNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        executionIdBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineNameBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/PipelineStageInfo'
        parserForType:
          $ref: '#/components/schemas/ParserPipelineStageInfo'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        runSequence:
          type: integer
          format: int32
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineName:
          type: string
        hasParentPipeline:
          type: boolean
        stageNodeId:
          type: string
        executionId:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PmsStepDetails:
      type: object
      additionalProperties:
        type: object
    RerunInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        rootTriggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        rootExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        rootTriggerTypeValue:
          type: integer
          format: int32
        prevExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        prevTriggerTypeValue:
          type: integer
          format: int32
        prevTriggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        rootExecutionId:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/RerunInfo'
        parserForType:
          $ref: '#/components/schemas/ParserRerunInfo'
        serializedSize:
          type: integer
          format: int32
        prevExecutionId:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    RerunInfoOrBuilder:
      type: object
      properties:
        rootTriggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        rootExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        rootTriggerTypeValue:
          type: integer
          format: int32
        prevExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        prevTriggerTypeValue:
          type: integer
          format: int32
        prevTriggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        rootExecutionId:
          type: string
        prevExecutionId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ResponseDTOPipelineExecutionDetail:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PipelineExecutionDetail'
        metaData:
          type: object
        correlationId:
          type: string
    RetryExecutionMetadata:
      type: object
      properties:
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        runSequence:
          type: integer
          format: int32
        executedBy:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
        parentExecutionId:
          type: string
        rootExecutionId:
          type: string
      description: >-
        This gives the Parent and Root execution id of the Execution part of
        Retried Execution
    RetryInterruptConfig:
      required:
        - retryId
      type: object
      properties:
        retryId:
          type: string
    RetryNodeMetadata:
      type: object
      properties:
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        runSequence:
          type: integer
          format: int32
        originalPlanExecutionId:
          type: string
        executedBy:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
    SkipInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/SkipInfo'
        parserForType:
          $ref: '#/components/schemas/ParserSkipInfo'
        serializedSize:
          type: integer
          format: int32
        skipConditionBytes:
          $ref: '#/components/schemas/ByteString'
        evaluatedCondition:
          type: boolean
        skipCondition:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    SkipTaskExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        message:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/SkipTaskExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserSkipTaskExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    SkipTaskExecutableResponseOrBuilder:
      type: object
      properties:
        message:
          type: string
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    StrategyMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        matrixMetadataOrBuilder:
          $ref: '#/components/schemas/MatrixMetadataOrBuilder'
        forMetadataOrBuilder:
          $ref: '#/components/schemas/ForMetadataOrBuilder'
        identifierPostFixBytes:
          $ref: '#/components/schemas/ByteString'
        metadataCase:
          type: string
          enum:
            - MATRIXMETADATA
            - FORMETADATA
            - METADATA_NOT_SET
        currentIteration:
          type: integer
          format: int32
        totalIterations:
          type: integer
          format: int32
        matrixMetadata:
          $ref: '#/components/schemas/MatrixMetadata'
        forMetadata:
          $ref: '#/components/schemas/ForMetadata'
        identifierPostFix:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/StrategyMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserStrategyMetadata'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    StrategyMetadataOrBuilder:
      type: object
      properties:
        matrixMetadataOrBuilder:
          $ref: '#/components/schemas/MatrixMetadataOrBuilder'
        forMetadataOrBuilder:
          $ref: '#/components/schemas/ForMetadataOrBuilder'
        identifierPostFixBytes:
          $ref: '#/components/schemas/ByteString'
        metadataCase:
          type: string
          enum:
            - MATRIXMETADATA
            - FORMETADATA
            - METADATA_NOT_SET
        currentIteration:
          type: integer
          format: int32
        totalIterations:
          type: integer
          format: int32
        matrixMetadata:
          $ref: '#/components/schemas/MatrixMetadata'
        forMetadata:
          $ref: '#/components/schemas/ForMetadata'
        identifierPostFix:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    SyncExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        defaultInstanceForType:
          $ref: '#/components/schemas/SyncExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserSyncExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    SyncExecutableResponseOrBuilder:
      type: object
      properties:
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    SystemIssuer:
      type: object
      properties:
        message:
          type: string
    TaskChainExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        chainEnd:
          type: boolean
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        taskIdBytes:
          $ref: '#/components/schemas/ByteString'
        taskCategory:
          type: string
          enum:
            - UNKNOWN_CATEGORY
            - DELEGATE_TASK_V1
            - DELEGATE_TASK_V2
            - UNRECOGNIZED
        taskCategoryValue:
          type: integer
          format: int32
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        taskNameBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/TaskChainExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserTaskChainExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        taskName:
          type: string
        taskId:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TaskChainExecutableResponseOrBuilder:
      type: object
      properties:
        chainEnd:
          type: boolean
        passThroughData:
          $ref: '#/components/schemas/ByteString'
        taskIdBytes:
          $ref: '#/components/schemas/ByteString'
        taskCategory:
          type: string
          enum:
            - UNKNOWN_CATEGORY
            - DELEGATE_TASK_V1
            - DELEGATE_TASK_V2
            - UNRECOGNIZED
        taskCategoryValue:
          type: integer
          format: int32
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        taskNameBytes:
          $ref: '#/components/schemas/ByteString'
        taskName:
          type: string
        taskId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    TaskExecutableResponse:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        taskIdBytes:
          $ref: '#/components/schemas/ByteString'
        taskCategory:
          type: string
          enum:
            - UNKNOWN_CATEGORY
            - DELEGATE_TASK_V1
            - DELEGATE_TASK_V2
            - UNRECOGNIZED
        taskCategoryValue:
          type: integer
          format: int32
        logKeysList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        taskNameBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/TaskExecutableResponse'
        parserForType:
          $ref: '#/components/schemas/ParserTaskExecutableResponse'
        serializedSize:
          type: integer
          format: int32
        taskName:
          type: string
        taskId:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TaskExecutableResponseOrBuilder:
      type: object
      properties:
        taskIdBytes:
          $ref: '#/components/schemas/ByteString'
        taskCategory:
          type: string
          enum:
            - UNKNOWN_CATEGORY
            - DELEGATE_TASK_V1
            - DELEGATE_TASK_V2
            - UNRECOGNIZED
        taskCategoryValue:
          type: integer
          format: int32
        logKeysList:
          type: array
          items:
            type: string
        logKeysCount:
          type: integer
          format: int32
        unitsList:
          type: array
          items:
            type: string
        unitsCount:
          type: integer
          format: int32
        taskNameBytes:
          $ref: '#/components/schemas/ByteString'
        taskName:
          type: string
        taskId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    TemplateReferenceSummary:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplateReferenceSummary'
        parserForType:
          $ref: '#/components/schemas/ParserTemplateReferenceSummary'
        serializedSize:
          type: integer
          format: int32
        templateRefBytes:
          $ref: '#/components/schemas/ByteString'
        versionLabel:
          type: string
        versionLabelBytes:
          $ref: '#/components/schemas/ByteString'
        gitBranch:
          type: string
        gitBranchBytes:
          $ref: '#/components/schemas/ByteString'
        templateRef:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TimeoutIssuer:
      required:
        - timeoutInstanceId
      type: object
      properties:
        timeoutInstanceId:
          type: string
    TriggerIssuer:
      required:
        - abortPrevConcurrentExecution
        - triggerRef
      type: object
      properties:
        triggerRef:
          type: string
        abortPrevConcurrentExecution:
          type: boolean
    TriggeredBy:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/TriggeredBy'
        parserForType:
          $ref: '#/components/schemas/ParserTriggeredBy'
        serializedSize:
          type: integer
          format: int32
        uuidBytes:
          $ref: '#/components/schemas/ByteString'
        uuid:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        extraInfoCount:
          type: integer
          format: int32
        extraInfo:
          type: object
          additionalProperties:
            type: string
        extraInfoMap:
          type: object
          additionalProperties:
            type: string
        triggerIdentifier:
          type: string
        triggerIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        triggerName:
          type: string
        triggerNameBytes:
          $ref: '#/components/schemas/ByteString'
        impersonateUsername:
          type: string
        impersonateUsernameBytes:
          $ref: '#/components/schemas/ByteString'
        impersonateEmail:
          type: string
        impersonateEmailBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TriggeredByOrBuilder:
      type: object
      properties:
        uuidBytes:
          $ref: '#/components/schemas/ByteString'
        uuid:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        extraInfoCount:
          type: integer
          format: int32
        extraInfo:
          type: object
          additionalProperties:
            type: string
        extraInfoMap:
          type: object
          additionalProperties:
            type: string
        triggerIdentifier:
          type: string
        triggerIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        triggerName:
          type: string
        triggerNameBytes:
          $ref: '#/components/schemas/ByteString'
        impersonateUsername:
          type: string
        impersonateUsernameBytes:
          $ref: '#/components/schemas/ByteString'
        impersonateEmail:
          type: string
        impersonateEmailBytes:
          $ref: '#/components/schemas/ByteString'
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    UnitProgress:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        endTime:
          type: integer
          format: int64
        status:
          type: string
          enum:
            - UNKNOWN
            - SUCCESS
            - FAILURE
            - RUNNING
            - QUEUED
            - SKIPPED
            - EXPIRED
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/UnitProgress'
        parserForType:
          $ref: '#/components/schemas/ParserUnitProgress'
        serializedSize:
          type: integer
          format: int32
        unitNameBytes:
          $ref: '#/components/schemas/ByteString'
        statusValue:
          type: integer
          format: int32
        unitName:
          type: string
        initialized:
          type: boolean
        startTime:
          type: integer
          format: int64
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ResponseDTOExecutionGraph:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ExecutionGraph'
        metaData:
          type: object
        correlationId:
          type: string
    NodeExecutionDetails:
      type: object
      properties:
        executionGraph:
          $ref: '#/components/schemas/ExecutionGraph'
      description: This contains the Node Execution Graph details.
    ResponseDTONodeExecutionDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NodeExecutionDetails'
        metaData:
          type: object
        correlationId:
          type: string
    ExecutionDataResponse:
      type: object
      properties:
        executionId:
          type: string
          description: The plan ExecutionID
        executionYaml:
          type: string
          description: >-
            Execution YAML - Prepared after resolving runtime inputs and
            templates.
      description: This contains Execution metadata details.
    ResponseDTOExecutionDataResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ExecutionDataResponse'
        metaData:
          type: object
        correlationId:
          type: string
    InputSetDetails:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier of the inputset
        name:
          type: string
          description: Name of the inputset
      description: Details of an inputset used in a pipeline execution
    InputSetTemplateResponse:
      type: object
      properties:
        inputSetTemplateYaml:
          type: string
          description: Template Yaml at the time of execution
        inputSetYaml:
          type: string
          description: Input set Yaml used during execution
        inputSetDetails:
          type: array
          description: Details of inputsets used in this execution
          items:
            $ref: '#/components/schemas/InputSetDetails'
      description: This contains the Runtime Input YAML used during a Pipeline Execution.
    ResponseDTOInputSetTemplateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InputSetTemplateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageGovernanceMetadata:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/PipelineGovernanceMetadata'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPageGovernanceMetadata:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageGovernanceMetadata'
        metaData:
          type: object
        correlationId:
          type: string
    PagePipelineExecutionIdentifierSummary:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/PipelineExecutionIdentifierSummary'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    PipelineExecutionIdentifierSummary:
      required:
        - orgIdentifier
        - projectIdentifier
      type: object
      properties:
        pipelineIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        planExecutionId:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        runSequence:
          type: integer
          format: int32
      description: This is the view of the Pipeline Execution Identifier Summary
    ResponseDTOPagePipelineExecutionIdentifierSummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PagePipelineExecutionIdentifierSummary'
        metaData:
          type: object
        correlationId:
          type: string
    PagePipelineExecutionSummary:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/PipelineExecutionSummary'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPagePipelineExecutionSummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PagePipelineExecutionSummary'
        metaData:
          type: object
        correlationId:
          type: string
    CustomPagePipelineExecutionOutline:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/PipelineExecutionOutline'
        currentSize:
          type: integer
          format: int32
        lastSeenExecutionId:
          type: string
        lastSeenStartTime:
          type: integer
          format: int64
        hasMore:
          type: boolean
      description: This is the custom page implementation
    NodeExecutionOutline:
      type: object
      properties:
        nodeType:
          type: string
        nodeGroup:
          type: string
        nodeIdentifier:
          type: string
        name:
          type: string
        nodeUuid:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        failureInfo:
          type: string
        nodeExecutionId:
          type: string
        edgeLayoutList:
          $ref: '#/components/schemas/EdgeLayoutList'
      description: This is the view of the Node Execution Outline
    PipelineExecutionOutline:
      required:
        - accountIdentifier
        - orgIdentifier
        - projectIdentifier
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        pipelineIdentifier:
          type: string
        planExecutionId:
          type: string
        name:
          type: string
        startingNodeId:
          type: string
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        failureInfo:
          type: string
        stagesMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/NodeExecutionOutline'
        modules:
          type: array
          items:
            type: string
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        runtimeInputYaml:
          type: string
        runSequence:
          type: integer
          format: int32
      description: This is the view of the Pipeline Execution Outline
    ResponseDTOCustomPagePipelineExecutionOutline:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CustomPagePipelineExecutionOutline'
        metaData:
          type: object
        correlationId:
          type: string
    PipelineExecutionOutlineFilterDTO:
      type: object
      properties:
        status:
          type: array
          items:
            type: string
            description: This is the Execution Status of the entity
            enum:
              - Running
              - AsyncWaiting
              - TaskWaiting
              - TimedWaiting
              - Failed
              - Errored
              - IgnoreFailed
              - NotStarted
              - Expired
              - Aborted
              - Discontinuing
              - Queued
              - Paused
              - ResourceWaiting
              - InterventionWaiting
              - ApprovalWaiting
              - WaitStepRunning
              - QueuedLicenseLimitReached
              - QueuedExecutionConcurrencyReached
              - Success
              - Suspended
              - Skipped
              - Pausing
              - ApprovalRejected
              - InputWaiting
              - AbortedByFreeze
              - UploadWaiting
              - NOT_STARTED
              - INTERVENTION_WAITING
              - APPROVAL_WAITING
              - APPROVAL_REJECTED
              - Waiting
              - Queued
              - Queued
              - Queued
              - Queued
        timeRange:
          $ref: '#/components/schemas/TimeRange'
        pipelineIdentifier:
          type: string
        planExecutionIds:
          type: array
          items:
            type: string
    TimeRange:
      type: object
      properties:
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        relativeTime:
          type: string
        timeRangeFilterType:
          type: string
          description: These are the default filters supported for  specifying time range
          enum:
            - LAST_7_DAYS
            - LAST_30_DAYS
            - THIS_MONTH
            - THIS_YEAR
            - LAST_MONTH
            - LAST_YEAR
            - LAST_3_MONTHS
            - LAST_6_MONTHS
            - LAST_12_MONTHS
            - THIS_QUARTER
            - LAST_QUARTER
    PipelineExecutionNotes:
      type: object
      properties:
        notes:
          type: string
          description: Notes of a pipeline execution
      description: Notes of a pipeline execution
    ResponseDTOPipelineExecutionNotes:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PipelineExecutionNotes'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOWorkflowGraph:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/WorkflowGraph'
        metaData:
          type: object
        correlationId:
          type: string
    WorkflowGraph:
      type: object
      properties:
        data:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/WorkflowGraphNode'
        relation:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/WorkflowGraphRelation'
    WorkflowGraphNode:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        identifier:
          type: string
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        inputs:
          type: object
          additionalProperties:
            type: object
        outputs:
          type: object
          additionalProperties:
            type: object
    WorkflowGraphRelation:
      type: object
      properties:
        parentId:
          type: string
        prevIds:
          type: array
          items:
            type: string
        nextIds:
          type: array
          items:
            type: string
        children:
          type: array
          items:
            type: string
    ExecutionInfo:
      type: object
      properties:
        uuid:
          type: string
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        status:
          type: string
          description: This is the Execution Status of the entity
          enum:
            - Running
            - AsyncWaiting
            - TaskWaiting
            - TimedWaiting
            - Failed
            - Errored
            - IgnoreFailed
            - NotStarted
            - Expired
            - Aborted
            - Discontinuing
            - Queued
            - Paused
            - ResourceWaiting
            - InterventionWaiting
            - ApprovalWaiting
            - WaitStepRunning
            - QueuedLicenseLimitReached
            - QueuedExecutionConcurrencyReached
            - Success
            - Suspended
            - Skipped
            - Pausing
            - ApprovalRejected
            - InputWaiting
            - AbortedByFreeze
            - UploadWaiting
            - NOT_STARTED
            - INTERVENTION_WAITING
            - APPROVAL_WAITING
            - APPROVAL_REJECTED
            - Waiting
            - Queued
            - Queued
            - Queued
            - Queued
        runSequence:
          type: integer
          format: int32
      description: This is the view for a particular Execution in Retry History
    ResponseDTORetryHistoryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RetryHistoryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RetryHistoryResponse:
      type: object
      properties:
        errorMessage:
          type: string
        latestExecutionId:
          type: string
        executionInfos:
          type: array
          items:
            $ref: '#/components/schemas/ExecutionInfo'
        retryStagesMetadata:
          $ref: '#/components/schemas/RetryStagesMetadata'
      description: This is the view of the history of Retry Failed Pipelines.
    RetryStagesMetadata:
      type: object
      properties:
        retryStagesIdentifier:
          type: array
          items:
            type: string
        skipStagesIdentifier:
          type: array
          items:
            type: string
      description: This has lists of retried and skipped stage identifiers
    InterruptResponse:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - AbortAll
            - Abort
            - Pause
            - Resume
            - Ignore
            - StageRollback
            - PipelineRollback
            - StepGroupRollback
            - MarkAsSuccess
            - ExpireAll
            - Retry
            - MarkAsFailure
            - UserMarkedFailure
        planExecutionId:
          type: string
      description: >-
        Contains the ID and type of the interrupt issued along with the
        execution id.
    ResponseDTOInterruptResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/InterruptResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ManualExecutionResponse:
      type: object
      properties:
        status:
          type: boolean
          description: The status of requested API
      description: >-
        This contains response for the API to mark the manual execution as fail
        or resume
    ResponseDTOManualExecutionResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ManualExecutionResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ManualExecutionRequest:
      required:
        - action
      type: object
      properties:
        action:
          type: string
          description: >-
            The action that user wants to do on manual execution i.e. mark it as
            fail or resume
          enum:
            - MARK_AS_RESUME
            - MARK_AS_FAIL
      description: Request for marking manual execution as fail or resume
    Ambiance:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        levelsCount:
          type: integer
          format: int32
        originalStageExecutionIdForRollbackMode:
          type: string
        planExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        levelsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LevelOrBuilder'
        metadataOrBuilder:
          $ref: '#/components/schemas/ExecutionMetadataOrBuilder'
        planIdBytes:
          $ref: '#/components/schemas/ByteString'
        setupAbstractionsCount:
          type: integer
          format: int32
        stageExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        originalStageExecutionIdForRollbackModeBytes:
          $ref: '#/components/schemas/ByteString'
        metadata:
          $ref: '#/components/schemas/ExecutionMetadata'
        planExecutionId:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Ambiance'
        parserForType:
          $ref: '#/components/schemas/ParserAmbiance'
        serializedSize:
          type: integer
          format: int32
        startTs:
          type: integer
          format: int64
        setupAbstractions:
          type: object
          additionalProperties:
            type: string
        setupAbstractionsMap:
          type: object
          additionalProperties:
            type: string
        planId:
          type: string
        levelsList:
          type: array
          items:
            $ref: '#/components/schemas/Level'
        stageExecutionId:
          type: string
        expressionFunctorToken:
          type: integer
          format: int64
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ArtifactData:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        metadataMap:
          type: object
          additionalProperties:
            type: string
        metadataCount:
          type: integer
          format: int32
        buildBytes:
          $ref: '#/components/schemas/ByteString'
        metadata:
          type: object
          additionalProperties:
            type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/ArtifactData'
        parserForType:
          $ref: '#/components/schemas/ParserArtifactData'
        serializedSize:
          type: integer
          format: int32
        build:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ArtifactDataOrBuilder:
      type: object
      properties:
        metadataMap:
          type: object
          additionalProperties:
            type: string
        metadataCount:
          type: integer
          format: int32
        buildBytes:
          $ref: '#/components/schemas/ByteString'
        metadata:
          type: object
          additionalProperties:
            type: string
        build:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    BranchHook:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        refOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        ref:
          $ref: '#/components/schemas/Reference'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/BranchHook'
        parserForType:
          $ref: '#/components/schemas/ParserBranchHook'
        serializedSize:
          type: integer
          format: int32
        repo:
          $ref: '#/components/schemas/Repository'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    BranchHookOrBuilder:
      type: object
      properties:
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        refOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        ref:
          $ref: '#/components/schemas/Reference'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        repo:
          $ref: '#/components/schemas/Repository'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Commit:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        link:
          type: string
        sha:
          type: string
        author:
          $ref: '#/components/schemas/Signature'
        committer:
          $ref: '#/components/schemas/Signature'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        authorOrBuilder:
          $ref: '#/components/schemas/SignatureOrBuilder'
        committerOrBuilder:
          $ref: '#/components/schemas/SignatureOrBuilder'
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        message:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Commit'
        parserForType:
          $ref: '#/components/schemas/ParserCommit'
        serializedSize:
          type: integer
          format: int32
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CommitOrBuilder:
      type: object
      properties:
        link:
          type: string
        sha:
          type: string
        author:
          $ref: '#/components/schemas/Signature'
        committer:
          $ref: '#/components/schemas/Signature'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        authorOrBuilder:
          $ref: '#/components/schemas/SignatureOrBuilder'
        committerOrBuilder:
          $ref: '#/components/schemas/SignatureOrBuilder'
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        message:
          type: string
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ExecutionMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        principalInfo:
          $ref: '#/components/schemas/ExecutionPrincipalInfo'
        defaultInstanceForType:
          $ref: '#/components/schemas/ExecutionMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserExecutionMetadata'
        serializedSize:
          type: integer
          format: int32
        triggerInfo:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
        triggerInfoOrBuilder:
          $ref: '#/components/schemas/ExecutionTriggerInfoOrBuilder'
        pipelineIdentifier:
          type: string
        pipelineIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        executionUuid:
          type: string
        executionUuidBytes:
          $ref: '#/components/schemas/ByteString'
        principalInfoOrBuilder:
          $ref: '#/components/schemas/ExecutionPrincipalInfoOrBuilder'
        gitSyncBranchContext:
          $ref: '#/components/schemas/ByteString'
        moduleType:
          type: string
        moduleTypeBytes:
          $ref: '#/components/schemas/ByteString'
        retryInfo:
          $ref: '#/components/schemas/RetryExecutionInfo'
        retryInfoOrBuilder:
          $ref: '#/components/schemas/RetryExecutionInfoOrBuilder'
        isNotificationConfigured:
          type: boolean
        pipelineStoreTypeValue:
          type: integer
          format: int32
        pipelineStoreType:
          type: string
          enum:
            - UNDEFINED
            - INLINE
            - REMOTE
            - UNRECOGNIZED
        pipelineConnectorRef:
          type: string
        pipelineConnectorRefBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineStageInfo:
          $ref: '#/components/schemas/PipelineStageInfo'
        pipelineStageInfoOrBuilder:
          $ref: '#/components/schemas/PipelineStageInfoOrBuilder'
        harnessVersion:
          type: string
        harnessVersionBytes:
          $ref: '#/components/schemas/ByteString'
        isDebug:
          type: boolean
        executionModeValue:
          type: integer
          format: int32
        executionMode:
          type: string
          enum:
            - UNDEFINED_MODE
            - NORMAL
            - POST_EXECUTION_ROLLBACK
            - PIPELINE_ROLLBACK
            - UNRECOGNIZED
        originalPlanExecutionIdForRollbackMode:
          type: string
        originalPlanExecutionIdForRollbackModeBytes:
          $ref: '#/components/schemas/ByteString'
        settingToValueMapCount:
          type: integer
          format: int32
        settingToValueMap:
          type: object
          additionalProperties:
            type: string
        settingToValueMapMap:
          type: object
          additionalProperties:
            type: string
        featureFlagToValueMapCount:
          type: integer
          format: int32
        featureFlagToValueMap:
          type: object
          additionalProperties:
            type: boolean
        featureFlagToValueMapMap:
          type: object
          additionalProperties:
            type: boolean
        processedYamlVersion:
          type: string
        processedYamlVersionBytes:
          $ref: '#/components/schemas/ByteString'
        isStagesExpressionsProvided:
          type: boolean
        runSequence:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExecutionMetadataOrBuilder:
      type: object
      properties:
        principalInfo:
          $ref: '#/components/schemas/ExecutionPrincipalInfo'
        triggerInfo:
          $ref: '#/components/schemas/ExecutionTriggerInfo'
        triggerInfoOrBuilder:
          $ref: '#/components/schemas/ExecutionTriggerInfoOrBuilder'
        pipelineIdentifier:
          type: string
        pipelineIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        executionUuid:
          type: string
        executionUuidBytes:
          $ref: '#/components/schemas/ByteString'
        principalInfoOrBuilder:
          $ref: '#/components/schemas/ExecutionPrincipalInfoOrBuilder'
        gitSyncBranchContext:
          $ref: '#/components/schemas/ByteString'
        moduleType:
          type: string
        moduleTypeBytes:
          $ref: '#/components/schemas/ByteString'
        retryInfo:
          $ref: '#/components/schemas/RetryExecutionInfo'
        retryInfoOrBuilder:
          $ref: '#/components/schemas/RetryExecutionInfoOrBuilder'
        isNotificationConfigured:
          type: boolean
        pipelineStoreTypeValue:
          type: integer
          format: int32
        pipelineStoreType:
          type: string
          enum:
            - UNDEFINED
            - INLINE
            - REMOTE
            - UNRECOGNIZED
        pipelineConnectorRef:
          type: string
        pipelineConnectorRefBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineStageInfo:
          $ref: '#/components/schemas/PipelineStageInfo'
        pipelineStageInfoOrBuilder:
          $ref: '#/components/schemas/PipelineStageInfoOrBuilder'
        harnessVersion:
          type: string
        harnessVersionBytes:
          $ref: '#/components/schemas/ByteString'
        isDebug:
          type: boolean
        executionModeValue:
          type: integer
          format: int32
        executionMode:
          type: string
          enum:
            - UNDEFINED_MODE
            - NORMAL
            - POST_EXECUTION_ROLLBACK
            - PIPELINE_ROLLBACK
            - UNRECOGNIZED
        originalPlanExecutionIdForRollbackMode:
          type: string
        originalPlanExecutionIdForRollbackModeBytes:
          $ref: '#/components/schemas/ByteString'
        settingToValueMapCount:
          type: integer
          format: int32
        settingToValueMap:
          type: object
          additionalProperties:
            type: string
        settingToValueMapMap:
          type: object
          additionalProperties:
            type: string
        featureFlagToValueMapCount:
          type: integer
          format: int32
        featureFlagToValueMap:
          type: object
          additionalProperties:
            type: boolean
        featureFlagToValueMapMap:
          type: object
          additionalProperties:
            type: boolean
        processedYamlVersion:
          type: string
        processedYamlVersionBytes:
          $ref: '#/components/schemas/ByteString'
        isStagesExpressionsProvided:
          type: boolean
        runSequence:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ExecutionPrincipalInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        defaultInstanceForType:
          $ref: '#/components/schemas/ExecutionPrincipalInfo'
        parserForType:
          $ref: '#/components/schemas/ParserExecutionPrincipalInfo'
        serializedSize:
          type: integer
          format: int32
        principal:
          type: string
        principalBytes:
          $ref: '#/components/schemas/ByteString'
        principalTypeValue:
          type: integer
          format: int32
        principalType:
          type: string
          enum:
            - UNKNOWN
            - USER
            - USER_GROUP
            - API_KEY
            - SERVICE
            - SERVICE_ACCOUNT
            - UNRECOGNIZED
        shouldValidateRbac:
          type: boolean
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ExecutionPrincipalInfoOrBuilder:
      type: object
      properties:
        principal:
          type: string
        principalBytes:
          $ref: '#/components/schemas/ByteString'
        principalTypeValue:
          type: integer
          format: int32
        principalType:
          type: string
          enum:
            - UNKNOWN
            - USER
            - USER_GROUP
            - API_KEY
            - SERVICE
            - SERVICE_ACCOUNT
            - UNRECOGNIZED
        shouldValidateRbac:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ExecutionTriggerInfoOrBuilder:
      type: object
      properties:
        triggerType:
          type: string
          enum:
            - NOOP
            - MANUAL
            - WEBHOOK
            - WEBHOOK_CUSTOM
            - SCHEDULER_CRON
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        triggeredBy:
          $ref: '#/components/schemas/TriggeredBy'
        triggeredByOrBuilder:
          $ref: '#/components/schemas/TriggeredByOrBuilder'
        isRerun:
          type: boolean
        rerunInfo:
          $ref: '#/components/schemas/RerunInfo'
        rerunInfoOrBuilder:
          $ref: '#/components/schemas/RerunInfoOrBuilder'
        buildInfo:
          $ref: '#/components/schemas/BuildInfo'
        buildInfoOrBuilder:
          $ref: '#/components/schemas/BuildInfoOrBuilder'
        triggerTypeValue:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    FailureData:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        levelBytes:
          $ref: '#/components/schemas/ByteString'
        stepIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        stageIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        failureTypeInfosList:
          type: array
          items:
            $ref: '#/components/schemas/FailureTypeInfo'
        codeBytes:
          $ref: '#/components/schemas/ByteString'
        failureTypeInfosCount:
          type: integer
          format: int32
        failureTypeInfosOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FailureTypeInfoOrBuilder'
        message:
          type: string
        level:
          type: string
        code:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/FailureData'
        parserForType:
          $ref: '#/components/schemas/ParserFailureData'
        serializedSize:
          type: integer
          format: int32
        failureTypesList:
          type: array
          items:
            type: string
            enum:
              - UNKNOWN_FAILURE
              - DELEGATE_PROVISIONING_FAILURE
              - CONNECTIVITY_FAILURE
              - AUTHENTICATION_FAILURE
              - VERIFICATION_FAILURE
              - APPLICATION_FAILURE
              - AUTHORIZATION_FAILURE
              - TIMEOUT_FAILURE
              - SKIPPING_FAILURE
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - FREEZE_ACTIVE_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
              - UNRECOGNIZED
        failureTypesCount:
          type: integer
          format: int32
        failureTypesValueList:
          type: array
          items:
            type: integer
            format: int32
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        stageIdentifier:
          type: string
        stepIdentifier:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FailureDataOrBuilder:
      type: object
      properties:
        levelBytes:
          $ref: '#/components/schemas/ByteString'
        stepIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        stageIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        failureTypeInfosList:
          type: array
          items:
            $ref: '#/components/schemas/FailureTypeInfo'
        codeBytes:
          $ref: '#/components/schemas/ByteString'
        failureTypeInfosCount:
          type: integer
          format: int32
        failureTypeInfosOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FailureTypeInfoOrBuilder'
        message:
          type: string
        level:
          type: string
        code:
          type: string
        failureTypesList:
          type: array
          items:
            type: string
            enum:
              - UNKNOWN_FAILURE
              - DELEGATE_PROVISIONING_FAILURE
              - CONNECTIVITY_FAILURE
              - AUTHENTICATION_FAILURE
              - VERIFICATION_FAILURE
              - APPLICATION_FAILURE
              - AUTHORIZATION_FAILURE
              - TIMEOUT_FAILURE
              - SKIPPING_FAILURE
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - FREEZE_ACTIVE_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
              - UNRECOGNIZED
        failureTypesCount:
          type: integer
          format: int32
        failureTypesValueList:
          type: array
          items:
            type: integer
            format: int32
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        stageIdentifier:
          type: string
        stepIdentifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    FailureInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        errorMessage:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/FailureInfo'
        parserForType:
          $ref: '#/components/schemas/ParserFailureInfo'
        serializedSize:
          type: integer
          format: int32
        errorMessageBytes:
          $ref: '#/components/schemas/ByteString'
        failureDataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FailureDataOrBuilder'
        failureTypesList:
          type: array
          items:
            type: string
            enum:
              - UNKNOWN_FAILURE
              - DELEGATE_PROVISIONING_FAILURE
              - CONNECTIVITY_FAILURE
              - AUTHENTICATION_FAILURE
              - VERIFICATION_FAILURE
              - APPLICATION_FAILURE
              - AUTHORIZATION_FAILURE
              - TIMEOUT_FAILURE
              - SKIPPING_FAILURE
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - FREEZE_ACTIVE_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
              - UNRECOGNIZED
        failureTypesCount:
          type: integer
          format: int32
        failureTypesValueList:
          type: array
          items:
            type: integer
            format: int32
        failureDataList:
          type: array
          items:
            $ref: '#/components/schemas/FailureData'
        failureDataCount:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FailureTypeInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        failureTypeValue:
          type: integer
          format: int32
        failureSubTypeValue:
          type: integer
          format: int32
        failureSubType:
          type: string
          enum:
            - UNKNOWN_FAILURE_REASON
            - UNRECOGNIZED
        failureType:
          type: string
          enum:
            - UNKNOWN_FAILURE
            - DELEGATE_PROVISIONING_FAILURE
            - CONNECTIVITY_FAILURE
            - AUTHENTICATION_FAILURE
            - VERIFICATION_FAILURE
            - APPLICATION_FAILURE
            - AUTHORIZATION_FAILURE
            - TIMEOUT_FAILURE
            - SKIPPING_FAILURE
            - POLICY_EVALUATION_FAILURE
            - INPUT_TIMEOUT_FAILURE
            - FREEZE_ACTIVE_FAILURE
            - APPROVAL_REJECTION
            - DELEGATE_RESTART
            - USER_MARKED_FAILURE
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/FailureTypeInfo'
        parserForType:
          $ref: '#/components/schemas/ParserFailureTypeInfo'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    FailureTypeInfoOrBuilder:
      type: object
      properties:
        failureTypeValue:
          type: integer
          format: int32
        failureSubTypeValue:
          type: integer
          format: int32
        failureSubType:
          type: string
          enum:
            - UNKNOWN_FAILURE_REASON
            - UNRECOGNIZED
        failureType:
          type: string
          enum:
            - UNKNOWN_FAILURE
            - DELEGATE_PROVISIONING_FAILURE
            - CONNECTIVITY_FAILURE
            - AUTHENTICATION_FAILURE
            - VERIFICATION_FAILURE
            - APPLICATION_FAILURE
            - AUTHORIZATION_FAILURE
            - TIMEOUT_FAILURE
            - SKIPPING_FAILURE
            - POLICY_EVALUATION_FAILURE
            - INPUT_TIMEOUT_FAILURE
            - FREEZE_ACTIVE_FAILURE
            - APPROVAL_REJECTION
            - DELEGATE_RESTART
            - USER_MARKED_FAILURE
            - UNRECOGNIZED
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    HeaderConfig:
      type: object
      properties:
        key:
          type: string
        values:
          type: array
          items:
            type: string
    Label:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        colorBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Label'
        parserForType:
          $ref: '#/components/schemas/ParserLabel'
        serializedSize:
          type: integer
          format: int32
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        color:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    LabelOrBuilder:
      type: object
      properties:
        colorBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        color:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Level:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        runtimeIdBytes:
          $ref: '#/components/schemas/ByteString'
        stepTypeOrBuilder:
          $ref: '#/components/schemas/StepTypeOrBuilder'
        groupBytes:
          $ref: '#/components/schemas/ByteString'
        originalIdentifier:
          type: string
        retryIndex:
          type: integer
          format: int32
        nodeTypeBytes:
          $ref: '#/components/schemas/ByteString'
        setupId:
          type: string
        setupIdBytes:
          $ref: '#/components/schemas/ByteString'
        strategyMetadataOrBuilder:
          $ref: '#/components/schemas/StrategyMetadataOrBuilder'
        originalIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        strategyInfo:
          $ref: '#/components/schemas/StrategyInfo'
        strategyInfoOrBuilder:
          $ref: '#/components/schemas/StrategyInfoOrBuilder'
        skipExpressionChain:
          type: boolean
        group:
          type: string
        nodeType:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Level'
        parserForType:
          $ref: '#/components/schemas/ParserLevel'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        startTs:
          type: integer
          format: int64
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        stepType:
          $ref: '#/components/schemas/StepType'
        runtimeId:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    LevelOrBuilder:
      type: object
      properties:
        runtimeIdBytes:
          $ref: '#/components/schemas/ByteString'
        stepTypeOrBuilder:
          $ref: '#/components/schemas/StepTypeOrBuilder'
        groupBytes:
          $ref: '#/components/schemas/ByteString'
        originalIdentifier:
          type: string
        retryIndex:
          type: integer
          format: int32
        nodeTypeBytes:
          $ref: '#/components/schemas/ByteString'
        setupId:
          type: string
        setupIdBytes:
          $ref: '#/components/schemas/ByteString'
        strategyMetadataOrBuilder:
          $ref: '#/components/schemas/StrategyMetadataOrBuilder'
        originalIdentifierBytes:
          $ref: '#/components/schemas/ByteString'
        strategyInfo:
          $ref: '#/components/schemas/StrategyInfo'
        strategyInfoOrBuilder:
          $ref: '#/components/schemas/StrategyInfoOrBuilder'
        skipExpressionChain:
          type: boolean
        group:
          type: string
        nodeType:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        startTs:
          type: integer
          format: int64
        strategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        stepType:
          $ref: '#/components/schemas/StepType'
        runtimeId:
          type: string
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ManifestData:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        versionBytes:
          $ref: '#/components/schemas/ByteString'
        version:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/ManifestData'
        parserForType:
          $ref: '#/components/schemas/ParserManifestData'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ManifestDataOrBuilder:
      type: object
      properties:
        versionBytes:
          $ref: '#/components/schemas/ByteString'
        version:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ParsedPayload:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        payloadCase:
          type: string
          enum:
            - PR
            - PUSH
            - RELEASE
            - BRANCH
            - TAG
            - PAYLOAD_NOT_SET
        pr:
          $ref: '#/components/schemas/PullRequestHook'
        push:
          $ref: '#/components/schemas/PushHook'
        release:
          $ref: '#/components/schemas/ReleaseHook'
        pushOrBuilder:
          $ref: '#/components/schemas/PushHookOrBuilder'
        branchOrBuilder:
          $ref: '#/components/schemas/BranchHookOrBuilder'
        releaseOrBuilder:
          $ref: '#/components/schemas/ReleaseHookOrBuilder'
        tagOrBuilder:
          $ref: '#/components/schemas/TagHookOrBuilder'
        prOrBuilder:
          $ref: '#/components/schemas/PullRequestHookOrBuilder'
        tag:
          $ref: '#/components/schemas/TagHook'
        defaultInstanceForType:
          $ref: '#/components/schemas/ParsedPayload'
        parserForType:
          $ref: '#/components/schemas/ParserParsedPayload'
        serializedSize:
          type: integer
          format: int32
        branch:
          $ref: '#/components/schemas/BranchHook'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ParsedPayloadOrBuilder:
      type: object
      properties:
        payloadCase:
          type: string
          enum:
            - PR
            - PUSH
            - RELEASE
            - BRANCH
            - TAG
            - PAYLOAD_NOT_SET
        pr:
          $ref: '#/components/schemas/PullRequestHook'
        push:
          $ref: '#/components/schemas/PushHook'
        release:
          $ref: '#/components/schemas/ReleaseHook'
        pushOrBuilder:
          $ref: '#/components/schemas/PushHookOrBuilder'
        branchOrBuilder:
          $ref: '#/components/schemas/BranchHookOrBuilder'
        releaseOrBuilder:
          $ref: '#/components/schemas/ReleaseHookOrBuilder'
        tagOrBuilder:
          $ref: '#/components/schemas/TagHookOrBuilder'
        prOrBuilder:
          $ref: '#/components/schemas/PullRequestHookOrBuilder'
        tag:
          $ref: '#/components/schemas/TagHook'
        branch:
          $ref: '#/components/schemas/BranchHook'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ParserAmbiance:
      type: object
    ParserArtifactData:
      type: object
    ParserBranchHook:
      type: object
    ParserCommit:
      type: object
    ParserExecutionMetadata:
      type: object
    ParserExecutionPrincipalInfo:
      type: object
    ParserFailureData:
      type: object
    ParserFailureInfo:
      type: object
    ParserFailureTypeInfo:
      type: object
    ParserLabel:
      type: object
    ParserLevel:
      type: object
    ParserManifestData:
      type: object
    ParserParsedPayload:
      type: object
    ParserPerm:
      type: object
    ParserPostExecutionRollbackInfo:
      type: object
    ParserPullRequest:
      type: object
    ParserPullRequestHook:
      type: object
    ParserPushHook:
      type: object
    ParserReference:
      type: object
    ParserRelease:
      type: object
    ParserReleaseHook:
      type: object
    ParserRepository:
      type: object
    ParserRetryExecutionInfo:
      type: object
    ParserSignature:
      type: object
    ParserStepType:
      type: object
    ParserStrategyInfo:
      type: object
    ParserTagHook:
      type: object
    ParserTimestamp:
      type: object
    ParserTriggerPayload:
      type: object
    ParserUser:
      type: object
    Perm:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        pull:
          type: boolean
        admin:
          type: boolean
        push:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/Perm'
        parserForType:
          $ref: '#/components/schemas/ParserPerm'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PermOrBuilder:
      type: object
      properties:
        pull:
          type: boolean
        admin:
          type: boolean
        push:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    PipelineStageInfoOrBuilder:
      type: object
      properties:
        stageNodeIdBytes:
          $ref: '#/components/schemas/ByteString'
        executionIdBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineNameBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        runSequence:
          type: integer
          format: int32
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        pipelineName:
          type: string
        hasParentPipeline:
          type: boolean
        stageNodeId:
          type: string
        executionId:
          type: string
        identifier:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    PlanExecution:
      type: object
      properties:
        uuid:
          type: string
        createdAt:
          type: integer
          format: int64
        planId:
          type: string
        setupAbstractions:
          type: object
          additionalProperties:
            type: string
        validUntil:
          type: string
          format: date-time
        status:
          type: string
          enum:
            - NO_OP
            - RUNNING
            - INTERVENTION_WAITING
            - TIMED_WAITING
            - ASYNC_WAITING
            - TASK_WAITING
            - DISCONTINUING
            - PAUSING
            - QUEUED
            - SKIPPED
            - PAUSED
            - ABORTED
            - ERRORED
            - FAILED
            - EXPIRED
            - SUSPENDED
            - SUCCEEDED
            - IGNORE_FAILED
            - APPROVAL_WAITING
            - RESOURCE_WAITING
            - APPROVAL_REJECTED
            - INPUT_WAITING
            - WAIT_STEP_RUNNING
            - FREEZE_FAILED
            - QUEUED_LICENSE_LIMIT_REACHED
            - QUEUED_EXECUTION_CONCURRENCY_REACHED
            - QUEUED_STEP_LIMIT_REACHED
            - STARTING_QUEUED_STEP
            - UPLOAD_WAITING
            - QUEUED_PLAN_CREATION
            - STARTING_PLAN_CREATION
            - UNRECOGNIZED
        startTs:
          type: integer
          format: int64
        endTs:
          type: integer
          format: int64
        metadata:
          $ref: '#/components/schemas/ExecutionMetadata'
        governanceMetadata:
          $ref: '#/components/schemas/PipelineGovernanceMetadata'
        triggerHeader:
          type: array
          items:
            $ref: '#/components/schemas/HeaderConfig'
        triggerJsonPayload:
          type: string
        expressionFunctorToken:
          type: integer
          format: int64
        triggerPayload:
          $ref: '#/components/schemas/TriggerPayload'
        stageExpressionValuesMap:
          type: object
          additionalProperties:
            type: object
        stagesExecutionMetadata:
          $ref: '#/components/schemas/StagesExecutionMetadata'
        processedYaml:
          type: string
        postExecutionRollbackInfos:
          type: array
          items:
            $ref: '#/components/schemas/PostExecutionRollbackInfo'
        lastUpdatedAt:
          type: integer
          format: int64
        version:
          type: integer
          format: int64
        nextIteration:
          type: integer
          format: int64
        ambiance:
          $ref: '#/components/schemas/Ambiance'
        failureInfo:
          $ref: '#/components/schemas/FailureInfo'
        priorityType:
          type: string
          enum:
            - HIGH
            - LOW
            - NORMAL
        nodeType:
          type: string
          enum:
            - PLAN
            - PLAN_NODE
            - IDENTITY_PLAN_NODE
        nodeId:
          type: string
    PlanExecutionResponse:
      type: object
      properties:
        planExecution:
          $ref: '#/components/schemas/PlanExecution'
        gitDetails:
          $ref: '#/components/schemas/PipelineEntityGitDetails'
      description: This contains info about the Pipeline Execution
    PostExecutionRollbackInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        postExecutionRollbackStageId:
          type: string
        rollbackStageStrategyMetadata:
          $ref: '#/components/schemas/StrategyMetadata'
        postExecutionRollbackStageIdBytes:
          $ref: '#/components/schemas/ByteString'
        rollbackStageStrategyMetadataOrBuilder:
          $ref: '#/components/schemas/StrategyMetadataOrBuilder'
        originalStageExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        defaultInstanceForType:
          $ref: '#/components/schemas/PostExecutionRollbackInfo'
        parserForType:
          $ref: '#/components/schemas/ParserPostExecutionRollbackInfo'
        serializedSize:
          type: integer
          format: int32
        originalStageExecutionId:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PullRequest:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        link:
          type: string
        sha:
          type: string
        author:
          $ref: '#/components/schemas/PipelineUser'
        closed:
          type: boolean
        merged:
          type: boolean
        commitsList:
          type: array
          items:
            $ref: '#/components/schemas/Commit'
        refBytes:
          $ref: '#/components/schemas/ByteString'
        commitsCount:
          type: integer
          format: int32
        commitsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/CommitOrBuilder'
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        authorOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        bodyBytes:
          $ref: '#/components/schemas/ByteString'
        sourceBytes:
          $ref: '#/components/schemas/ByteString'
        fork:
          type: string
        forkBytes:
          $ref: '#/components/schemas/ByteString'
        baseOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        headOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        labelsList:
          type: array
          items:
            $ref: '#/components/schemas/Label'
        labelsCount:
          type: integer
          format: int32
        labelsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LabelOrBuilder'
        mergeSha:
          type: string
        mergeShaBytes:
          $ref: '#/components/schemas/ByteString'
        titleBytes:
          $ref: '#/components/schemas/ByteString'
        head:
          $ref: '#/components/schemas/Reference'
        target:
          type: string
        ref:
          type: string
        number:
          type: integer
          format: int64
        base:
          $ref: '#/components/schemas/Reference'
        source:
          type: string
        body:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PullRequest'
        parserForType:
          $ref: '#/components/schemas/ParserPullRequest'
        serializedSize:
          type: integer
          format: int32
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        title:
          type: string
        targetBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PullRequestHook:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        pr:
          $ref: '#/components/schemas/PullRequest'
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        prOrBuilder:
          $ref: '#/components/schemas/PullRequestOrBuilder'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/PullRequestHook'
        parserForType:
          $ref: '#/components/schemas/ParserPullRequestHook'
        serializedSize:
          type: integer
          format: int32
        repo:
          $ref: '#/components/schemas/Repository'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PullRequestHookOrBuilder:
      type: object
      properties:
        pr:
          $ref: '#/components/schemas/PullRequest'
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        prOrBuilder:
          $ref: '#/components/schemas/PullRequestOrBuilder'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        repo:
          $ref: '#/components/schemas/Repository'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    PullRequestOrBuilder:
      type: object
      properties:
        link:
          type: string
        sha:
          type: string
        author:
          $ref: '#/components/schemas/PipelineUser'
        closed:
          type: boolean
        merged:
          type: boolean
        commitsList:
          type: array
          items:
            $ref: '#/components/schemas/Commit'
        refBytes:
          $ref: '#/components/schemas/ByteString'
        commitsCount:
          type: integer
          format: int32
        commitsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/CommitOrBuilder'
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        authorOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        bodyBytes:
          $ref: '#/components/schemas/ByteString'
        sourceBytes:
          $ref: '#/components/schemas/ByteString'
        fork:
          type: string
        forkBytes:
          $ref: '#/components/schemas/ByteString'
        baseOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        headOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        labelsList:
          type: array
          items:
            $ref: '#/components/schemas/Label'
        labelsCount:
          type: integer
          format: int32
        labelsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LabelOrBuilder'
        mergeSha:
          type: string
        mergeShaBytes:
          $ref: '#/components/schemas/ByteString'
        titleBytes:
          $ref: '#/components/schemas/ByteString'
        head:
          $ref: '#/components/schemas/Reference'
        target:
          type: string
        ref:
          type: string
        number:
          type: integer
          format: int64
        base:
          $ref: '#/components/schemas/Reference'
        source:
          type: string
        body:
          type: string
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        title:
          type: string
        targetBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    PushHook:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        after:
          type: string
        sender:
          $ref: '#/components/schemas/PipelineUser'
        commit:
          $ref: '#/components/schemas/Commit'
        commitsList:
          type: array
          items:
            $ref: '#/components/schemas/Commit'
        before:
          type: string
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        refBytes:
          $ref: '#/components/schemas/ByteString'
        baseRef:
          type: string
        baseRefBytes:
          $ref: '#/components/schemas/ByteString'
        beforeBytes:
          $ref: '#/components/schemas/ByteString'
        afterBytes:
          $ref: '#/components/schemas/ByteString'
        commitOrBuilder:
          $ref: '#/components/schemas/CommitOrBuilder'
        commitsCount:
          type: integer
          format: int32
        commitsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/CommitOrBuilder'
        ref:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PushHook'
        parserForType:
          $ref: '#/components/schemas/ParserPushHook'
        serializedSize:
          type: integer
          format: int32
        repo:
          $ref: '#/components/schemas/Repository'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PushHookOrBuilder:
      type: object
      properties:
        after:
          type: string
        sender:
          $ref: '#/components/schemas/PipelineUser'
        commit:
          $ref: '#/components/schemas/Commit'
        commitsList:
          type: array
          items:
            $ref: '#/components/schemas/Commit'
        before:
          type: string
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        refBytes:
          $ref: '#/components/schemas/ByteString'
        baseRef:
          type: string
        baseRefBytes:
          $ref: '#/components/schemas/ByteString'
        beforeBytes:
          $ref: '#/components/schemas/ByteString'
        afterBytes:
          $ref: '#/components/schemas/ByteString'
        commitOrBuilder:
          $ref: '#/components/schemas/CommitOrBuilder'
        commitsCount:
          type: integer
          format: int32
        commitsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/CommitOrBuilder'
        ref:
          type: string
        repo:
          $ref: '#/components/schemas/Repository'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Reference:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        sha:
          type: string
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        pathBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        path:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Reference'
        parserForType:
          $ref: '#/components/schemas/ParserReference'
        serializedSize:
          type: integer
          format: int32
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ReferenceOrBuilder:
      type: object
      properties:
        sha:
          type: string
        shaBytes:
          $ref: '#/components/schemas/ByteString'
        pathBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        path:
          type: string
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Release:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        tagBytes:
          $ref: '#/components/schemas/ByteString'
        prerelease:
          type: boolean
        published:
          $ref: '#/components/schemas/Timestamp'
        publishedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        link:
          type: string
        draft:
          type: boolean
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        titleBytes:
          $ref: '#/components/schemas/ByteString'
        tag:
          type: string
        description:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Release'
        parserForType:
          $ref: '#/components/schemas/ParserRelease'
        serializedSize:
          type: integer
          format: int32
        created:
          $ref: '#/components/schemas/Timestamp'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        title:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ReleaseHook:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        sender:
          $ref: '#/components/schemas/PipelineUser'
        release:
          $ref: '#/components/schemas/Release'
        releaseOrBuilder:
          $ref: '#/components/schemas/ReleaseOrBuilder'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/ReleaseHook'
        parserForType:
          $ref: '#/components/schemas/ParserReleaseHook'
        serializedSize:
          type: integer
          format: int32
        repo:
          $ref: '#/components/schemas/Repository'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ReleaseHookOrBuilder:
      type: object
      properties:
        sender:
          $ref: '#/components/schemas/PipelineUser'
        release:
          $ref: '#/components/schemas/Release'
        releaseOrBuilder:
          $ref: '#/components/schemas/ReleaseOrBuilder'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        repo:
          $ref: '#/components/schemas/Repository'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ReleaseOrBuilder:
      type: object
      properties:
        tagBytes:
          $ref: '#/components/schemas/ByteString'
        prerelease:
          type: boolean
        published:
          $ref: '#/components/schemas/Timestamp'
        publishedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        link:
          type: string
        draft:
          type: boolean
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        titleBytes:
          $ref: '#/components/schemas/ByteString'
        tag:
          type: string
        description:
          type: string
        created:
          $ref: '#/components/schemas/Timestamp'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        title:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Repository:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        link:
          type: string
        clone:
          type: string
        cloneSsh:
          type: string
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        perm:
          $ref: '#/components/schemas/Perm'
        permOrBuilder:
          $ref: '#/components/schemas/PermOrBuilder'
        branchBytes:
          $ref: '#/components/schemas/ByteString'
        cloneBytes:
          $ref: '#/components/schemas/ByteString'
        cloneSshBytes:
          $ref: '#/components/schemas/ByteString'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        namespaceBytes:
          $ref: '#/components/schemas/ByteString'
        private:
          type: boolean
        name:
          type: string
        id:
          type: string
        namespace:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Repository'
        parserForType:
          $ref: '#/components/schemas/ParserRepository'
        serializedSize:
          type: integer
          format: int32
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        branch:
          type: string
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    RepositoryOrBuilder:
      type: object
      properties:
        link:
          type: string
        clone:
          type: string
        cloneSsh:
          type: string
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        perm:
          $ref: '#/components/schemas/Perm'
        permOrBuilder:
          $ref: '#/components/schemas/PermOrBuilder'
        branchBytes:
          $ref: '#/components/schemas/ByteString'
        cloneBytes:
          $ref: '#/components/schemas/ByteString'
        cloneSshBytes:
          $ref: '#/components/schemas/ByteString'
        linkBytes:
          $ref: '#/components/schemas/ByteString'
        namespaceBytes:
          $ref: '#/components/schemas/ByteString'
        private:
          type: boolean
        name:
          type: string
        id:
          type: string
        namespace:
          type: string
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        branch:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    RetryExecutionInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        rootExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        parentRetryId:
          type: string
        parentRetryIdBytes:
          $ref: '#/components/schemas/ByteString'
        rootExecutionId:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/RetryExecutionInfo'
        parserForType:
          $ref: '#/components/schemas/ParserRetryExecutionInfo'
        serializedSize:
          type: integer
          format: int32
        isRetry:
          type: boolean
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    RetryExecutionInfoOrBuilder:
      type: object
      properties:
        rootExecutionIdBytes:
          $ref: '#/components/schemas/ByteString'
        parentRetryId:
          type: string
        parentRetryIdBytes:
          $ref: '#/components/schemas/ByteString'
        rootExecutionId:
          type: string
        isRetry:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Signature:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        dateOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        login:
          type: string
        avatar:
          type: string
        emailBytes:
          $ref: '#/components/schemas/ByteString'
        avatarBytes:
          $ref: '#/components/schemas/ByteString'
        loginBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        date:
          $ref: '#/components/schemas/Timestamp'
        email:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/Signature'
        parserForType:
          $ref: '#/components/schemas/ParserSignature'
        serializedSize:
          type: integer
          format: int32
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    SignatureOrBuilder:
      type: object
      properties:
        dateOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        login:
          type: string
        avatar:
          type: string
        emailBytes:
          $ref: '#/components/schemas/ByteString'
        avatarBytes:
          $ref: '#/components/schemas/ByteString'
        loginBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        date:
          $ref: '#/components/schemas/Timestamp'
        email:
          type: string
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    StagesExecutionMetadata:
      type: object
      properties:
        isStagesExecution:
          type: boolean
          writeOnly: true
        fullPipelineYaml:
          type: string
        stageIdentifiers:
          type: array
          items:
            type: string
        expressionValues:
          type: object
          additionalProperties:
            type: string
        stageIdentifierToNameMap:
          type: object
          additionalProperties:
            type: string
        stagesExecution:
          type: boolean
    StepType:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        type:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/StepType'
        parserForType:
          $ref: '#/components/schemas/ParserStepType'
        serializedSize:
          type: integer
          format: int32
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        stepCategoryValue:
          type: integer
          format: int32
        stepCategory:
          type: string
          enum:
            - UNKNOWN
            - PIPELINE
            - STAGE
            - STEP
            - STAGES
            - FORK
            - STEP_GROUP
            - STRATEGY
            - INSERT
            - UNRECOGNIZED
        subCategoryValue:
          type: integer
          format: int32
        subCategory:
          type: string
          enum:
            - NONE
            - STEP_LEVEL
            - STAGE_LEVEL
            - UNRECOGNIZED
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    StepTypeOrBuilder:
      type: object
      properties:
        type:
          type: string
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        stepCategoryValue:
          type: integer
          format: int32
        stepCategory:
          type: string
          enum:
            - UNKNOWN
            - PIPELINE
            - STAGE
            - STEP
            - STAGES
            - FORK
            - STEP_GROUP
            - STRATEGY
            - INSERT
            - UNRECOGNIZED
        subCategoryValue:
          type: integer
          format: int32
        subCategory:
          type: string
          enum:
            - NONE
            - STEP_LEVEL
            - STAGE_LEVEL
            - UNRECOGNIZED
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    StrategyInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        forMetadataOrBuilder:
          $ref: '#/components/schemas/ForMetadataOrBuilder'
        identifierPostFixBytes:
          $ref: '#/components/schemas/ByteString'
        metadataCase:
          type: string
          enum:
            - FORMETADATA
            - METADATA_NOT_SET
        currentIteration:
          type: integer
          format: int32
        totalIterations:
          type: integer
          format: int32
        forMetadata:
          $ref: '#/components/schemas/ForMetadata'
        identifierPostFix:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/StrategyInfo'
        parserForType:
          $ref: '#/components/schemas/ParserStrategyInfo'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    StrategyInfoOrBuilder:
      type: object
      properties:
        forMetadataOrBuilder:
          $ref: '#/components/schemas/ForMetadataOrBuilder'
        identifierPostFixBytes:
          $ref: '#/components/schemas/ByteString'
        metadataCase:
          type: string
          enum:
            - FORMETADATA
            - METADATA_NOT_SET
        currentIteration:
          type: integer
          format: int32
        totalIterations:
          type: integer
          format: int32
        forMetadata:
          $ref: '#/components/schemas/ForMetadata'
        identifierPostFix:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    TagHook:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        refOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        ref:
          $ref: '#/components/schemas/Reference'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        defaultInstanceForType:
          $ref: '#/components/schemas/TagHook'
        parserForType:
          $ref: '#/components/schemas/ParserTagHook'
        serializedSize:
          type: integer
          format: int32
        repo:
          $ref: '#/components/schemas/Repository'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TagHookOrBuilder:
      type: object
      properties:
        sender:
          $ref: '#/components/schemas/PipelineUser'
        repoOrBuilder:
          $ref: '#/components/schemas/RepositoryOrBuilder'
        senderOrBuilder:
          $ref: '#/components/schemas/UserOrBuilder'
        actionValue:
          type: integer
          format: int32
        refOrBuilder:
          $ref: '#/components/schemas/ReferenceOrBuilder'
        ref:
          $ref: '#/components/schemas/Reference'
        action:
          type: string
          enum:
            - UNKNOWN
            - CREATE
            - UPDATE
            - DELETE
            - OPEN
            - REOPEN
            - CLOSE
            - LABEL
            - UNLABEL
            - SYNC
            - MERGE
            - EDIT
            - PUBLISH
            - UNPUBLISH
            - PRERELEASE
            - RELEASE
            - REVIEWREADY
            - SUBMITTED
            - DISMISSED
            - UNRECOGNIZED
        repo:
          $ref: '#/components/schemas/Repository'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    Timestamp:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        seconds:
          type: integer
          format: int64
        defaultInstanceForType:
          $ref: '#/components/schemas/Timestamp'
        parserForType:
          $ref: '#/components/schemas/ParserTimestamp'
        serializedSize:
          type: integer
          format: int32
        nanos:
          type: integer
          format: int32
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TimestampOrBuilder:
      type: object
      properties:
        seconds:
          type: integer
          format: int64
        nanos:
          type: integer
          format: int32
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    TriggerPayload:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        changedFilesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        headersMap:
          type: object
          additionalProperties:
            type: string
        parsedPayload:
          $ref: '#/components/schemas/ParsedPayload'
        artifactData:
          $ref: '#/components/schemas/ArtifactData'
        manifestData:
          $ref: '#/components/schemas/ManifestData'
        typeValue:
          type: integer
          format: int32
        headersCount:
          type: integer
          format: int32
        parsedPayloadOrBuilder:
          $ref: '#/components/schemas/ParsedPayloadOrBuilder'
        sourceTypeValue:
          type: integer
          format: int32
        artifactDataOrBuilder:
          $ref: '#/components/schemas/ArtifactDataOrBuilder'
        manifestDataOrBuilder:
          $ref: '#/components/schemas/ManifestDataOrBuilder'
        connectorRefBytes:
          $ref: '#/components/schemas/ByteString'
        imagePathBytes:
          $ref: '#/components/schemas/ByteString'
        changedFilesCount:
          type: integer
          format: int32
        buildDataCase:
          type: string
          enum:
            - ARTIFACTDATA
            - MANIFESTDATA
            - BUILDDATA_NOT_SET
        type:
          type: string
          enum:
            - CUSTOM
            - GIT
            - SCHEDULED
            - WEBHOOK
            - ARTIFACT
            - MANIFEST
            - UNRECOGNIZED
        version:
          type: integer
          format: int64
        imagePath:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/TriggerPayload'
        parserForType:
          $ref: '#/components/schemas/ParserTriggerPayload'
        serializedSize:
          type: integer
          format: int32
        connectorRef:
          type: string
        sourceType:
          type: string
          enum:
            - CUSTOM_REPO
            - GITHUB_REPO
            - GITLAB_REPO
            - BITBUCKET_REPO
            - AWS_CODECOMMIT_REPO
            - AZURE_REPO
            - HARNESS_REPO
            - UNRECOGNIZED
        initialized:
          type: boolean
        headers:
          type: object
          additionalProperties:
            type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    PipelineUser:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        login:
          type: string
        avatar:
          type: string
        emailBytes:
          $ref: '#/components/schemas/ByteString'
        avatarBytes:
          $ref: '#/components/schemas/ByteString'
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        loginBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        id:
          type: string
        email:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/PipelineUser'
        parserForType:
          $ref: '#/components/schemas/ParserUser'
        serializedSize:
          type: integer
          format: int32
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    UserOrBuilder:
      type: object
      properties:
        login:
          type: string
        avatar:
          type: string
        emailBytes:
          $ref: '#/components/schemas/ByteString'
        avatarBytes:
          $ref: '#/components/schemas/ByteString'
        createdOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        updatedOrBuilder:
          $ref: '#/components/schemas/TimestampOrBuilder'
        loginBytes:
          $ref: '#/components/schemas/ByteString'
        name:
          type: string
        id:
          type: string
        email:
          type: string
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          $ref: '#/components/schemas/Timestamp'
        updated:
          $ref: '#/components/schemas/Timestamp'
        idBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initialized:
          type: boolean
    ResponseDTOPlanExecutionResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PlanExecutionResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RunStageRequest:
      type: object
      properties:
        runtimeInputYaml:
          type: string
        stageIdentifiers:
          type: array
          items:
            type: string
        expressionValues:
          type: object
          additionalProperties:
            type: string
      description: Request Parameters needed to run specific Stages of a Pipeline
    ResponseDTOValidateTemplateInputsResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ValidateTemplateInputsResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    AuthzFailure:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        message:
          type: string
        correlationId:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
      description: This is Failure entity as defied in Harness
    AuthzError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/AuthzResponseMessage'
        metadata:
          $ref: '#/components/schemas/AuthzErrorMetadata'
      description: This is Error entity as defined in Harness
    AuthzErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    AuthzResponseMessage:
      type: object
      properties:
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        level:
          type: string
          enum:
            - INFO
            - ERROR
        message:
          type: string
        exception:
          type: object
          properties:
            stackTrace:
              type: array
              items:
                type: object
                properties:
                  classLoaderName:
                    type: string
                  moduleName:
                    type: string
                  moduleVersion:
                    type: string
                  methodName:
                    type: string
                  fileName:
                    type: string
                  lineNumber:
                    type: integer
                    format: int32
                  nativeMethod:
                    type: boolean
                  className:
                    type: string
            message:
              type: string
            suppressed:
              type: array
              items:
                type: object
                properties:
                  stackTrace:
                    type: array
                    items:
                      type: object
                      properties:
                        classLoaderName:
                          type: string
                        moduleName:
                          type: string
                        moduleVersion:
                          type: string
                        methodName:
                          type: string
                        fileName:
                          type: string
                        lineNumber:
                          type: integer
                          format: int32
                        nativeMethod:
                          type: boolean
                        className:
                          type: string
                  message:
                    type: string
                  localizedMessage:
                    type: string
            localizedMessage:
              type: string
        failureTypes:
          type: array
          items:
            type: string
            enum:
              - EXPIRED
              - DELEGATE_PROVISIONING
              - CONNECTIVITY
              - AUTHENTICATION
              - VERIFICATION_FAILURE
              - APPLICATION_ERROR
              - AUTHORIZATION_ERROR
              - TIMEOUT_ERROR
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
        additionalInfo:
          type: object
          additionalProperties:
            type: string
    AccessCheckResponse:
      type: object
      properties:
        principal:
          $ref: '#/components/schemas/AuthzPrincipal'
        accessControlList:
          type: array
          items:
            $ref: '#/components/schemas/AccessControl'
    AccessControl:
      type: object
      properties:
        permission:
          type: string
        resourceScope:
          $ref: '#/components/schemas/ResourceScope'
        resourceType:
          type: string
        resourceAttributes:
          type: object
          additionalProperties:
            type: string
        resourceIdentifier:
          type: string
        permitted:
          type: boolean
    AuthzPrincipal:
      type: object
      properties:
        scopeLevel:
          type: string
        identifier:
          type: string
        type:
          type: string
          description: Principal Type in Harness
          enum:
            - USER
            - USER_GROUP
            - SERVICE_ACCOUNT
        uniqueId:
          type: string
    ResourceScope:
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
    ResponseDTOAccessCheckResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AccessCheckResponse'
        metaData:
          type: object
        correlationId:
          type: string
    AccessCheckRequest:
      required:
        - permissions
      type: object
      properties:
        permissions:
          maxItems: 10000
          minItems: 0
          type: array
          description: List of permission checks to perform
          items:
            $ref: '#/components/schemas/PermissionCheck'
        principal:
          $ref: '#/components/schemas/AuthzPrincipal'
    PermissionCheck:
      required:
        - permission
        - resourceType
      type: object
      properties:
        resourceScope:
          $ref: '#/components/schemas/ResourceScope'
        resourceType:
          type: string
        resourceAttributes:
          type: object
          additionalProperties:
            type: string
        resourceIdentifier:
          type: string
        permission:
          type: string
    AuthzPermission:
      required:
        - action
        - identifier
        - name
        - resourceType
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        status:
          type: string
          enum:
            - STAGING
            - EXPERIMENTAL
            - ACTIVE
            - DEPRECATED
            - INACTIVE
        includeInAllRoles:
          type: boolean
        allowedScopeLevels:
          uniqueItems: true
          type: array
          items:
            type: string
        resourceType:
          type: string
        action:
          type: string
    PermissionResponse:
      required:
        - permission
      type: object
      properties:
        permission:
          $ref: '#/components/schemas/AuthzPermission'
    ResponseDTOListPermissionResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/PermissionResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSetString:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          uniqueItems: true
          type: array
          items:
            type: string
        metaData:
          type: object
        correlationId:
          type: string
    AccessDeniedError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/AuthzResponseMessage'
        metadata:
          $ref: '#/components/schemas/AuthzErrorMetadata'
        failedPermissionChecks:
          type: array
          items:
            $ref: '#/components/schemas/PermissionCheck'
    AuthzDeclaration:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        type:
          type: string
        fullName:
          type: string
        number:
          type: integer
          format: int32
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        fullNameBytes:
          $ref: '#/components/schemas/ByteString'
        reserved:
          type: boolean
        repeated:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/AuthzDeclaration'
        parserForType:
          $ref: '#/components/schemas/ParserDeclaration'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    AuthzGovernanceMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        timestamp:
          type: integer
          format: int64
        message:
          type: string
        id:
          type: string
        type:
          type: string
        detailsList:
          type: array
          items:
            $ref: '#/components/schemas/AuthzPolicySetMetadata'
        detailsCount:
          type: integer
          format: int32
        detailsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/AuthzPolicySetMetadataOrBuilder'
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        entityBytes:
          $ref: '#/components/schemas/ByteString'
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        actionBytes:
          $ref: '#/components/schemas/ByteString'
        action:
          type: string
        entity:
          type: string
        projectId:
          type: string
        accountId:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/AuthzGovernanceMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserGovernanceMetadata'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        created:
          type: integer
          format: int64
        status:
          type: string
        deny:
          type: boolean
        orgId:
          type: string
        idBytes:
          $ref: '#/components/schemas/ByteString'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
      description: GovernanceMetadata for OPA evaluation
    AuthzPolicyMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        severity:
          type: string
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        policyId:
          type: string
        policyName:
          type: string
        denyMessagesCount:
          type: integer
          format: int32
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        accountId:
          type: string
        identifier:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/AuthzPolicyMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicyMetadata'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        error:
          type: string
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
        status:
          type: string
        orgId:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    AuthzPolicySetMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/AuthzPolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        accountId:
          type: string
        identifier:
          type: string
        description:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/AuthzPolicySetMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicySetMetadata'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        created:
          type: integer
          format: int64
        status:
          type: string
        deny:
          type: boolean
        orgId:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    AuthzPolicySetMetadataOrBuilder:
      type: object
      properties:
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/AuthzPolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        accountId:
          type: string
        identifier:
          type: string
        description:
          type: string
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        created:
          type: integer
          format: int64
        status:
          type: string
        deny:
          type: boolean
        orgId:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        allFields:
          type: object
          additionalProperties:
            type: object
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initializationErrorString:
          type: string
        initialized:
          type: boolean
    ResponseDTORoleAssignmentDeleteResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RoleAssignmentDeleteResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    RoleAssignmentDeleteResponseDTO:
      type: object
      properties:
        successfullyDeleted:
          type: integer
          description: Number of roleassignings that are successfully deleted.
          format: int32
        failedToDelete:
          type: integer
          description: Number of roleassignings that are not deleted
          format: int32
        roleAssignmentErrorResponseDTOList:
          type: array
          description: >-
            List of roleassignments along with error message that are not
            deleted.
          items:
            $ref: '#/components/schemas/RoleAssignmentErrorResponseDTO'
    RoleAssignmentErrorResponseDTO:
      type: object
      properties:
        roleAssignmentId:
          type: string
          description: Identifier of roleassignment that is not deleted.
        errorMessage:
          type: string
          description: Error message due to which roleassignment cannot be deleted.
        governanceMetadata:
          $ref: '#/components/schemas/AuthzGovernanceMetadata'
      description: List of roleassignments along with error message that are not deleted.
    AuthzSourceCodeInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        locationList:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        locationCount:
          type: integer
          format: int32
        locationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LocationOrBuilder'
        defaultInstanceForType:
          $ref: '#/components/schemas/AuthzSourceCodeInfo'
        parserForType:
          $ref: '#/components/schemas/ParserSourceCodeInfo'
        serializedSize:
          type: integer
          format: int32
        initialized:
          type: boolean
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    ResponseDTOListRoleAssignmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AuthzRoleAssignmentResponse'
        metaData:
          type: object
        correlationId:
          type: string
    AuthzRoleAssignment:
      required:
        - principal
        - resourceGroupIdentifier
        - roleIdentifier
      type: object
      properties:
        identifier:
          type: string
        resourceGroupIdentifier:
          type: string
        roleIdentifier:
          type: string
        roleReference:
          $ref: '#/components/schemas/AuthzRoleReference'
        principal:
          $ref: '#/components/schemas/AuthzPrincipal'
        disabled:
          type: boolean
        managed:
          type: boolean
        internal:
          type: boolean
      description: Role Assignment to validate
    AuthzRoleAssignmentResponse:
      type: object
      properties:
        roleAssignment:
          $ref: '#/components/schemas/AuthzRoleAssignment'
        scope:
          $ref: '#/components/schemas/AuthzScope'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        harnessManaged:
          type: boolean
        governanceMetadata:
          $ref: '#/components/schemas/AuthzGovernanceMetadata'
    AuthzRoleReference:
      required:
        - identifier
        - scopeLevel
      type: object
      properties:
        identifier:
          type: string
          description: Unique identifier of the role
        scopeLevel:
          type: string
          description: >-
            scope level of the role. Valid values are account, organization and
            project.
    AuthzScope:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
    RoleAssignmentCreateRequest:
      required:
        - roleAssignments
      type: object
      properties:
        roleAssignments:
          maxItems: 100
          minItems: 0
          type: array
          items:
            $ref: '#/components/schemas/AuthzRoleAssignment'
    ResponseDTORoleAssignmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AuthzRoleAssignmentResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseRoleAssignmentResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/AuthzRoleAssignmentResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseRoleAssignmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseRoleAssignmentResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RoleAssignmentFilter:
      type: object
      properties:
        resourceGroupFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on resource group identifiers
          items:
            type: string
            description: Filter role assignments based on resource group identifiers
        roleFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on role identifiers
          items:
            type: string
            description: Filter role assignments based on role identifiers
        roleReferenceFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on roles
          items:
            $ref: '#/components/schemas/AuthzRoleReference'
        principalTypeFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on principal type
          items:
            type: string
            description: Principal Type in Harness
            enum:
              - USER
              - USER_GROUP
              - SERVICE_ACCOUNT
        principalScopeLevelFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on principal scope level
          items:
            type: string
            description: Filter role assignments based on principal scope level
        principalFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on principals
          items:
            $ref: '#/components/schemas/AuthzPrincipal'
        harnessManagedFilter:
          uniqueItems: true
          type: array
          description: >-
            Filter role assignments based on role assignments being harness
            managed
          items:
            type: boolean
            description: >-
              Filter role assignments based on role assignments being harness
              managed
        disabledFilter:
          uniqueItems: true
          type: array
          description: >-
            Filter role assignments based on whether they are enabled or
            disabled
          items:
            type: boolean
            description: >-
              Filter role assignments based on whether they are enabled or
              disabled
    ResourceGroup:
      required:
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
    ResponseDTORoleAssignmentAggregateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RoleAssignmentAggregateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    Role:
      required:
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
          description: Unique identifier of the role
        name:
          type: string
          description: Name of the role
        permissions:
          uniqueItems: true
          type: array
          description: >-
            List of the permission identifiers (Subset of the list returned by
            GET /authz/api/permissions)
          items:
            type: string
            description: >-
              List of the permission identifiers (Subset of the list returned by
              GET /authz/api/permissions)
        allowedScopeLevels:
          uniqueItems: true
          type: array
          description: The scope levels at which this role can be used
          items:
            type: string
            description: The scope levels at which this role can be used
            enum:
              - account
              - organization
              - project
        description:
          type: string
          description: Description of the role
        tags:
          type: object
          additionalProperties:
            type: string
            description: Tags
          description: Tags
    RoleAssignmentAggregateResponse:
      type: object
      properties:
        roleAssignments:
          type: array
          items:
            $ref: '#/components/schemas/AuthzRoleAssignment'
        scope:
          $ref: '#/components/schemas/AuthzScope'
        roles:
          type: array
          items:
            $ref: '#/components/schemas/AuthzRoleResponse'
        resourceGroups:
          type: array
          items:
            $ref: '#/components/schemas/ResourceGroup'
    AuthzRoleResponse:
      required:
        - role
      type: object
      properties:
        role:
          $ref: '#/components/schemas/Role'
        scope:
          $ref: '#/components/schemas/AuthzScope'
        harnessManaged:
          type: boolean
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
    AttributeFilter:
      type: object
      properties:
        attributeName:
          type: string
        attributeValues:
          type: array
          items:
            type: string
      description: Used to filter resources on their attributes
    PageResponseRoleAssignmentAggregate:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/RoleAssignmentAggregate'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    PrincipalV2:
      type: object
      properties:
        scopeLevel:
          type: string
        identifier:
          type: string
        name:
          type: string
        email:
          type: string
        type:
          type: string
          description: Principal Type in Harness
          enum:
            - USER
            - USER_GROUP
            - SERVICE_ACCOUNT
    AuthzResourceFilter:
      type: object
      properties:
        resources:
          type: array
          items:
            $ref: '#/components/schemas/ResourceSelectorV2'
        includeAllResources:
          type: boolean
      description: Contains resource filter for a resource group
    ResourceGroupV2:
      required:
        - accountIdentifier
        - identifier
        - name
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          maxLength: 128
          minLength: 0
          type: string
        name:
          maxLength: 128
          minLength: 0
          type: string
        color:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        allowedScopeLevels:
          uniqueItems: true
          type: array
          items:
            type: string
        includedScopes:
          type: array
          items:
            $ref: '#/components/schemas/ScopeSelector'
        resourceFilter:
          $ref: '#/components/schemas/AuthzResourceFilter'
      description: Contains information of Resource Group
    ResourceSelectorV2:
      required:
        - resourceType
      type: object
      properties:
        resourceType:
          type: string
        identifiers:
          type: array
          items:
            type: string
        attributeFilter:
          $ref: '#/components/schemas/AttributeFilter'
      description: Used to specify resources in resource group
    ResponseDTOPageResponseRoleAssignmentAggregate:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseRoleAssignmentAggregate'
        metaData:
          type: object
        correlationId:
          type: string
    RoleAssignmentAggregate:
      type: object
      properties:
        identifier:
          type: string
        principal:
          $ref: '#/components/schemas/PrincipalV2'
        disabled:
          type: boolean
        role:
          $ref: '#/components/schemas/AuthzRoleResponse'
        resourceGroup:
          $ref: '#/components/schemas/ResourceGroupV2'
        scope:
          $ref: '#/components/schemas/ScopeResponse'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        harnessManaged:
          type: boolean
    ScopeResponse:
      type: object
      properties:
        accountIdentifier:
          type: string
        accountName:
          type: string
        orgIdentifier:
          type: string
        orgName:
          type: string
        projectIdentifier:
          type: string
        projectName:
          type: string
    ScopeSelector:
      required:
        - filter
      type: object
      properties:
        filter:
          type: string
          enum:
            - EXCLUDING_CHILD_SCOPES
            - INCLUDING_CHILD_SCOPES
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
      description: Contains information of scope to which resource filter is applied
    RoleAssignmentFilterV2:
      type: object
      properties:
        resourceGroupFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on resource group identifiers
          items:
            type: string
            description: Filter role assignments based on resource group identifiers
        roleFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on role identifiers
          items:
            type: string
            description: Filter role assignments based on role identifiers
        roleReferenceFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on roles
          items:
            $ref: '#/components/schemas/AuthzRoleReference'
        scopeFilters:
          uniqueItems: true
          type: array
          description: Filter role assignments based on scope filters
          items:
            $ref: '#/components/schemas/ScopeSelector'
        principalFilter:
          $ref: '#/components/schemas/AuthzPrincipal'
        harnessManagedFilter:
          type: boolean
          description: >-
            Filter role assignments based on role assignments being harness
            managed
        disabledFilter:
          type: boolean
          description: >-
            Filter role assignments based on whether they are enabled or
            disabled
        principalTypeFilter:
          uniqueItems: true
          type: array
          description: Filter role assignments based on principal type
          items:
            type: string
            description: Principal Type in Harness
            enum:
              - USER
              - USER_GROUP
              - SERVICE_ACCOUNT
    ResponseDTORoleAssignmentValidationResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RoleAssignmentValidationResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RoleAssignmentValidationResponse:
      type: object
      properties:
        principalValidationResult:
          $ref: '#/components/schemas/AuthzValidationResult'
        roleValidationResult:
          $ref: '#/components/schemas/AuthzValidationResult'
        resourceGroupValidationResult:
          $ref: '#/components/schemas/AuthzValidationResult'
    AuthzValidationResult:
      type: object
      properties:
        isValid:
          type: boolean
          writeOnly: true
        errorMessage:
          type: string
        valid:
          type: boolean
    RoleAssignmentValidationRequest:
      required:
        - roleAssignment
      type: object
      properties:
        roleAssignment:
          $ref: '#/components/schemas/AuthzRoleAssignment'
        validatePrincipal:
          type: boolean
          description: Set it to true if the principal needs to be validated
        validateRole:
          type: boolean
          description: Set it to true if the role needs to be validated
        validateResourceGroup:
          type: boolean
          description: Set it to true if the resource group needs to be validated
    ResponseDTORoleResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AuthzRoleResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageResponseRoleWithPrincipalCountResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/RoleWithPrincipalCountResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseRoleWithPrincipalCountResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseRoleWithPrincipalCountResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RoleWithPrincipalCountResponse:
      required:
        - role
      type: object
      properties:
        role:
          $ref: '#/components/schemas/Role'
        scope:
          $ref: '#/components/schemas/AuthzScope'
        harnessManaged:
          type: boolean
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        roleAssignedToUserCount:
          type: integer
          format: int32
        roleAssignedToUserGroupCount:
          type: integer
          format: int32
        roleAssignedToServiceAccountCount:
          type: integer
          format: int32
    CcmError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
        metadata:
          $ref: '#/components/schemas/CcmErrorMetadata'
      description: This is Error entity as defined in Harness
    CcmErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    AnomalySummary:
      type: object
      properties:
        name:
          type: string
        description:
          type: string
        count:
          type: number
          format: double
        actualCost:
          type: number
          format: double
        expectedCost:
          type: number
          format: double
        anomalousCost:
          type: number
          format: double
        costImpact:
          type: number
          format: double
      description: This object details summary of an anomaly query result
    ResponseDTOListAnomalySummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalySummary'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyFilterProperties:
      type: object
      properties:
        k8sClusterNames:
          type: array
          description: This is the list of Cluster Names on which filter will be applied.
          items:
            type: string
            description: This is the list of Cluster Names on which filter will be applied.
        k8sNamespaces:
          type: array
          description: This is the list of Namespaces on which filter will be applied.
          items:
            type: string
            description: This is the list of Namespaces on which filter will be applied.
        k8sWorkloadNames:
          type: array
          description: This is the list of Workload Names on which filter will be applied.
          items:
            type: string
            description: >-
              This is the list of Workload Names on which filter will be
              applied.
        k8sServiceNames:
          type: array
          description: This is the list of Service Names on which filter will be applied.
          items:
            type: string
            description: This is the list of Service Names on which filter will be applied.
        gcpProjects:
          type: array
          description: This is the list of GCP Projects on which filter will be applied.
          items:
            type: string
            description: This is the list of GCP Projects on which filter will be applied.
        gcpProducts:
          type: array
          description: This is the list of GCP Products on which filter will be applied.
          items:
            type: string
            description: This is the list of GCP Products on which filter will be applied.
        gcpSKUDescriptions:
          type: array
          description: >-
            This is the list of GCP SKU Descriptions on which filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of GCP SKU Descriptions on which filter will be
              applied.
        awsAccounts:
          type: array
          description: This is the list of AWS Accounts on which filter will be applied.
          items:
            type: string
            description: This is the list of AWS Accounts on which filter will be applied.
        awsServices:
          type: array
          description: This is the list of AWS Services on which filter will be applied.
          items:
            type: string
            description: This is the list of AWS Services on which filter will be applied.
        awsUsageTypes:
          type: array
          description: This is the list of AWS Usage Types on which filter will be applied.
          items:
            type: string
            description: >-
              This is the list of AWS Usage Types on which filter will be
              applied.
        azureSubscriptionGuids:
          type: array
          description: >-
            This is the list of Azure Subscription Guids on which filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of Azure Subscription Guids on which filter will
              be applied.
        azureResourceGroups:
          type: array
          description: >-
            This is the list of Azure Resource Groups on which filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of Azure Resource Groups on which filter will be
              applied.
        azureMeterCategories:
          type: array
          description: >-
            This is the list of Azure Meter Categories on which filter will be
            applied.
          items:
            type: string
            description: >-
              This is the list of Azure Meter Categories on which filter will be
              applied.
        minActualAmount:
          type: number
          description: >-
            Fetch anomalies with Actual Amount greater-than or equal-to
            minActualAmount
          format: double
        minAnomalousSpend:
          type: number
          description: >-
            Fetch anomalies with Anomalous Spend greater-than or equal-to
            minAnomalousSpend
          format: double
        timeFilters:
          type: array
          description: List of filters to be applied on Anomaly Time
          items:
            $ref: '#/components/schemas/CCMTimeFilter'
        orderBy:
          type: array
          description: The order by condition for anomaly query
          items:
            $ref: '#/components/schemas/CCMSort'
        groupBy:
          type: array
          description: The group by clause for anomaly query
          items:
            $ref: '#/components/schemas/CCMGroupBy'
        aggregations:
          type: array
          description: The aggregations for anomaly query
          items:
            $ref: '#/components/schemas/CCMAggregation'
        searchText:
          type: array
          description: The search text entered to filter out rows
          items:
            type: string
            description: The search text entered to filter out rows
        offset:
          type: integer
          description: Query Offset
          format: int32
        limit:
          type: integer
          description: Query Limit
          format: int32
        status:
          type: array
          description: This is the status of the anomaly [ACTIVE/IGNORED/ARCHIVED/RESOLVED]
          items:
            type: string
            description: >-
              This is the status of the anomaly
              [ACTIVE/IGNORED/ARCHIVED/RESOLVED]
            enum:
              - ACTIVE
              - IGNORED
              - ARCHIVED
              - RESOLVED
        anomalyIds:
          type: array
          description: This is the list of anomaly IDs on which filter will be applied.
          items:
            type: string
            description: This is the list of anomaly IDs on which filter will be applied.
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          enum:
            - Anomaly
      description: Properties of the Anomaly Filter defined in Harness
    CCMAggregation:
      type: object
      properties:
        operationType:
          type: string
          enum:
            - SUM
            - MAX
            - MIN
            - AVG
            - COUNT
        field:
          type: string
          description: List of all possible Fields
          enum:
            - PERSPECTIVE_ID
            - ANOMALY_ID
            - WORKLOAD
            - WORKLOAD_TYPE
            - CLUSTER_ID
            - CLUSTER_NAME
            - CLUSTER_NAMESPACE
            - CLUSTER_NAMESPACE_ID
            - CLUSTER_WORKLOAD
            - CLUSTER_WORKLOAD_ID
            - CLUSTER_NODE
            - CLUSTER_POD
            - CLUSTER_PARENT_INSTANCE_ID
            - CLUSTER_STORAGE
            - CLUSTER_APPLICATION
            - CLUSTER_ENVIRONMENT
            - CLUSTER_SERVICE
            - CLUSTER_CLOUD_PROVIDER
            - CLUSTER_ECS_SERVICE
            - CLUSTER_ECS_SERVICE_ID
            - CLUSTER_ECS_TASK
            - CLUSTER_ECS_TASK_ID
            - CLUSTER_ECS_LAUNCH_TYPE
            - CLUSTER_ECS_LAUNCH_TYPE_ID
            - NAMESPACE
            - SERVICE
            - SERVICE_NAME
            - GCP_PRODUCT
            - GCP_PROJECT
            - GCP_SKU_ID
            - GCP_SKU_DESCRIPTION
            - AWS_ACCOUNT
            - AWS_SERVICE
            - AWS_INSTANCE_TYPE
            - AWS_USAGE_TYPE
            - AWS_BILLING_ENTITY
            - AWS_LINE_ITEM_TYPE
            - AZURE_SUBSCRIPTION_GUID
            - AZURE_METER_NAME
            - AZURE_METER_CATEGORY
            - AZURE_METER_SUBCATEGORY
            - AZURE_RESOURCE_ID
            - AZURE_RESOURCE_GROUP_NAME
            - AZURE_RESOURCE_TYPE
            - AZURE_RESOURCE
            - AZURE_SERVICE_NAME
            - AZURE_SERVICE_TIER
            - AZURE_INSTANCE_ID
            - AZURE_SUBSCRIPTION_NAME
            - AZURE_PUBLISHER_NAME
            - AZURE_PUBLISHER_TYPE
            - AZURE_RESERVATION_ID
            - AZURE_RESERVATION_NAME
            - AZURE_FREQUENCY
            - AZURE_CHARGE_TYPE
            - AZURE_PRICING_MODEL
            - AZURE_BENEFIT_NAME
            - AZURE_RESOURCE_NAME
            - COMMON_PRODUCT
            - COMMON_REGION
            - COMMON_NONE
            - CLOUD_PROVIDER
            - STATUS
            - REGION
            - ANOMALY_TIME
            - ACTUAL_COST
            - EXPECTED_COST
            - ANOMALOUS_SPEND
            - COST_IMPACT
            - ALL
            - ANOMALOUS_SPEND_PERCENTAGE
            - TOTAL_COST
            - IDLE_COST
            - UNALLOCATED_COST
            - RULE_NAME
            - RULE_SET_NAME
            - POTENTIAL_SAVINGS
            - LAST_EVALUATED_AT
            - ANOMALY_STATUS
            - RECOMMENDATIONS_COUNT
            - ACTUAL_AMOUNT
            - CRITICALITY
            - DURATION
            - UPDATED_AT
            - UPDATED_BY
            - UPDATED_AT_RELATIVE
      description: Fields which will be aggregated in the response
    CCMGroupBy:
      type: object
      properties:
        groupByField:
          type: string
          description: List of all possible Fields
          enum:
            - PERSPECTIVE_ID
            - ANOMALY_ID
            - WORKLOAD
            - WORKLOAD_TYPE
            - CLUSTER_ID
            - CLUSTER_NAME
            - CLUSTER_NAMESPACE
            - CLUSTER_NAMESPACE_ID
            - CLUSTER_WORKLOAD
            - CLUSTER_WORKLOAD_ID
            - CLUSTER_NODE
            - CLUSTER_POD
            - CLUSTER_PARENT_INSTANCE_ID
            - CLUSTER_STORAGE
            - CLUSTER_APPLICATION
            - CLUSTER_ENVIRONMENT
            - CLUSTER_SERVICE
            - CLUSTER_CLOUD_PROVIDER
            - CLUSTER_ECS_SERVICE
            - CLUSTER_ECS_SERVICE_ID
            - CLUSTER_ECS_TASK
            - CLUSTER_ECS_TASK_ID
            - CLUSTER_ECS_LAUNCH_TYPE
            - CLUSTER_ECS_LAUNCH_TYPE_ID
            - NAMESPACE
            - SERVICE
            - SERVICE_NAME
            - GCP_PRODUCT
            - GCP_PROJECT
            - GCP_SKU_ID
            - GCP_SKU_DESCRIPTION
            - AWS_ACCOUNT
            - AWS_SERVICE
            - AWS_INSTANCE_TYPE
            - AWS_USAGE_TYPE
            - AWS_BILLING_ENTITY
            - AWS_LINE_ITEM_TYPE
            - AZURE_SUBSCRIPTION_GUID
            - AZURE_METER_NAME
            - AZURE_METER_CATEGORY
            - AZURE_METER_SUBCATEGORY
            - AZURE_RESOURCE_ID
            - AZURE_RESOURCE_GROUP_NAME
            - AZURE_RESOURCE_TYPE
            - AZURE_RESOURCE
            - AZURE_SERVICE_NAME
            - AZURE_SERVICE_TIER
            - AZURE_INSTANCE_ID
            - AZURE_SUBSCRIPTION_NAME
            - AZURE_PUBLISHER_NAME
            - AZURE_PUBLISHER_TYPE
            - AZURE_RESERVATION_ID
            - AZURE_RESERVATION_NAME
            - AZURE_FREQUENCY
            - AZURE_CHARGE_TYPE
            - AZURE_PRICING_MODEL
            - AZURE_BENEFIT_NAME
            - AZURE_RESOURCE_NAME
            - COMMON_PRODUCT
            - COMMON_REGION
            - COMMON_NONE
            - CLOUD_PROVIDER
            - STATUS
            - REGION
            - ANOMALY_TIME
            - ACTUAL_COST
            - EXPECTED_COST
            - ANOMALOUS_SPEND
            - COST_IMPACT
            - ALL
            - ANOMALOUS_SPEND_PERCENTAGE
            - TOTAL_COST
            - IDLE_COST
            - UNALLOCATED_COST
            - RULE_NAME
            - RULE_SET_NAME
            - POTENTIAL_SAVINGS
            - LAST_EVALUATED_AT
            - ANOMALY_STATUS
            - RECOMMENDATIONS_COUNT
            - ACTUAL_AMOUNT
            - CRITICALITY
            - DURATION
            - UPDATED_AT
            - UPDATED_BY
            - UPDATED_AT_RELATIVE
      description: The group by clause for anomaly query
    CCMSort:
      type: object
      properties:
        field:
          type: string
          description: List of all possible Fields
          enum:
            - PERSPECTIVE_ID
            - ANOMALY_ID
            - WORKLOAD
            - WORKLOAD_TYPE
            - CLUSTER_ID
            - CLUSTER_NAME
            - CLUSTER_NAMESPACE
            - CLUSTER_NAMESPACE_ID
            - CLUSTER_WORKLOAD
            - CLUSTER_WORKLOAD_ID
            - CLUSTER_NODE
            - CLUSTER_POD
            - CLUSTER_PARENT_INSTANCE_ID
            - CLUSTER_STORAGE
            - CLUSTER_APPLICATION
            - CLUSTER_ENVIRONMENT
            - CLUSTER_SERVICE
            - CLUSTER_CLOUD_PROVIDER
            - CLUSTER_ECS_SERVICE
            - CLUSTER_ECS_SERVICE_ID
            - CLUSTER_ECS_TASK
            - CLUSTER_ECS_TASK_ID
            - CLUSTER_ECS_LAUNCH_TYPE
            - CLUSTER_ECS_LAUNCH_TYPE_ID
            - NAMESPACE
            - SERVICE
            - SERVICE_NAME
            - GCP_PRODUCT
            - GCP_PROJECT
            - GCP_SKU_ID
            - GCP_SKU_DESCRIPTION
            - AWS_ACCOUNT
            - AWS_SERVICE
            - AWS_INSTANCE_TYPE
            - AWS_USAGE_TYPE
            - AWS_BILLING_ENTITY
            - AWS_LINE_ITEM_TYPE
            - AZURE_SUBSCRIPTION_GUID
            - AZURE_METER_NAME
            - AZURE_METER_CATEGORY
            - AZURE_METER_SUBCATEGORY
            - AZURE_RESOURCE_ID
            - AZURE_RESOURCE_GROUP_NAME
            - AZURE_RESOURCE_TYPE
            - AZURE_RESOURCE
            - AZURE_SERVICE_NAME
            - AZURE_SERVICE_TIER
            - AZURE_INSTANCE_ID
            - AZURE_SUBSCRIPTION_NAME
            - AZURE_PUBLISHER_NAME
            - AZURE_PUBLISHER_TYPE
            - AZURE_RESERVATION_ID
            - AZURE_RESERVATION_NAME
            - AZURE_FREQUENCY
            - AZURE_CHARGE_TYPE
            - AZURE_PRICING_MODEL
            - AZURE_BENEFIT_NAME
            - AZURE_RESOURCE_NAME
            - COMMON_PRODUCT
            - COMMON_REGION
            - COMMON_NONE
            - CLOUD_PROVIDER
            - STATUS
            - REGION
            - ANOMALY_TIME
            - ACTUAL_COST
            - EXPECTED_COST
            - ANOMALOUS_SPEND
            - COST_IMPACT
            - ALL
            - ANOMALOUS_SPEND_PERCENTAGE
            - TOTAL_COST
            - IDLE_COST
            - UNALLOCATED_COST
            - RULE_NAME
            - RULE_SET_NAME
            - POTENTIAL_SAVINGS
            - LAST_EVALUATED_AT
            - ANOMALY_STATUS
            - RECOMMENDATIONS_COUNT
            - ACTUAL_AMOUNT
            - CRITICALITY
            - DURATION
            - UPDATED_AT
            - UPDATED_BY
            - UPDATED_AT_RELATIVE
        order:
          type: string
          enum:
            - ASCENDING
            - DESCENDING
      description: The order by condition for Rule Set query
    CCMTimeFilter:
      type: object
      properties:
        operator:
          type: string
          description: List of all possible Operators
          enum:
            - NOT_IN
            - IN
            - EQUALS
            - NOT_NULL
            - 'NULL'
            - LIKE
            - GREATER_THAN
            - LESS_THAN
            - GREATER_THAN_EQUALS_TO
            - LESS_THAN_EQUALS_TO
            - AFTER
            - BEFORE
        timestamp:
          type: integer
          format: int64
      description: Time
    FilterStats:
      type: object
      properties:
        key:
          type: string
        values:
          type: array
          items:
            type: string
      description: Filter values available for a particular column/key.
    ResponseDTOListFilterStats:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/FilterStats'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyData:
      type: object
      properties:
        id:
          type: string
        time:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        anomalyRelativeTime:
          type: string
        actualAmount:
          type: number
          format: double
        expectedAmount:
          type: number
          format: double
        anomalousSpend:
          type: number
          format: double
        anomalousSpendPercentage:
          type: number
          format: double
        resourceName:
          type: string
        resourceInfo:
          type: string
        entity:
          $ref: '#/components/schemas/EntityInfo'
        details:
          type: string
        status:
          type: string
          enum:
            - ACTIVE
            - IGNORED
            - ARCHIVED
            - RESOLVED
        statusRelativeTime:
          type: string
        comment:
          type: string
        cloudProvider:
          type: string
        anomalyScore:
          type: number
          format: double
        userFeedback:
          type: string
          enum:
            - TRUE_ANOMALY
            - TRUE_EXPECTED_ANOMALY
            - FALSE_ANOMALY
            - NOT_RESPONDED
        perspectiveId:
          type: string
        perspectiveName:
          type: string
        criticality:
          type: string
          enum:
            - CRITICAL
            - MEDIUM
            - LOW
        duration:
          type: integer
          format: int32
        isOngoingAnomaly:
          type: boolean
          writeOnly: true
        expectedCostUpper:
          type: number
          format: double
        expectedCostLower:
          type: number
          format: double
        statusUpdatedBy:
          type: string
        statusUpdatedAt:
          type: integer
          format: int64
        statusUpdateRelativeTime:
          type: integer
          format: int32
        ongoingAnomaly:
          type: boolean
      description: This object contains details of a cost anomaly
    EntityInfo:
      type: object
      properties:
        field:
          type: string
        clusterName:
          type: string
        clusterId:
          type: string
        namespace:
          type: string
        workloadName:
          type: string
        workloadType:
          type: string
        service:
          type: string
        serviceName:
          type: string
        gcpProjectId:
          type: string
        gcpProduct:
          type: string
        gcpSKUId:
          type: string
        gcpSKUDescription:
          type: string
        awsUsageAccountId:
          type: string
        awsServiceCode:
          type: string
        awsInstancetype:
          type: string
        awsUsageType:
          type: string
        azureSubscriptionGuid:
          type: string
        azureResourceGroup:
          type: string
        azureMeterCategory:
          type: string
        azureServiceName:
          type: string
        azureInstanceId:
          type: string
        cloudProvider:
          type: string
    ResponseDTOListAnomalyData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyData'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyRequestDTO:
      type: object
      properties:
        anomalyFilterPropertiesDTO:
          $ref: '#/components/schemas/AnomalyFilterProperties'
        perspectiveQueryDTO:
          $ref: '#/components/schemas/PerspectiveQueryDTO'
    PerspectiveQueryDTO:
      type: object
      properties:
        filters:
          type: array
          description: The filters for perspective query
          items:
            $ref: '#/components/schemas/QLCEViewFilterWrapper'
        groupBy:
          type: array
          description: The group by clause for perspective query
          items:
            $ref: '#/components/schemas/QLCEViewGroupBy'
      description: The query object for perspective cost anomalies
    QLCEViewFieldInput:
      type: object
      properties:
        fieldId:
          type: string
        fieldName:
          type: string
        identifier:
          type: string
          description: Perspective filter Category, CLUSTER means Kubernetes
          enum:
            - CLUSTER
            - AWS
            - GCP
            - AZURE
            - EXTERNAL_DATA
            - COMMON
            - CUSTOM
            - BUSINESS_MAPPING
            - LABEL
            - LABEL_V2
        identifierName:
          type: string
    QLCEViewFilter:
      type: object
      properties:
        field:
          $ref: '#/components/schemas/QLCEViewFieldInput'
        operator:
          type: string
          enum:
            - NOT_IN
            - IN
            - EQUALS
            - NOT_NULL
            - 'NULL'
            - LIKE
            - SEARCH
        values:
          type: array
          items:
            type: string
    QLCEViewFilterWrapper:
      type: object
      properties:
        idFilter:
          $ref: '#/components/schemas/QLCEViewFilter'
        timeFilter:
          $ref: '#/components/schemas/QLCEViewTimeFilter'
        timeRangeTypeFilter:
          type: string
          enum:
            - LAST_MONTH
            - CURRENT_MONTH
        viewMetadataFilter:
          $ref: '#/components/schemas/QLCEViewMetadataFilter'
        ruleFilter:
          $ref: '#/components/schemas/QLCEViewRule'
      description: Get Recommendations for a perspective
    QLCEViewGroupBy:
      type: object
      properties:
        entityGroupBy:
          $ref: '#/components/schemas/QLCEViewFieldInput'
        timeTruncGroupBy:
          $ref: '#/components/schemas/QLCEViewTimeTruncGroupBy'
    QLCEViewMetadataFilter:
      type: object
      properties:
        viewId:
          type: string
        isPreview:
          type: boolean
        preview:
          type: boolean
    QLCEViewRule:
      type: object
      properties:
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewFilter'
    QLCEViewTimeFilter:
      type: object
      properties:
        field:
          $ref: '#/components/schemas/QLCEViewFieldInput'
        operator:
          type: string
          enum:
            - AFTER
            - BEFORE
        value:
          type: number
    QLCEViewTimeTruncGroupBy:
      type: object
      properties:
        resolution:
          type: string
          enum:
            - HOUR
            - DAY
            - MONTH
            - WEEK
            - QUARTER
            - YEAR
    PerspectiveAnomalyData:
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
        anomalyCount:
          type: integer
          format: int32
        actualCost:
          type: number
          format: double
        differenceFromExpectedCost:
          type: number
          format: double
        associatedResources:
          type: array
          items:
            $ref: '#/components/schemas/EntityInfo'
        resourceType:
          type: string
      description: This object contains the Anomalies associated with a perspective
    ResponseDTOListPerspectiveAnomalyData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/PerspectiveAnomalyData'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyFeedback:
      type: object
      properties:
        feedback:
          type: string
          description: Anomaly feedback
          enum:
            - TRUE_ANOMALY
            - TRUE_EXPECTED_ANOMALY
            - FALSE_ANOMALY
            - NOT_RESPONDED
      description: The query object for cost anomaly feedback
    BIDashboardSummary:
      type: object
      properties:
        dashboardName:
          type: string
          description: Name of the BI Dashboard
        dashboardId:
          type: string
          description: Static Dashboard ID used in the dashboard's URL
        cloudProvider:
          type: string
          description: Cloud Provider associated with the dashboard
        description:
          type: string
          description: Brief Description about the dashboard
        serviceType:
          type: string
          description: Service Type
        redirectionURL:
          type: string
          description: URL of the dashboard page to which user should be redirected
      description: BI Dashboard Summary
    ResponseDTOListBIDashboardSummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/BIDashboardSummary'
        metaData:
          type: object
        correlationId:
          type: string
    AlertThreshold:
      type: object
      properties:
        percentage:
          type: number
          format: double
        basedOn:
          type: string
          description: >-
            Whether the alert is based on Actual cost or next 30 days Forecasted
            Cost
          enum:
            - ACTUAL_COST
            - FORECASTED_COST
            - PARTIAL_COST
            - YEARLY_ACTUAL_COST
            - YEARLY_FORECASTED_COST
        emailAddresses:
          type: array
          items:
            type: string
        userGroupIds:
          type: array
          items:
            type: string
        slackWebhooks:
          type: array
          items:
            type: string
        alertsSent:
          type: integer
          format: int32
        crossedAt:
          type: integer
          format: int64
      description: A description of a single Alert
    BudgetCostData:
      type: object
      properties:
        time:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        actualCost:
          type: number
          format: double
        forecastCost:
          type: number
          format: double
        budgeted:
          type: number
          format: double
        budgetVariance:
          type: number
          format: double
        budgetVariancePercentage:
          type: number
          format: double
    BudgetGroup:
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        name:
          maxLength: 80
          minLength: 1
          type: string
        budgetGroupMonthlyBreakdown:
          $ref: '#/components/schemas/BudgetMonthlyBreakdown'
        period:
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - QUARTERLY
            - YEARLY
        budgetGroupAmount:
          type: number
          format: double
        actualCost:
          type: number
          format: double
        forecastCost:
          type: number
          format: double
        lastMonthCost:
          type: number
          format: double
        alertThresholds:
          type: array
          items:
            $ref: '#/components/schemas/AlertThreshold'
        childEntities:
          type: array
          items:
            $ref: '#/components/schemas/BudgetGroupChildEntityDTO'
        parentBudgetGroupId:
          type: string
        cascadeType:
          type: string
          enum:
            - EQUAL
            - PROPORTIONAL
            - NO_CASCADE
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        budgetGroupHistory:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/BudgetCostData'
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: The Cloud Cost Budget Group definition
    BudgetGroupChildEntityDTO:
      type: object
      properties:
        id:
          type: string
        proportion:
          type: number
          format: double
        isBudgetGroup:
          type: boolean
          writeOnly: true
        budgetGroup:
          type: boolean
    BudgetMonthlyBreakdown:
      type: object
      properties:
        budgetBreakdown:
          type: string
          description: Whether the Yearly budget breakdown is yearly or monthly
          enum:
            - YEARLY
            - MONTHLY
        budgetMonthlyAmount:
          type: array
          description: Budgeted monthly amount for yearly budget
          items:
            $ref: '#/components/schemas/ValueDataPoint'
        actualMonthlyCost:
          type: array
          description: Actual monthly cost for yearly budget
          items:
            type: number
            description: Actual monthly cost for yearly budget
            format: double
        forecastMonthlyCost:
          type: array
          description: Forecasted monthly cost for yearly budget
          items:
            type: number
            description: Forecasted monthly cost for yearly budget
            format: double
        yearlyLastPeriodCost:
          type: array
          description: Yearly monthly cost for last year budget
          items:
            type: number
            description: Yearly monthly cost for last year budget
            format: double
        forecastCostConfigured:
          type: boolean
          description: Indicates whether forecast cost has been ingested by the user
      description: The budget monthly breakdown of a Yearly Budget
    ResponseDTOBudgetGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/BudgetGroup'
        metaData:
          type: object
        correlationId:
          type: string
    ValueDataPoint:
      type: object
      properties:
        time:
          type: integer
          format: int64
        value:
          type: number
          format: double
    ResponseDTOListValueDataPoint:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ValueDataPoint'
        metaData:
          type: object
        correlationId:
          type: string
    BudgetSummary:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        perspectiveId:
          type: string
        perspectiveName:
          type: string
        folderId:
          type: string
        budgetAmount:
          type: number
          format: double
        actualCost:
          type: number
          format: double
        forecastCost:
          type: number
          format: double
        timeLeft:
          type: integer
          format: int32
        timeUnit:
          type: string
        timeScope:
          type: string
        actualCostAlerts:
          type: array
          items:
            type: number
            format: double
        forecastCostAlerts:
          type: array
          items:
            type: number
            format: double
        alertThresholds:
          type: array
          items:
            $ref: '#/components/schemas/AlertThreshold'
        period:
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - QUARTERLY
            - YEARLY
        type:
          type: string
          description: >-
            Whether the Budget is based on a specified amount or based on
            previous month's actual spend
          enum:
            - SPECIFIED_AMOUNT
            - PREVIOUS_MONTH_SPEND
            - PREVIOUS_PERIOD_SPEND
        growthRate:
          type: number
          format: double
        startTime:
          type: integer
          format: int64
        budgetMonthlyBreakdown:
          $ref: '#/components/schemas/BudgetMonthlyBreakdown'
        childEntityProportions:
          type: array
          items:
            $ref: '#/components/schemas/BudgetGroupChildEntityDTO'
        isBudgetGroup:
          type: boolean
          writeOnly: true
        cascadeType:
          type: string
          enum:
            - EQUAL
            - PROPORTIONAL
            - NO_CASCADE
        parentId:
          type: string
        disableCurrencyWarning:
          type: boolean
        createdAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedAt:
          type: integer
          format: int64
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        budgetGroup:
          type: boolean
    ResponseDTOListBudgetSummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/BudgetSummary'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListBudgetGroup:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/BudgetGroup'
        metaData:
          type: object
        correlationId:
          type: string
    ApplicationBudgetScope:
      type: object
      allOf:
        - $ref: '#/components/schemas/BudgetScope'
        - type: object
          properties:
            applicationIds:
              type: array
              items:
                type: string
            environmentType:
              type: string
              enum:
                - PROD
                - NON_PROD
                - ALL
    Budget:
      required:
        - accountId
        - name
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        name:
          maxLength: 80
          minLength: 1
          type: string
        scope:
          $ref: '#/components/schemas/BudgetScope'
        type:
          type: string
          description: >-
            Whether the Budget is based on a specified amount or based on
            previous month's actual spend
          enum:
            - SPECIFIED_AMOUNT
            - PREVIOUS_MONTH_SPEND
            - PREVIOUS_PERIOD_SPEND
        budgetMonthlyBreakdown:
          $ref: '#/components/schemas/BudgetMonthlyBreakdown'
        budgetAmount:
          type: number
          format: double
        period:
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - QUARTERLY
            - YEARLY
        growthRate:
          type: number
          format: double
        actualCost:
          type: number
          format: double
        forecastCost:
          type: number
          format: double
        lastMonthCost:
          type: number
          format: double
        alertThresholds:
          type: array
          items:
            $ref: '#/components/schemas/AlertThreshold'
        emailAddresses:
          type: array
          items:
            type: string
        userGroupIds:
          type: array
          items:
            type: string
        parentBudgetGroupId:
          type: string
        notifyOnSlack:
          type: boolean
        isNgBudget:
          type: boolean
          writeOnly: true
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        budgetHistory:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/BudgetCostData'
        disableCurrencyWarning:
          type: boolean
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        ngBudget:
          type: boolean
      description: The Cloud Cost Budget definition
    BudgetScope:
      required:
        - type
      type: object
      properties:
        entityIds:
          type: array
          items:
            type: string
        entityNames:
          type: array
          items:
            type: string
        budgetScopeType:
          type: string
        type:
          type: string
      description: The scope in which the Budget was created
      discriminator:
        propertyName: type
    ClusterBudgetScope:
      type: object
      allOf:
        - $ref: '#/components/schemas/BudgetScope'
        - type: object
          properties:
            clusterIds:
              type: array
              items:
                type: string
    PerspectiveBudgetScope:
      type: object
      allOf:
        - $ref: '#/components/schemas/BudgetScope'
        - type: object
          properties:
            viewId:
              type: string
            viewName:
              type: string
    ResponseDTOBudget:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Budget'
        metaData:
          type: object
        correlationId:
          type: string
    BudgetData:
      type: object
      properties:
        costData:
          type: array
          items:
            $ref: '#/components/schemas/BudgetCostData'
        forecastCost:
          type: number
          format: double
      description: This object contains the Cost Data associated with a Budget
    ResponseDTOBudgetData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/BudgetData'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListBudget:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/Budget'
        metaData:
          type: object
        correlationId:
          type: string
    CostCategoryDeleteDTO:
      type: object
      properties:
        linkedPerspectives:
          type: object
          additionalProperties:
            type: string
        message:
          type: string
        deleted:
          type: boolean
    RestResponseCostCategoryDeleteDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/CostCategoryDeleteDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    BusinessMapping:
      required:
        - name
      type: object
      properties:
        uuid:
          type: string
        name:
          maxLength: 32
          minLength: 1
          pattern: ^[^\d][^'"\\]*$
          type: string
        accountId:
          type: string
        costTargets:
          type: array
          items:
            $ref: '#/components/schemas/CostTarget'
        sharedCosts:
          type: array
          items:
            $ref: '#/components/schemas/SharedCost'
        unallocatedCost:
          $ref: '#/components/schemas/UnallocatedCost'
        dataSources:
          type: array
          items:
            type: string
            description: Perspective filter Category, CLUSTER means Kubernetes
            enum:
              - CLUSTER
              - AWS
              - GCP
              - AZURE
              - EXTERNAL_DATA
              - COMMON
              - CUSTOM
              - BUSINESS_MAPPING
              - LABEL
              - LABEL_V2
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        costTargetsWithUUID:
          type: array
          writeOnly: true
          items:
            $ref: '#/components/schemas/CostTarget'
    CostTarget:
      type: object
      properties:
        name:
          pattern: ^[^'"\\]*$
          type: string
        rules:
          type: array
          items:
            $ref: '#/components/schemas/ViewRule'
    RestResponseBusinessMapping:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/BusinessMapping'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    SharedCost:
      type: object
      properties:
        name:
          pattern: ^[^\d][^'"\\]*$
          type: string
        rules:
          type: array
          items:
            $ref: '#/components/schemas/ViewRule'
        strategy:
          type: string
          enum:
            - EQUAL
            - PROPORTIONAL
            - FIXED
        splits:
          type: array
          items:
            $ref: '#/components/schemas/SharedCostSplit'
    SharedCostSplit:
      type: object
      properties:
        costTargetName:
          type: string
        percentageContribution:
          type: number
          format: double
    UnallocatedCost:
      type: object
      properties:
        strategy:
          type: string
          enum:
            - DISPLAY_NAME
            - HIDE
            - SHARE
        label:
          pattern: ^[^'"\\]*$
          type: string
        sharingStrategy:
          type: string
          enum:
            - EQUAL
            - PROPORTIONAL
            - FIXED
        splits:
          type: array
          items:
            $ref: '#/components/schemas/SharedCostSplit'
    ViewCondition:
      type: object
      properties:
        type:
          type: string
      description: >-
        This object defines a filter Condition, an array of filter Conditions
        are combined using AND operator
      discriminator:
        propertyName: type
    ViewField:
      type: object
      properties:
        fieldId:
          type: string
        fieldName:
          type: string
        identifier:
          type: string
          description: Perspective filter Category, CLUSTER means Kubernetes
          enum:
            - CLUSTER
            - AWS
            - GCP
            - AZURE
            - EXTERNAL_DATA
            - COMMON
            - CUSTOM
            - BUSINESS_MAPPING
            - LABEL
            - LABEL_V2
        identifierName:
          type: string
      description: An individual Perspective field
    ViewIdCondition:
      type: object
      allOf:
        - $ref: '#/components/schemas/ViewCondition'
        - type: object
          properties:
            viewField:
              $ref: '#/components/schemas/ViewField'
            viewOperator:
              type: string
              enum:
                - NOT_IN
                - IN
                - EQUALS
                - NOT_NULL
                - 'NULL'
                - LIKE
            values:
              type: array
              items:
                type: string
    ViewRule:
      type: object
      properties:
        viewConditions:
          type: array
          items:
            $ref: '#/components/schemas/ViewCondition'
      description: >-
        This object will contain a Perspective Rule, an array of Perspective
        Rules are combined using OR operator
    BusinessMappingListDTO:
      type: object
      properties:
        businessMappings:
          type: array
          items:
            $ref: '#/components/schemas/BusinessMapping'
        totalCount:
          type: integer
          format: int64
    RestResponseBusinessMappingListDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/BusinessMappingListDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
    CcmK8sMetaInfo:
      type: object
      properties:
        clusterId:
          type: string
        clusterName:
          type: string
        ccmk8sConnectorId:
          type: string
        visibility:
          type: array
          items:
            type: string
        optimisation:
          type: array
          items:
            type: string
    CcmK8sMetaInfoResponseDTO:
      type: object
      properties:
        ccmK8sMeta:
          type: array
          items:
            $ref: '#/components/schemas/CcmK8sMetaInfo'
    ResponseDTOCcmK8sMetaInfoResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CcmK8sMetaInfoResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    CcmK8sMetaDTO:
      type: object
      properties:
        ccmK8sConnectorId:
          type: array
          items:
            type: string
    AnomalyAlertPreferences:
      type: object
      properties:
        costThreshold:
          type: number
          format: double
        costThresholdPercentage:
          type: number
          format: double
      description: This object stores threshold preferences for an anomaly alert
    EmailNotificationChannel:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationChannel'
        - type: object
          properties:
            emails:
              type: array
              items:
                type: string
    MicrosoftTeamsNotificationChannel:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationChannel'
        - type: object
          properties:
            microsoftTeamsUrl:
              type: string
    NotificationChannel:
      required:
        - type
      type: object
      properties:
        notificationChannelType:
          type: string
          enum:
            - EMAIL
            - SLACK
            - PAGERDUTY
            - MSTEAMS
            - WEBHOOK
            - DATADOG
        channelUrls:
          type: array
          items:
            type: string
        type:
          type: string
      description: The Cloud Cost Notification Channel definition
      discriminator:
        propertyName: type
    NotificationSetting:
      required:
        - accountId
        - scope
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        accountId:
          type: string
        scope:
          type: string
          enum:
            - ALL_DATA
            - PERSPECTIVE
            - COST_CATEGORY
        perspectiveId:
          type: string
        perspectiveName:
          type: string
        channels:
          type: array
          items:
            $ref: '#/components/schemas/NotificationChannel'
        anomalyAlertPreferences:
          $ref: '#/components/schemas/AnomalyAlertPreferences'
        enabled:
          type: boolean
        defaultPreferences:
          type: boolean
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: The Cloud Cost Notification Setting definition
    ResponseDTOListNotificationSetting:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/NotificationSetting'
        metaData:
          type: object
        correlationId:
          type: string
    SlackNotificationChannel:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationChannel'
        - type: object
          properties:
            slackWebHookUrl:
              type: string
    ResponseDTONotificationSetting:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NotificationSetting'
        metaData:
          type: object
        correlationId:
          type: string
    CCMOverview:
      type: object
      properties:
        costPerDay:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        totalCost:
          type: number
          format: double
        totalCostTrend:
          type: number
          format: double
        recommendationsCount:
          type: integer
          format: int32
      description: This object contains CCM Overview details
    CcmDataPoint:
      type: object
      properties:
        key:
          $ref: '#/components/schemas/CcmReference'
        value:
          type: number
    CcmReference:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        type:
          type: string
    ResponseDTOCCMOverview:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CCMOverview'
        metaData:
          type: object
        correlationId:
          type: string
    TimeSeriesDataPoints:
      type: object
      properties:
        values:
          type: array
          items:
            $ref: '#/components/schemas/CcmDataPoint'
        time:
          type: integer
          format: int64
    AnomalyComment:
      required:
        - accountId
        - anomalyId
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        anomalyId:
          type: string
          description: Identifier of the anomaly this comment belongs to
        comment:
          type: string
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        createdAt:
          type: integer
          format: int64
    ResponseDTOListAnomalyComment:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyComment'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyCostTimeSeries:
      type: object
      properties:
        time:
          type: integer
          format: int64
        anomalousCost:
          type: number
          format: double
        cost:
          type: number
          format: double
      description: >-
        This object details cost data about a particular anomaly for given
        timeStamp
    ResponseDTOListAnomalyCostTimeSeries:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyCostTimeSeries'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOAnomalyData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AnomalyData'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyForecastCostTimeSeries:
      type: object
      properties:
        time:
          type: integer
          description: The timestamp for the forecasted data in milliseconds since epoch
          format: int64
        forecastValue:
          type: number
          description: The forecasted cost value at the given time
          format: double
        predictionIntervalUpperBound:
          type: number
          description: The upper bound of the confidence interval for the forecast
          format: double
        predictionIntervalLowerBound:
          type: number
          description: The lower bound of the confidence interval for the forecast
          format: double
      description: >-
        This object details forecasted cost data about a particular resource
        associated with an anomaly for given timeStamp, including confidence
        intervals
    ResponseDTOListAnomalyForecastCostTimeSeries:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyForecastCostTimeSeries'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyResourceCostTimeSeries:
      type: object
      properties:
        time:
          type: integer
          format: int64
        cost:
          type: number
          format: double
      description: >-
        This object details cost data about a particular resource associated
        with an anomaly for given timeStamp
    ResponseDTOListAnomalyResourceCostTimeSeries:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyResourceCostTimeSeries'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyResourceDetails:
      type: object
      properties:
        resource:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        cost:
          type: number
          format: double
        anomalousCost:
          type: number
          format: double
        anomalousCostPercentage:
          type: number
          format: double
      description: This object details data about a particular anomalous resource
    ResponseDTOListAnomalyResourceDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnomalyResourceDetails'
        metaData:
          type: object
        correlationId:
          type: string
    AnomalyMetrics:
      type: object
      properties:
        count:
          type: number
          format: double
        costImpact:
          type: number
          format: double
        status:
          type: string
      description: This object details data about a particular anomaly type
    AnomalyOverview:
      type: object
      properties:
        active:
          $ref: '#/components/schemas/AnomalyMetrics'
        ignored:
          $ref: '#/components/schemas/AnomalyMetrics'
        archived:
          $ref: '#/components/schemas/AnomalyMetrics'
        resolved:
          $ref: '#/components/schemas/AnomalyMetrics'
      description: This object details data about different anomaly type
    ResponseDTOAnomalyOverview:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AnomalyOverview'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOAnomalyMetrics:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AnomalyMetrics'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOTreeMapLongAnomalyOverview:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/AnomalyOverview'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTODouble:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: number
          format: double
        metaData:
          type: object
        correlationId:
          type: string
    CostOverview:
      type: object
      properties:
        Trend:
          type: number
          description: Cost trend
        Cost:
          type: number
          description: Total cost
      description: Overview of the cost.
    ResponseDTOCostOverview:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CostOverview'
        metaData:
          type: object
        correlationId:
          type: string
    CostDetailsQueryParams:
      type: object
      properties:
        filters:
          type: array
          description: Filters to be applied on the response.
          items:
            $ref: '#/components/schemas/FieldFilter'
        groupBy:
          type: array
          description: Fields on which the response will be grouped by.
          items:
            type: string
            description: List of all possible Fields
            enum:
              - PERSPECTIVE_ID
              - ANOMALY_ID
              - WORKLOAD
              - WORKLOAD_TYPE
              - CLUSTER_ID
              - CLUSTER_NAME
              - CLUSTER_NAMESPACE
              - CLUSTER_NAMESPACE_ID
              - CLUSTER_WORKLOAD
              - CLUSTER_WORKLOAD_ID
              - CLUSTER_NODE
              - CLUSTER_POD
              - CLUSTER_PARENT_INSTANCE_ID
              - CLUSTER_STORAGE
              - CLUSTER_APPLICATION
              - CLUSTER_ENVIRONMENT
              - CLUSTER_SERVICE
              - CLUSTER_CLOUD_PROVIDER
              - CLUSTER_ECS_SERVICE
              - CLUSTER_ECS_SERVICE_ID
              - CLUSTER_ECS_TASK
              - CLUSTER_ECS_TASK_ID
              - CLUSTER_ECS_LAUNCH_TYPE
              - CLUSTER_ECS_LAUNCH_TYPE_ID
              - NAMESPACE
              - SERVICE
              - SERVICE_NAME
              - GCP_PRODUCT
              - GCP_PROJECT
              - GCP_SKU_ID
              - GCP_SKU_DESCRIPTION
              - AWS_ACCOUNT
              - AWS_SERVICE
              - AWS_INSTANCE_TYPE
              - AWS_USAGE_TYPE
              - AWS_BILLING_ENTITY
              - AWS_LINE_ITEM_TYPE
              - AZURE_SUBSCRIPTION_GUID
              - AZURE_METER_NAME
              - AZURE_METER_CATEGORY
              - AZURE_METER_SUBCATEGORY
              - AZURE_RESOURCE_ID
              - AZURE_RESOURCE_GROUP_NAME
              - AZURE_RESOURCE_TYPE
              - AZURE_RESOURCE
              - AZURE_SERVICE_NAME
              - AZURE_SERVICE_TIER
              - AZURE_INSTANCE_ID
              - AZURE_SUBSCRIPTION_NAME
              - AZURE_PUBLISHER_NAME
              - AZURE_PUBLISHER_TYPE
              - AZURE_RESERVATION_ID
              - AZURE_RESERVATION_NAME
              - AZURE_FREQUENCY
              - AZURE_CHARGE_TYPE
              - AZURE_PRICING_MODEL
              - AZURE_BENEFIT_NAME
              - AZURE_RESOURCE_NAME
              - COMMON_PRODUCT
              - COMMON_REGION
              - COMMON_NONE
              - CLOUD_PROVIDER
              - STATUS
              - REGION
              - ANOMALY_TIME
              - ACTUAL_COST
              - EXPECTED_COST
              - ANOMALOUS_SPEND
              - COST_IMPACT
              - ALL
              - ANOMALOUS_SPEND_PERCENTAGE
              - TOTAL_COST
              - IDLE_COST
              - UNALLOCATED_COST
              - RULE_NAME
              - RULE_SET_NAME
              - POTENTIAL_SAVINGS
              - LAST_EVALUATED_AT
              - ANOMALY_STATUS
              - RECOMMENDATIONS_COUNT
              - ACTUAL_AMOUNT
              - CRITICALITY
              - DURATION
              - UPDATED_AT
              - UPDATED_BY
              - UPDATED_AT_RELATIVE
        timeResolution:
          type: string
          description: Only applicable for Time Series Endpoints, defaults to DAY
          enum:
            - HOUR
            - DAY
            - MONTH
            - WEEK
            - QUARTER
            - YEAR
        limit:
          type: integer
          description: Limit on the number of cost values returned, 0 by default.
          format: int32
        sortOrder:
          type: string
          description: Order of sorting on cost, Descending by default.
          enum:
            - ASCENDING
            - DESCENDING
        offset:
          type: integer
          description: Offset on the cost values returned, 10 by default.
          format: int32
        skipRoundOff:
          type: boolean
          description: Skip Rounding off the cost values returned, false by default.
      description: Common query parameters for all cost details APIs
    FieldFilter:
      type: object
      properties:
        field:
          type: string
          description: List of all possible Fields
          enum:
            - PERSPECTIVE_ID
            - ANOMALY_ID
            - WORKLOAD
            - WORKLOAD_TYPE
            - CLUSTER_ID
            - CLUSTER_NAME
            - CLUSTER_NAMESPACE
            - CLUSTER_NAMESPACE_ID
            - CLUSTER_WORKLOAD
            - CLUSTER_WORKLOAD_ID
            - CLUSTER_NODE
            - CLUSTER_POD
            - CLUSTER_PARENT_INSTANCE_ID
            - CLUSTER_STORAGE
            - CLUSTER_APPLICATION
            - CLUSTER_ENVIRONMENT
            - CLUSTER_SERVICE
            - CLUSTER_CLOUD_PROVIDER
            - CLUSTER_ECS_SERVICE
            - CLUSTER_ECS_SERVICE_ID
            - CLUSTER_ECS_TASK
            - CLUSTER_ECS_TASK_ID
            - CLUSTER_ECS_LAUNCH_TYPE
            - CLUSTER_ECS_LAUNCH_TYPE_ID
            - NAMESPACE
            - SERVICE
            - SERVICE_NAME
            - GCP_PRODUCT
            - GCP_PROJECT
            - GCP_SKU_ID
            - GCP_SKU_DESCRIPTION
            - AWS_ACCOUNT
            - AWS_SERVICE
            - AWS_INSTANCE_TYPE
            - AWS_USAGE_TYPE
            - AWS_BILLING_ENTITY
            - AWS_LINE_ITEM_TYPE
            - AZURE_SUBSCRIPTION_GUID
            - AZURE_METER_NAME
            - AZURE_METER_CATEGORY
            - AZURE_METER_SUBCATEGORY
            - AZURE_RESOURCE_ID
            - AZURE_RESOURCE_GROUP_NAME
            - AZURE_RESOURCE_TYPE
            - AZURE_RESOURCE
            - AZURE_SERVICE_NAME
            - AZURE_SERVICE_TIER
            - AZURE_INSTANCE_ID
            - AZURE_SUBSCRIPTION_NAME
            - AZURE_PUBLISHER_NAME
            - AZURE_PUBLISHER_TYPE
            - AZURE_RESERVATION_ID
            - AZURE_RESERVATION_NAME
            - AZURE_FREQUENCY
            - AZURE_CHARGE_TYPE
            - AZURE_PRICING_MODEL
            - AZURE_BENEFIT_NAME
            - AZURE_RESOURCE_NAME
            - COMMON_PRODUCT
            - COMMON_REGION
            - COMMON_NONE
            - CLOUD_PROVIDER
            - STATUS
            - REGION
            - ANOMALY_TIME
            - ACTUAL_COST
            - EXPECTED_COST
            - ANOMALOUS_SPEND
            - COST_IMPACT
            - ALL
            - ANOMALOUS_SPEND_PERCENTAGE
            - TOTAL_COST
            - IDLE_COST
            - UNALLOCATED_COST
            - RULE_NAME
            - RULE_SET_NAME
            - POTENTIAL_SAVINGS
            - LAST_EVALUATED_AT
            - ANOMALY_STATUS
            - RECOMMENDATIONS_COUNT
            - ACTUAL_AMOUNT
            - CRITICALITY
            - DURATION
            - UPDATED_AT
            - UPDATED_BY
            - UPDATED_AT_RELATIVE
        operator:
          type: string
          description: List of all possible Operators
          enum:
            - NOT_IN
            - IN
            - EQUALS
            - NOT_NULL
            - 'NULL'
            - LIKE
            - GREATER_THAN
            - LESS_THAN
            - GREATER_THAN_EQUALS_TO
            - LESS_THAN_EQUALS_TO
            - AFTER
            - BEFORE
        values:
          type: array
          description: List of all values of the filter.
          items:
            type: string
            description: List of all values of the filter.
      description: >-
        Filters return values as per the field, operator & List of string values
        provided
    CCMEcsEntity:
      type: object
      properties:
        launchType:
          type: string
        service:
          type: string
        taskId:
          type: string
    CCMK8sEntity:
      type: object
      properties:
        namespace:
          type: string
        workload:
          type: string
        selectedLabels:
          type: array
          items:
            $ref: '#/components/schemas/K8sLabel'
    ClusterCostDetails:
      type: object
      properties:
        totalCost:
          type: number
          format: double
        idleCost:
          type: number
          format: double
        unallocatedCost:
          type: number
          format: double
        clusterType:
          type: string
        cluster:
          type: string
        clusterId:
          type: string
        k8s:
          $ref: '#/components/schemas/CCMK8sEntity'
        ecs:
          $ref: '#/components/schemas/CCMEcsEntity'
      description: Details of cluster cost
    K8sLabel:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    ResponseDTOListClusterCostDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ClusterCostDetails'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterCostDetailsQueryParams:
      type: object
      properties:
        aggregations:
          type: array
          description: Fields which will be aggregated in the response
          items:
            $ref: '#/components/schemas/CCMAggregation'
        filters:
          type: array
          description: Filters to be applied on the response.
          items:
            $ref: '#/components/schemas/FieldFilter'
        groupBy:
          type: array
          description: Fields on which the response will be grouped by.
          items:
            type: string
            description: List of all possible Fields
            enum:
              - PERSPECTIVE_ID
              - ANOMALY_ID
              - WORKLOAD
              - WORKLOAD_TYPE
              - CLUSTER_ID
              - CLUSTER_NAME
              - CLUSTER_NAMESPACE
              - CLUSTER_NAMESPACE_ID
              - CLUSTER_WORKLOAD
              - CLUSTER_WORKLOAD_ID
              - CLUSTER_NODE
              - CLUSTER_POD
              - CLUSTER_PARENT_INSTANCE_ID
              - CLUSTER_STORAGE
              - CLUSTER_APPLICATION
              - CLUSTER_ENVIRONMENT
              - CLUSTER_SERVICE
              - CLUSTER_CLOUD_PROVIDER
              - CLUSTER_ECS_SERVICE
              - CLUSTER_ECS_SERVICE_ID
              - CLUSTER_ECS_TASK
              - CLUSTER_ECS_TASK_ID
              - CLUSTER_ECS_LAUNCH_TYPE
              - CLUSTER_ECS_LAUNCH_TYPE_ID
              - NAMESPACE
              - SERVICE
              - SERVICE_NAME
              - GCP_PRODUCT
              - GCP_PROJECT
              - GCP_SKU_ID
              - GCP_SKU_DESCRIPTION
              - AWS_ACCOUNT
              - AWS_SERVICE
              - AWS_INSTANCE_TYPE
              - AWS_USAGE_TYPE
              - AWS_BILLING_ENTITY
              - AWS_LINE_ITEM_TYPE
              - AZURE_SUBSCRIPTION_GUID
              - AZURE_METER_NAME
              - AZURE_METER_CATEGORY
              - AZURE_METER_SUBCATEGORY
              - AZURE_RESOURCE_ID
              - AZURE_RESOURCE_GROUP_NAME
              - AZURE_RESOURCE_TYPE
              - AZURE_RESOURCE
              - AZURE_SERVICE_NAME
              - AZURE_SERVICE_TIER
              - AZURE_INSTANCE_ID
              - AZURE_SUBSCRIPTION_NAME
              - AZURE_PUBLISHER_NAME
              - AZURE_PUBLISHER_TYPE
              - AZURE_RESERVATION_ID
              - AZURE_RESERVATION_NAME
              - AZURE_FREQUENCY
              - AZURE_CHARGE_TYPE
              - AZURE_PRICING_MODEL
              - AZURE_BENEFIT_NAME
              - AZURE_RESOURCE_NAME
              - COMMON_PRODUCT
              - COMMON_REGION
              - COMMON_NONE
              - CLOUD_PROVIDER
              - STATUS
              - REGION
              - ANOMALY_TIME
              - ACTUAL_COST
              - EXPECTED_COST
              - ANOMALOUS_SPEND
              - COST_IMPACT
              - ALL
              - ANOMALOUS_SPEND_PERCENTAGE
              - TOTAL_COST
              - IDLE_COST
              - UNALLOCATED_COST
              - RULE_NAME
              - RULE_SET_NAME
              - POTENTIAL_SAVINGS
              - LAST_EVALUATED_AT
              - ANOMALY_STATUS
              - RECOMMENDATIONS_COUNT
              - ACTUAL_AMOUNT
              - CRITICALITY
              - DURATION
              - UPDATED_AT
              - UPDATED_BY
              - UPDATED_AT_RELATIVE
        timeResolution:
          type: string
          description: Only applicable for Time Series Endpoints, defaults to DAY
          enum:
            - HOUR
            - DAY
            - MONTH
            - WEEK
            - QUARTER
            - YEAR
        limit:
          type: integer
          description: Limit on the number of cost values returned, 0 by default.
          format: int32
        sortOrder:
          type: string
          description: Order of sorting on cost, Descending by default.
          enum:
            - ASCENDING
            - DESCENDING
        offset:
          type: integer
          description: Offset on the cost values returned, 10 by default.
          format: int32
        skipRoundOff:
          type: boolean
          description: Skip Rounding off the cost values returned, false by default.
        selectedLabels:
          type: array
          description: The response will contain values corresponding to these labels
          items:
            type: string
            description: The response will contain values corresponding to these labels
      description: Common query parameters for all cluster cost details APIs
    PerspectiveEntityStatsData:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewEntityStatsDataPoint'
    QLCEViewEntityStatsDataPoint:
      type: object
      properties:
        name:
          type: string
        cost:
          type: number
        costTrend:
          type: number
        isClusterPerspective:
          type: boolean
          writeOnly: true
        clusterPerspective:
          type: boolean
    ResponseDTOPerspectiveEntityStatsData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PerspectiveEntityStatsData'
        metaData:
          type: object
        correlationId:
          type: string
    PerspectiveTimeSeriesData:
      type: object
      properties:
        stats:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        cpuUtilValues:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        memoryUtilValues:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        cpuRequest:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        cpuLimit:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        memoryRequest:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
        memoryLimit:
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesDataPoints'
    ResponseDTOPerspectiveTimeSeriesData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PerspectiveTimeSeriesData'
        metaData:
          type: object
        correlationId:
          type: string
    ExternalDataFiles:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        providerName:
          type: string
          description: providerName
        name:
          type: string
          description: filename
        uploadStatus:
          type: string
          description: status of upload
          enum:
            - INPROGRESS
            - COMPLETE
            - FAILED
            - UNKNOWN
        invoiceMonth:
          type: string
          description: invoice_month
        ingestionStatus:
          type: string
          description: status of file ingestion
        description:
          type: string
          description: description
        md5:
          type: string
          description: md5 of the file
        signedUrlUsed:
          type: boolean
          description: signedUrlUsed - truncated
        cloudStoragePath:
          type: string
          description: cloudStoragePath
        fileExtension:
          type: string
          description: externalDataFileExtension
          enum:
            - CSV
        providerId:
          type: string
          description: Identifier of the external data provider
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the information on the external data file
        uploads for an account
    ResponseDTOExternalDataFiles:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ExternalDataFiles'
        metaData:
          type: object
        correlationId:
          type: string
    CreateExternalDataFilesDTO:
      type: object
      properties:
        externalDataFiles:
          $ref: '#/components/schemas/ExternalDataFiles'
    ExternalDataProvider:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        providerType:
          type: string
          description: providerType
          enum:
            - SNOWFLAKE
            - MONGO
            - CUSTOM
        name:
          type: string
          description: name
        providerName:
          type: string
          description: providerName
        status:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/InvoicePeriodStatus'
          description: data exists
        fileExists:
          type: boolean
          description: files exists
        invoicePeriod:
          type: string
          description: invoice period
          enum:
            - MONTHLY
            - YEARLY
            - QUARTERLY
        description:
          type: string
          description: Description of the entity
        lastSyncedAt:
          type: integer
          description: lastSyncedAt
          format: int64
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the information on the external data providers
        for an account
    InvoicePeriodStatus:
      type: object
      properties:
        status:
          type: string
        message:
          type: string
        lastSyncedAt:
          type: integer
          format: int64
      description: data exists
    ResponseDTOExternalDataProvider:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ExternalDataProvider'
        metaData:
          type: object
        correlationId:
          type: string
    CreateExternalDataProviderDTO:
      type: object
      properties:
        externalDataProvider:
          $ref: '#/components/schemas/ExternalDataProvider'
    ExternalDataIngestionRequest:
      type: object
      properties:
        accountId:
          type: string
          description: accountId
        providerId:
          type: string
          description: providerId
        invoicePeriod:
          type: array
          description: invoicePeriod
          items:
            type: string
            description: invoicePeriod
      description: This has the query to list Enforcement Count
    ResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListExternalDataProvider:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/ExternalDataProvider'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOMapStringListExternalDataFiles:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/ExternalDataFiles'
        metaData:
          type: object
        correlationId:
          type: string
    ExternalDataProviderList:
      type: object
      properties:
        providerList:
          type: array
          items:
            type: string
    GovernancePromptRule:
      type: object
      properties:
        description:
          type: string
        ruleYaml:
          type: string
    ResponseDTOListGovernancePromptRule:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/GovernancePromptRule'
        metaData:
          type: object
        correlationId:
          type: string
    EnforcementDetails:
      type: object
      properties:
        enforcementName:
          type: string
          description: Enforcement Name
        schedule:
          type: string
          description: schedule
        description:
          type: string
          description: description
        accounts:
          type: array
          description: Target Account/Subscription/Project Ids
          items:
            type: string
            description: Target Account/Subscription/Project Ids
        regions:
          type: array
          description: Target Region
          items:
            type: string
            description: Target Region
        ruleIds:
          type: object
          additionalProperties:
            type: string
            description: rules ids and list of enforcement
          description: rules ids and list of enforcement
        ruleSetIds:
          type: object
          additionalProperties:
            type: string
            description: rules pack ids and list of enforcement
          description: rules pack ids and list of enforcement
        isDryRun:
          type: boolean
          description: isDryRun
        isEnabled:
          type: boolean
          description: isEnabled
        executionTimezone:
          type: string
          description: executionTimezone
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        accountIdAndNames:
          type: object
          additionalProperties:
            type: string
            description: Target Account/Subscription/Project Id and Names
          description: Target Account/Subscription/Project Id and Names
      description: >-
        This object will contain the complete definition of a
        ExecutionEnforcementDetails
    ResponseDTOEnforcementDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnforcementDetails'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTORuleEnforcementRecommendationList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleEnforcementRecommendationList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleEnforcementRecommendation:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          type: string
          description: name
        description:
          type: string
          description: Description of the entity
        tags:
          type: array
          description: Tags
          items:
            type: string
            description: Tags
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        ruleIds:
          type: array
          description: rulesIds
          items:
            type: string
            description: rulesIds
        ruleSetIDs:
          type: array
          description: ruleSetIDs
          items:
            type: string
            description: ruleSetIDs
        executionSchedule:
          type: string
          description: executionSchedule
        executionTimezone:
          type: string
          description: executionTimezone
        targetAccounts:
          type: array
          description: targetAccounts
          items:
            type: string
            description: targetAccounts
        targetRegions:
          type: array
          description: targetRegions
          items:
            type: string
            description: targetRegions
        isDryRun:
          type: boolean
          description: isDryRun
        runCount:
          type: integer
          description: runCount
          format: int32
        isEnabled:
          type: boolean
          description: isEnabled
        ruleEnforcementRecommendationStatus:
          type: string
          description: ruleEnforcementRecommendationStatus
          enum:
            - NEW
            - DISMISSED
            - ACCEPTED
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost Rule
        Enforcement generated by AI assistant
    RuleEnforcementRecommendationList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int64
        ruleEnforcementRecommendations:
          type: array
          description: List of Rule Enforcement Recommendations
          items:
            $ref: '#/components/schemas/RuleEnforcementRecommendation'
      description: >-
        This object will contain the complete definition of a Cloud Cost Rule
        Enforcement Recommendation List
    ResponseDTORuleEnforcementRecommendation:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleEnforcementRecommendation'
        metaData:
          type: object
        correlationId:
          type: string
    GovernanceNotification:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          type: string
          description: name
        cloudProvider:
          type: string
          description: cloud provider
          enum:
            - AWS
            - AZURE
            - GCP
        resourceTypes:
          type: array
          description: resource types
          items:
            type: string
            description: resource types
        cloudAccountIds:
          type: array
          description: cloud account ids
          items:
            type: string
            description: cloud account ids
        resourceCount:
          type: integer
          description: resource count
          format: int64
        cost:
          type: number
          description: cost
          format: double
        emailIds:
          type: array
          description: email ids
          items:
            type: string
            description: email ids
        isAttachmentRequired:
          type: boolean
          description: is attachment required
        isEnabled:
          type: boolean
          description: is enabled
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Governance
        Notification
    ResponseDTOGovernanceNotification:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GovernanceNotification'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListGovernanceNotification:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/GovernanceNotification'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOMapStringMapStringInteger:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: integer
              format: int32
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOLong:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: integer
          format: int64
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOMapStringDouble:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
          additionalProperties:
            type: number
            format: double
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTORuleRecommendationSummary:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleRecommendationSummary'
        metaData:
          type: object
        correlationId:
          type: string
    RuleRecommendationExecution:
      type: object
      properties:
        connectorId:
          type: string
        targetId:
          type: string
        targetName:
          type: string
        targetRegion:
          type: string
        executionId:
          type: string
        statusMessage:
          type: string
        status:
          type: string
          enum:
            - FAILED
            - IN_PROGRESS
            - PARTIAL_SUCCESS
            - SUCCESS
            - IGNORED
        potentialSavings:
          type: number
          format: double
        isHarnessError:
          type: boolean
    RuleRecommendationSummary:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/RuleRecommendationSummaryId'
        targets:
          type: array
          items:
            type: string
        cloudProvider:
          type: string
          enum:
            - AWS
            - AZURE
            - GCP
        ruleName:
          type: string
        isOOTB:
          type: boolean
        lastEvaluatedAt:
          type: integer
          format: int64
        potentialSavings:
          type: number
          format: double
        status:
          type: string
          enum:
            - FAILED
            - IN_PROGRESS
            - PARTIAL_SUCCESS
            - SUCCESS
            - IGNORED
        executions:
          type: array
          items:
            $ref: '#/components/schemas/RuleRecommendationExecution'
        totalExecutions:
          type: integer
          format: int32
        totalFailedExecutions:
          type: integer
          format: int32
        totalRecommendations:
          type: integer
          format: int64
      description: >-
        This object will contain the complete definition of a Cloud Cost Asset
        Governance Rule Recommendation
    RuleRecommendationSummaryId:
      type: object
      properties:
        ruleId:
          type: string
        accountId:
          type: string
    ResourceBreakdown:
      type: object
      properties:
        resourceId:
          type: string
        cost:
          type: number
          format: double
        savings:
          type: number
          format: double
        actionApplied:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
      description: This object stores resource details for a policy execution.
    ResponseDTORuleExecutionList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleExecutionList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleExecution:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        jobId:
          type: string
          description: faktory job id
        ruleEnforcementRecommendationIdentifier:
          type: string
          description: ruleEnforcementRecommendationIdentifier
        ruleEnforcementRecommendationName:
          type: string
          description: ruleEnforcementRecommendationName
        ruleEnforcementIdentifier:
          type: string
          description: ruleEnforcementIdentifier
        ruleEnforcementName:
          type: string
          description: ruleEnforcementName
        ruleIdentifier:
          type: string
          description: ruleIdentifier
        ruleName:
          type: string
          description: ruleName
        OOTB:
          type: boolean
          writeOnly: true
        rulePackIdentifier:
          type: string
          description: rulePackIdentifier
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        isDryRun:
          type: boolean
          description: isDryRun
        targetAccount:
          type: string
          description: targetAccount
        targetAccountName:
          type: string
          description: targetAccountName
        targetRegions:
          type: array
          description: targetRegions
          items:
            type: string
            description: targetRegions
        executionLogPath:
          type: string
          description: executionLogPath
        resourceCount:
          type: integer
          description: resourceCount
          format: int64
        actionedResourceCount:
          type: integer
          description: actionedResourceCount
          format: int64
        actionFilePresent:
          type: boolean
          description: actionFilePresent
        actionedResourceFileName:
          type: string
          description: actionedResourceFileName
        executionLogBucketType:
          type: string
          description: executionLogBucketType
        executionType:
          type: string
          description: executionType
          enum:
            - INTERNAL
            - EXTERNAL
        executionStatus:
          type: string
          description: executionStatus
          enum:
            - FAILED
            - ENQUEUED
            - PARTIAL_SUCCESS
            - SUCCESS
        executionCompletedAt:
          type: integer
          description: executionCompletedAt
          format: int64
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        errorMessage:
          type: string
          description: error generated by custodian
        resourceType:
          type: string
          description: resourceType
        actionType:
          type: string
          description: actionType
        costComputed:
          type: boolean
          description: costComputed
        costComputationMessage:
          type: string
          description: costComputationMessage
        cost:
          type: number
          description: cost
          format: double
        savings:
          type: number
          description: savings
          format: double
        costType:
          type: string
          description: costType
          enum:
            - POTENTIAL
            - REALIZED
        bqDataIngestionStatus:
          type: string
          description: bqDataIngestionStatus
          enum:
            - NOT_STARTED
            - FAILED
            - IN_PROGRESS
            - SUCCESSFUL
        ttl:
          type: string
          format: date-time
        isMultiPolicyRule:
          type: boolean
          description: isMultiPolicyRule
          default: false
        subRuleExecutionDetails:
          type: array
          description: subRuleExecutionDetails
          items:
            $ref: '#/components/schemas/SubRuleExecutionDetails'
        isCostBreakdownGenerated:
          type: boolean
          description: isCostBreakdownGenerated
        resourceBreakdownList:
          type: array
          description: resourceBreakdownList
          items:
            $ref: '#/components/schemas/ResourceBreakdown'
        ootb:
          type: boolean
      description: >-
        This object will contain the complete definition of a Cloud Cost Policy
        Execution
    RuleExecutionList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int32
        ruleExecution:
          type: array
          description: List of rules executions
          items:
            $ref: '#/components/schemas/RuleExecution'
      description: >-
        This object will contain the complete definition of a Cloud Cost
        Enforcement List
    SubRuleExecutionDetails:
      type: object
      properties:
        policyName:
          type: string
        executionLogPath:
          type: string
        resourceCount:
          type: integer
          format: int64
        actionedResourceCount:
          type: integer
          format: int64
        actionFilePresent:
          type: boolean
        actionedResourceFileName:
          type: string
        executionLogBucketType:
          type: string
        executionType:
          type: string
          enum:
            - INTERNAL
            - EXTERNAL
        executionStatus:
          type: string
          enum:
            - FAILED
            - ENQUEUED
            - PARTIAL_SUCCESS
            - SUCCESS
        bqDataIngestionStatus:
          type: string
          enum:
            - NOT_STARTED
            - FAILED
            - IN_PROGRESS
            - SUCCESSFUL
        errorMessage:
          type: string
        executionCompletedAt:
          type: integer
          format: int64
        resourceType:
          type: string
        actionType:
          type: string
        costComputed:
          type: boolean
        costComputationMessage:
          type: string
        cost:
          type: number
          format: double
        savings:
          type: number
          format: double
        resourceBreakdownList:
          type: array
          items:
            $ref: '#/components/schemas/ResourceBreakdown'
        isCostBreakdownGenerated:
          type: boolean
      description: >-
        This object stores execution details for a policy execution of a multi
        policy rule.
    ResponseDTORuleRecommendationSummaryList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleRecommendationSummaryList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleRecommendationSummaryList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int32
        ruleRecommendationSummaries:
          type: array
          description: List of rule recommendation summaries
          items:
            $ref: '#/components/schemas/RuleRecommendationSummary'
      description: >-
        This object will contain the complete definition of CCM Governance Rule
        Health Summary List
    RuleRecommendationHealthSummaryFilter:
      type: object
      properties:
        accountId:
          type: string
          description: accountId
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        isOOTB:
          type: boolean
          description: isOOTB
        healthStatus:
          type: string
          description: healthStatus
          enum:
            - FAILED
            - IN_PROGRESS
            - PARTIAL_SUCCESS
            - SUCCESS
            - IGNORED
        search:
          type: string
          description: search
        limit:
          type: integer
          description: limit
          format: int32
        offset:
          type: integer
          description: offset
          format: int32
        orderBy:
          type: array
          description: orderBy
          items:
            $ref: '#/components/schemas/CCMSort'
      description: This has the query to list the Rule Recommendation Health Summary
    ResponseDTORuleEnforcement:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleEnforcement'
        metaData:
          type: object
        correlationId:
          type: string
    RuleEnforcement:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          type: string
          description: name
        description:
          type: string
          description: Description of the entity
        tags:
          type: array
          description: Tags
          items:
            type: string
            description: Tags
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        ruleIds:
          type: array
          description: rulesIds
          items:
            type: string
            description: rulesIds
        ruleSetIDs:
          type: array
          description: ruleSetIDs
          items:
            type: string
            description: ruleSetIDs
        executionSchedule:
          type: string
          description: executionSchedule
        executionTimezone:
          type: string
          description: executionTimezone
        targetAccounts:
          type: array
          description: targetAccounts
          items:
            type: string
            description: targetAccounts
        targetRegions:
          type: array
          description: targetRegions
          items:
            type: string
            description: targetRegions
        isDryRun:
          type: boolean
          description: isDryRun
        deleted:
          type: boolean
          description: deleted
        runCount:
          type: integer
          description: runCount
          format: int32
        isEnabled:
          type: boolean
          description: isEnabled
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost Policy
        enforcement
    CreateRuleEnforcementDTO:
      type: object
      properties:
        ruleEnforcement:
          $ref: '#/components/schemas/RuleEnforcement'
    EnforcementCount:
      type: object
      properties:
        accountId:
          type: string
          description: account id
        ruleIds:
          type: object
          additionalProperties:
            type: array
            description: rules ids and list of enforcement
            items:
              $ref: '#/components/schemas/LinkedEnforcements'
          description: rules ids and list of enforcement
        ruleSetIds:
          type: object
          additionalProperties:
            type: array
            description: rules pack ids and list of enforcement
            items:
              $ref: '#/components/schemas/LinkedEnforcements'
          description: rules pack ids and list of enforcement
      description: >-
        This object will contain the complete definition of a Cloud Cost
        Enforcement Count
    LinkedEnforcements:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
      description: rules pack ids and list of enforcement
    ResponseDTOEnforcementCount:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EnforcementCount'
        metaData:
          type: object
        correlationId:
          type: string
    EnforcementCountDTO:
      type: object
      properties:
        enforcementCount:
          $ref: '#/components/schemas/EnforcementCountRequest'
    EnforcementCountRequest:
      type: object
      properties:
        accountId:
          type: string
          description: account id
        ruleIds:
          type: array
          description: rulesName
          items:
            type: string
            description: rulesName
        ruleSetIds:
          type: array
          description: rulesSetName
          items:
            type: string
            description: rulesSetName
      description: This has the query to list Enforcement Count
    ResponseDTORuleEnforcementList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleEnforcementList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleEnforcementList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int64
        ruleEnforcements:
          type: array
          description: List of Rule Enforcements
          items:
            $ref: '#/components/schemas/RuleEnforcement'
      description: >-
        This object will contain the complete definition of a Cloud Cost Rule
        Enforcement List
    EvaluationExportResponseDTO:
      type: object
      properties:
        type:
          type: string
        fileName:
          type: string
        downloadUrl:
          type: string
        expirationTime:
          type: integer
          format: int64
    ResponseDTOEvaluationExportResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EvaluationExportResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    EvaluationExportRequestDTO:
      required:
        - ruleExecutionFilter
      type: object
      properties:
        ruleExecutionFilter:
          $ref: '#/components/schemas/RuleExecutionFilter'
        includeMetadataFiles:
          type: boolean
        includeResourceFiles:
          type: boolean
        includeLogFiles:
          type: boolean
        includeActionFiles:
          type: boolean
        includeRuleYaml:
          type: boolean
    RuleExecutionFilter:
      type: object
      properties:
        accountId:
          type: string
          description: accountId
        targetAccount:
          type: array
          description: Account Name
          items:
            type: string
            description: Account Name
        executionStatus:
          type: string
          description: Execution Status
          enum:
            - FAILED
            - ENQUEUED
            - PARTIAL_SUCCESS
            - SUCCESS
        region:
          type: array
          description: region
          items:
            type: string
            description: region
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        cloudProviders:
          type: array
          description: cloudProviders
          items:
            type: string
            description: cloudProviders
            enum:
              - AWS
              - AZURE
              - GCP
        ruleIds:
          type: array
          description: ruleId
          items:
            type: string
            description: ruleId
        ruleSetIds:
          type: array
          description: rulePackId
          items:
            type: string
            description: rulePackId
        executionIds:
          type: array
          description: executionIds
          items:
            type: string
            description: executionIds
        ruleEnforcementId:
          type: array
          description: ruleEnforcementId
          items:
            type: string
            description: ruleEnforcementId
        ruleEnforcementRecommendationId:
          type: array
          description: ruleEnforcementRecommendationId
          items:
            type: string
            description: ruleEnforcementRecommendationId
        time:
          type: array
          description: Time
          items:
            $ref: '#/components/schemas/CCMTimeFilter'
        limit:
          type: integer
          description: limit
          format: int32
        offset:
          type: integer
          description: offset
          format: int32
        savings:
          type: number
          description: savings
          format: double
        ruleExecutionSortType:
          type: string
          description: ruleExecutionSortType
          enum:
            - COST
            - LAST_UPDATED_AT
            - RESOURCE_COUNT
        sortOrder:
          type: string
          description: sortOrder
          enum:
            - ASCENDING
            - DESCENDING
        resourceCountGreaterThanZero:
          type: boolean
          description: resourceCountGreaterThanZero
        costType:
          type: string
          description: costType
          enum:
            - POTENTIAL
            - REALIZED
        isDryRun:
          type: boolean
          description: isDryRun
      description: This has the query to list the RuleExecution
    CreateRuleExecutionFilterDTO:
      type: object
      properties:
        policyExecutionFilter:
          $ref: '#/components/schemas/RuleExecutionFilter'
    FilterValues:
      type: object
      properties:
        columns:
          type: array
          items:
            type: string
        filter:
          $ref: '#/components/schemas/CCMRecommendationFilterProperties'
      description: >-
        The applicable 'columns' values are 'name', 'resourceType', 'namespace',
        'clusterName'
    ResponseDTOFilterValues:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/FilterValues'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTORuleExecution:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleExecution'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListSubRuleResponseDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/SubRuleResponseDetails'
        metaData:
          type: object
        correlationId:
          type: string
    SubRuleResponseDetails:
      type: object
      properties:
        policyName:
          type: string
        status:
          type: string
          enum:
            - FAILED
            - ENQUEUED
            - PARTIAL_SUCCESS
            - SUCCESS
        response:
          type: string
        errorMessage:
          type: string
        actionFilePresent:
          type: boolean
      description: >-
        This object stores response details for a sub rule of a multi policy
        rule.
    ResponseDTOListRuleExecution:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/RuleExecution'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTORule:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CcmRule'
        metaData:
          type: object
        correlationId:
          type: string
    CcmRule:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          type: string
          description: name
        description:
          type: string
          description: Description of the entity
        rulesYaml:
          type: string
          description: Get YAML of the policy
        tags:
          type: array
          description: Tags
          items:
            type: string
            description: Tags
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        versionLabel:
          type: string
          description: versionLabel
        isStablePolicy:
          type: boolean
          description: isStablePolicy
        storeType:
          type: string
          description: storeType
          enum:
            - INLINE
            - REMOTE
        isOOTB:
          type: boolean
          description: isOOTB
        deleted:
          type: boolean
          description: deleted
        forRecommendation:
          type: boolean
          description: forRecommendation
        resourceType:
          type: string
          description: resourceType
        isMultiPolicyRule:
          type: boolean
          description: isMultiPolicyRule
          default: false
        subRulePolicyDetails:
          type: array
          description: subRulePolicyDetails
          items:
            $ref: '#/components/schemas/SubRulePolicyDetails'
        savings:
          maximum: 100
          minimum: 0
          type: number
          description: savings
          format: double
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost
        Policies
    SubRulePolicyDetails:
      type: object
      properties:
        name:
          type: string
        yaml:
          type: string
        resourceType:
          type: string
      description: This object stores policy details for a multi policy rule.
    CloneRuleDTO:
      type: object
      properties:
        ruleClone:
          $ref: '#/components/schemas/RuleClone'
    RuleClone:
      type: object
      properties:
        uuid:
          type: string
      description: >-
        This is the view of Rule Clone as defined in Cloud asset Governance 
        Harness.
    CreateRuleDTO:
      type: object
      properties:
        rule:
          $ref: '#/components/schemas/CcmRule'
    GovernanceEnqueueResponseDTO:
      type: object
      properties:
        ruleExecutionId:
          type: array
          items:
            type: string
    ResponseDTOGovernanceEnqueueResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/GovernanceEnqueueResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    AwsRecommendationAdhocDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationAdhocDTO'
        - type: object
          properties:
            roleArn:
              type: string
            externalId:
              type: string
            targetAccountId:
              type: string
            targetAccountName:
              type: string
    AzureRecommendationAdhocDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationAdhocDTO'
        - type: object
          properties:
            tenantId:
              type: string
            subscriptionId:
              type: string
            subscriptionName:
              type: string
            clientId:
              type: string
    GcpRecommendationAdhocDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationAdhocDTO'
        - type: object
          properties:
            projectId:
              type: string
            serviceAccountEmail:
              type: string
    GovernanceJobEnqueueDTO:
      type: object
      properties:
        ruleEnforcementId:
          type: string
        ruleEnforcementRecommendationId:
          type: string
        targetAccountDetails:
          $ref: '#/components/schemas/RecommendationAdhocDTO'
        ruleCloudProviderType:
          type: string
          enum:
            - AWS
            - AZURE
            - GCP
        ruleId:
          type: string
        policy:
          type: string
        targetRegion:
          type: string
        isDryRun:
          type: boolean
        isOOTB:
          type: boolean
        executionType:
          type: string
          enum:
            - INTERNAL
            - EXTERNAL
        isMultiPolicyRule:
          type: boolean
          writeOnly: true
        subRulePolicyDetails:
          type: array
          items:
            $ref: '#/components/schemas/SubRulePolicyDetails'
        isGovCloudConnector:
          type: boolean
          writeOnly: true
        ruleExecutionId:
          type: string
        multiPolicyRule:
          type: boolean
        govCloudConnector:
          type: boolean
    OidcAuthParams:
      type: object
    RecommendationAdhocDTO:
      required:
        - type
      type: object
      properties:
        targetInfo:
          type: string
        authType:
          type: string
        roleId:
          type: string
        targetName:
          type: string
        tenantInfo:
          type: string
        cloudConnectorId:
          type: string
        isGovCloudConnector:
          type: boolean
        isCostBreakdownRequired:
          type: boolean
        oidcAuthParams:
          $ref: '#/components/schemas/OidcAuthParams'
        roleInfo:
          type: string
        type:
          type: string
      discriminator:
        propertyName: type
    GovernanceAdhocEnqueueDTOV2:
      required:
        - ruleId
        - targetAccounts
      type: object
      properties:
        targetAccounts:
          type: array
          description: Target account_id/subscription_id/project_id
          items:
            type: string
            description: Target account_id/subscription_id/project_id
        targetRegions:
          type: array
          description: Target region required for AWS/AZURE
          items:
            type: string
            description: Target region required for AWS/AZURE
        ruleId:
          type: string
          description: Rule id/uuid
        isDryRun:
          type: boolean
          description: Set to true for dry run or false for actual run
          default: true
    ResponseDTORuleList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int32
        rules:
          type: array
          description: List of rules executions
          items:
            $ref: '#/components/schemas/CcmRule'
      description: >-
        This object will contain the complete definition of a Cloud Cost Rule
        List
    ListDTO:
      type: object
      properties:
        query:
          $ref: '#/components/schemas/RuleRequest'
    RuleRequest:
      type: object
      properties:
        accountId:
          type: string
          description: account id
        isOOTB:
          type: boolean
          description: isOOTBPolicy
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        tags:
          type: string
          description: Tags
        cloudProvider:
          type: string
          description: cloudProvider
        policyIds:
          type: array
          description: policyIds
          items:
            type: string
            description: policyIds
        isStablePolicy:
          type: boolean
          description: isStablePolicy
        search:
          type: string
          description: search
        limit:
          type: integer
          description: limit
          format: int32
        offset:
          type: integer
          description: offset
          format: int32
        orderBy:
          type: array
          description: The order by condition for Rule query
          items:
            $ref: '#/components/schemas/CCMSort'
        resourceType:
          type: string
          description: resourceType
        forRecommendation:
          type: boolean
          description: forRecommendation
      description: This has the query to list the policies
    ToggleForRecommendationRequest:
      type: object
      properties:
        cloudAccountIds:
          type: array
          items:
            type: string
    ResponseDTORuleSet:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleSet'
        metaData:
          type: object
        correlationId:
          type: string
    RuleSet:
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          type: string
          description: name
        description:
          type: string
          description: Description of the entity
        tags:
          type: array
          description: Tags
          items:
            type: string
            description: Tags
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        cloudProvider:
          type: string
          description: cloudProvider
          enum:
            - AWS
            - AZURE
            - GCP
        rulesIdentifier:
          type: array
          description: List of rules identifiers from governancePolicy collection
          items:
            type: string
            description: List of rules identifiers from governancePolicy collection
        isOOTB:
          type: boolean
          description: is OOTB flag
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost Policy
        set
    CreateRuleSetDTO:
      type: object
      properties:
        ruleSet:
          $ref: '#/components/schemas/RuleSet'
    ResponseDTORuleSetList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RuleSetList'
        metaData:
          type: object
        correlationId:
          type: string
    RuleSetList:
      type: object
      properties:
        totalItems:
          type: integer
          description: Total items
          format: int32
        ruleSet:
          type: array
          description: List of rules executions
          items:
            $ref: '#/components/schemas/RuleSet'
      description: >-
        This object will contain the complete definition of a Cloud Cost RuleSet
        List
    CreateRuleSetFilterDTO:
      type: object
      properties:
        ruleSet:
          $ref: '#/components/schemas/RuleSetRequest'
    RuleSetRequest:
      type: object
      properties:
        accountId:
          type: string
          description: account id
        isOOTB:
          type: boolean
          description: isOOTBPolicy
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        tags:
          type: string
          description: Tags
        cloudProvider:
          type: string
          description: cloudProvider
        ruleSetIds:
          type: array
          description: ruleSetIds
          items:
            type: string
            description: ruleSetIds
        ruleIds:
          type: array
          description: ruleIds
          items:
            type: string
            description: ruleIds
        search:
          type: string
          description: search
        limit:
          type: integer
          description: limit
          format: int32
        offset:
          type: integer
          description: offset
          format: int32
        orderBy:
          type: array
          description: The order by condition for Rule Set query
          items:
            $ref: '#/components/schemas/CCMSort'
      description: This has the query to list the policy packs
    CEViewFolder:
      required:
        - name
      type: object
      properties:
        uuid:
          type: string
          description: unique id
        accountId:
          type: string
          description: account id
        name:
          maxLength: 80
          minLength: 1
          type: string
          description: name
        pinned:
          type: boolean
          description: pinned
        tags:
          type: array
          description: Tags
          items:
            type: string
            description: Tags
        description:
          type: string
          description: Description of the entity
        viewType:
          type: string
          description: view type
          enum:
            - SAMPLE
            - CUSTOMER
            - DEFAULT
        createdAt:
          type: integer
          description: Time at which the entity was created
          format: int64
        lastUpdatedAt:
          type: integer
          description: Time at which the entity was last updated
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost
        Perspective
    ResponseDTOCEViewFolder:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CEViewFolder'
        metaData:
          type: object
        correlationId:
          type: string
    CreatePerspectiveFolderDTO:
      type: object
      properties:
        ceViewFolder:
          $ref: '#/components/schemas/CEViewFolder'
        perspectiveIds:
          type: array
          items:
            type: string
    ResponseDTOListCEViewFolder:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/CEViewFolder'
        metaData:
          type: object
        correlationId:
          type: string
    Perspective:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        folderId:
          type: string
        folderName:
          type: string
        isReportScheduledConfigured:
          type: boolean
          writeOnly: true
        reportScheduledConfigured:
          type: boolean
      description: Perspective ID to name mapping
    ResponseDTOListPerspective:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/Perspective'
        metaData:
          type: object
        correlationId:
          type: string
    AWSViewPreferences:
      type: object
      properties:
        includeDiscounts:
          type: boolean
        includeCredits:
          type: boolean
        includeRefunds:
          type: boolean
        includeTaxes:
          type: boolean
        awsCost:
          type: string
          description: Show AWS Cost As
          enum:
            - AMORTISED
            - NET_AMORTISED
            - BLENDED
            - UNBLENDED
            - EFFECTIVE
    AzureViewPreferences:
      type: object
      properties:
        costType:
          type: string
          enum:
            - ACTUAL
            - AMORTIZED
    CEView:
      required:
        - name
        - viewVersion
      type: object
      properties:
        uuid:
          type: string
        name:
          maxLength: 80
          minLength: 1
          type: string
        accountId:
          type: string
        folderId:
          type: string
        viewVersion:
          type: string
        viewTimeRange:
          $ref: '#/components/schemas/ViewTimeRange'
        viewRules:
          type: array
          items:
            $ref: '#/components/schemas/ViewRule'
        dataSources:
          type: array
          items:
            type: string
            description: Perspective filter Category, CLUSTER means Kubernetes
            enum:
              - CLUSTER
              - AWS
              - GCP
              - AZURE
              - EXTERNAL_DATA
              - COMMON
              - CUSTOM
              - BUSINESS_MAPPING
              - LABEL
              - LABEL_V2
        viewVisualization:
          $ref: '#/components/schemas/ViewVisualization'
        viewPreferences:
          $ref: '#/components/schemas/ViewPreferences'
        viewType:
          type: string
          enum:
            - SAMPLE
            - CUSTOMER
            - DEFAULT
        viewState:
          type: string
          enum:
            - DRAFT
            - COMPLETED
        totalCost:
          type: number
          format: double
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
      description: >-
        This object will contain the complete definition of a Cloud Cost
        Perspective
    GCPViewPreferences:
      type: object
      properties:
        includeDiscounts:
          type: boolean
        includeTaxes:
          type: boolean
        includePromotions:
          type: boolean
    ResponseDTOListCEView:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/CEView'
        metaData:
          type: object
        correlationId:
          type: string
    ViewPreferences:
      type: object
      properties:
        showAnomalies:
          type: boolean
        includeOthers:
          type: boolean
        includeUnallocatedCost:
          type: boolean
        awsPreferences:
          $ref: '#/components/schemas/AWSViewPreferences'
        gcpPreferences:
          $ref: '#/components/schemas/GCPViewPreferences'
        azureViewPreferences:
          $ref: '#/components/schemas/AzureViewPreferences'
    ViewTimeRange:
      type: object
      properties:
        viewTimeRangeType:
          type: string
          description: >-
            The type of Perspective time range filter, select CUSTOM is you want
            a Perspective between a fixed set of startTime and endTime
          enum:
            - LAST_7
            - LAST_30
            - LAST_MONTH
            - CURRENT_MONTH
            - CUSTOM
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
      description: The time interval on which you want to create a Perspective
    ViewVisualization:
      type: object
      properties:
        granularity:
          type: string
          description: Granularity of Perspective timeseries data
          enum:
            - DAY
            - MONTH
        groupBy:
          $ref: '#/components/schemas/ViewField'
        chartType:
          type: string
          description: Perspective chart type
          enum:
            - STACKED_TIME_SERIES
            - STACKED_LINE_CHART
    MovePerspectiveDTO:
      type: object
      properties:
        newFolderId:
          type: string
        perspectiveIds:
          type: array
          items:
            type: string
    CEReportSchedule:
      required:
        - name
        - recipients
        - userCron
        - viewsId
      type: object
      properties:
        uuid:
          type: string
        name:
          maxLength: 80
          minLength: 1
          type: string
        enabled:
          type: boolean
        description:
          maxLength: 100
          minLength: 0
          type: string
        viewsId:
          maxItems: 1
          minItems: 1
          type: array
          items:
            type: string
        userCron:
          type: string
        recipients:
          maxItems: 50
          minItems: 0
          type: array
          items:
            type: string
        accountId:
          type: string
        groupBy:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewGroupBy'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewFilterWrapper'
        viewTimeRange:
          $ref: '#/components/schemas/ViewTimeRange'
        dataColumns:
          type: array
          items:
            type: string
        exportRowsUpTo:
          type: integer
          format: int64
        excludeRowsWithCostBelow:
          type: number
          format: double
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        userCronTimeZone:
          type: string
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        nextExecution:
          type: string
          format: date-time
      description: >-
        Cloud Cost Report Schedule contains definition of 'how often' and 'to
        whom' the Report will be sent
    ResponseDTOListCEReportSchedule:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/CEReportSchedule'
        metaData:
          type: object
        correlationId:
          type: string
    CEReportScheduleDTO:
      type: object
      properties:
        uuid:
          type: string
        name:
          type: string
        enabled:
          type: boolean
        description:
          type: string
        perspectiveId:
          type: string
        perspectiveName:
          type: string
        userCron:
          type: string
        viewTimeRange:
          $ref: '#/components/schemas/ViewTimeRange'
        recipients:
          type: array
          items:
            type: string
        accountId:
          type: string
        filters:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewFilterWrapper'
        dataColumns:
          type: array
          items:
            type: string
        groupBy:
          type: array
          items:
            $ref: '#/components/schemas/QLCEViewGroupBy'
        exportRowsUpTo:
          type: integer
          format: int64
        excludeRowsWithCostBelow:
          type: number
          format: double
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        userCronTimeZone:
          type: string
        createdBy:
          $ref: '#/components/schemas/EmbeddedUser'
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
        nextExecution:
          type: string
          format: date-time
    CEReportScheduleResponseDTO:
      type: object
      properties:
        ceReportSchedules:
          type: array
          items:
            $ref: '#/components/schemas/CEReportScheduleDTO'
        totalCount:
          type: integer
          format: int64
    ResponseDTOCEReportScheduleResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CEReportScheduleResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    PerspectiveReportsFiltersDTO:
      type: object
      properties:
        perspectiveIds:
          type: array
          description: Perspective Ids
          items:
            type: string
            description: Perspective Ids
        searchText:
          type: string
          description: The search text entered to filter out reports by name
        offset:
          type: integer
          description: Query Offset
          format: int32
        limit:
          type: integer
          description: Query Limit
          format: int32
      description: The query object for perspective report filters
    ResponseDTOCEView:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CEView'
        metaData:
          type: object
        correlationId:
          type: string
    PerspectiveData:
      type: object
      properties:
        totalCount:
          type: integer
          format: int64
        views:
          type: array
          items:
            $ref: '#/components/schemas/Perspective'
    ResponseDTOPerspectiveData:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PerspectiveData'
        metaData:
          type: object
        correlationId:
          type: string
    AzureVmDTO:
      type: object
      properties:
        vmSize:
          type: string
        region:
          type: string
        memory:
          type: integer
          format: int32
        cores:
          type: integer
          format: int32
        monthlyCost:
          type: number
          format: double
        avgCpuUtilization:
          type: number
          format: double
        maxCpuUtilization:
          type: number
          format: double
        avgMemoryUtilization:
          type: number
          format: double
        maxMemoryUtilization:
          type: number
          format: double
      description: Target vm configurations
    AzureVmRecommendation:
      type: object
      properties:
        id:
          type: string
        tenantId:
          type: string
        subscriptionId:
          type: string
        resourceGroupId:
          type: string
        vmName:
          type: string
        vmId:
          type: string
        connectorName:
          type: string
        connectorId:
          type: string
        duration:
          type: integer
          format: int32
        CurrentConfigurations:
          $ref: '#/components/schemas/AzureVmDTO'
        showTerminated:
          type: boolean
        TargetConfigurations:
          $ref: '#/components/schemas/AzureVmDTO'
        jiraDetails:
          $ref: '#/components/schemas/CCMJiraDetails'
        serviceNowDetails:
          $ref: '#/components/schemas/CCMServiceNowDetails'
      description: Azure VM recommendation
    CCMJiraDetails:
      type: object
      properties:
        connectorRef:
          type: string
        jiraIssue:
          $ref: '#/components/schemas/JiraIssueNG'
    CCMServiceNowDetails:
      type: object
      properties:
        connectorRef:
          type: string
        serviceNowTicket:
          $ref: '#/components/schemas/ServiceNowTicketNG'
    JiraIssueNG:
      required:
        - fields
        - id
        - key
        - restUrl
      type: object
      properties:
        url:
          type: string
        restUrl:
          type: string
        id:
          type: string
        key:
          type: string
        fields:
          type: object
          additionalProperties:
            type: object
        fieldNameToKeys:
          type: object
          additionalProperties:
            type: string
    ResponseDTOAzureVmRecommendation:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/AzureVmRecommendation'
        metaData:
          type: object
        correlationId:
          type: string
    ServiceNowFieldValueNG:
      type: object
      properties:
        value:
          type: string
        displayValue:
          type: string
    ServiceNowTicketNG:
      required:
        - fields
        - number
        - url
      type: object
      properties:
        url:
          type: string
        number:
          type: string
        fields:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ServiceNowFieldValueNG'
    EC2InstanceDTO:
      type: object
      properties:
        instanceFamily:
          type: string
        region:
          type: string
        memory:
          type: string
        vcpu:
          type: string
        cpuUtilisation:
          type: string
        memoryUtilisation:
          type: string
        monthlyCost:
          type: string
        monthlySavings:
          type: string
      description: Recommendation with cross instance family
    EC2InstanceRecommendation:
      type: object
      properties:
        id:
          type: string
        awsAccountId:
          type: string
        CurrentConfigurations:
          $ref: '#/components/schemas/EC2InstanceDTO'
        showTerminated:
          type: boolean
        SameFamilyRecommendation:
          $ref: '#/components/schemas/EC2InstanceDTO'
        CrossFamilyRecommendation:
          $ref: '#/components/schemas/EC2InstanceDTO'
        jiraDetails:
          $ref: '#/components/schemas/CCMJiraDetails'
        serviceNowDetails:
          $ref: '#/components/schemas/CCMServiceNowDetails'
      description: EC2 instance recommendation
    ResponseDTOEC2InstanceRecommendation:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/EC2InstanceRecommendation'
        metaData:
          type: object
        correlationId:
          type: string
    Cost:
      type: object
      properties:
        cpu:
          type: number
        memory:
          type: number
    ECSRecommendationDTO:
      type: object
      properties:
        id:
          type: string
        clusterName:
          type: string
        serviceArn:
          type: string
        serviceName:
          type: string
        launchType:
          type: string
          enum:
            - EC2
            - FARGATE
            - EXTERNAL
        current:
          type: object
          additionalProperties:
            type: string
        percentileBased:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: string
        lastDayCost:
          $ref: '#/components/schemas/Cost'
        cpuHistogram:
          $ref: '#/components/schemas/HistogramExp'
        memoryHistogram:
          $ref: '#/components/schemas/HistogramExp'
        jiraDetails:
          $ref: '#/components/schemas/CCMJiraDetails'
        serviceNowDetails:
          $ref: '#/components/schemas/CCMServiceNowDetails'
    HistogramExp:
      type: object
      properties:
        firstBucketSize:
          type: number
          format: double
        growthRatio:
          type: number
          format: double
        numBuckets:
          type: integer
          format: int32
        minBucket:
          type: integer
          format: int32
        maxBucket:
          type: integer
          format: int32
        bucketWeights:
          type: array
          items:
            type: number
            format: double
        totalWeight:
          type: number
          format: double
        precomputed:
          type: array
          items:
            type: number
            format: double
    ResponseDTOECSRecommendationDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ECSRecommendationDTO'
        metaData:
          type: object
        correlationId:
          type: string
    ClusterRecommendationAccuracy:
      type: object
      properties:
        cpu:
          type: number
          format: double
        masterPrice:
          type: number
          format: double
        memory:
          type: number
          format: double
        nodes:
          type: integer
          format: int64
        regularNodes:
          type: integer
          format: int64
        regularPrice:
          type: number
          format: double
        spotNodes:
          type: integer
          format: int64
        spotPrice:
          type: number
          format: double
        totalPrice:
          type: number
          format: double
        workerPrice:
          type: number
          format: double
        zone:
          type: string
    NodePool:
      type: object
      properties:
        role:
          type: string
        sumNodes:
          type: integer
          format: int64
        vm:
          $ref: '#/components/schemas/VirtualMachine'
        vmClass:
          type: string
    NodePoolId:
      type: object
      properties:
        nodepoolname:
          type: string
        clusterid:
          type: string
    NodeRecommendationDTO:
      type: object
      properties:
        id:
          type: string
        nodePoolId:
          $ref: '#/components/schemas/NodePoolId'
        resourceRequirement:
          $ref: '#/components/schemas/RecommendClusterRequest'
        current:
          $ref: '#/components/schemas/RecommendationResponse'
        recommended:
          $ref: '#/components/schemas/RecommendationResponse'
        totalResourceUsage:
          $ref: '#/components/schemas/TotalResourceUsage'
        jiraDetails:
          $ref: '#/components/schemas/CCMJiraDetails'
        serviceNowDetails:
          $ref: '#/components/schemas/CCMServiceNowDetails'
    RecommendClusterRequest:
      type: object
      properties:
        allowBurst:
          type: boolean
        allowOlderGen:
          type: boolean
        excludeSeries:
          type: array
          items:
            type: string
        excludeTypes:
          type: array
          items:
            type: string
        includeSeries:
          type: array
          items:
            type: string
        includeTypes:
          type: array
          items:
            type: string
        maxNodes:
          type: integer
          format: int64
        minNodes:
          type: integer
          format: int64
        networkPerf:
          type: array
          items:
            type: string
        onDemandPct:
          type: integer
          format: int64
        sameSize:
          type: boolean
        sumCpu:
          type: number
          format: double
        sumGpu:
          type: integer
          format: int64
        sumMem:
          type: number
          format: double
        zone:
          type: string
        minCpu:
          type: number
          format: double
        minMem:
          type: number
          format: double
    RecommendationResponse:
      type: object
      properties:
        accuracy:
          $ref: '#/components/schemas/ClusterRecommendationAccuracy'
        nodePools:
          type: array
          items:
            $ref: '#/components/schemas/NodePool'
        provider:
          type: string
        region:
          type: string
        service:
          type: string
        zone:
          type: string
        instanceCategory:
          type: string
          enum:
            - ON_DEMAND
            - SPOT
            - RESERVED
    ResponseDTONodeRecommendationDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/NodeRecommendationDTO'
        metaData:
          type: object
        correlationId:
          type: string
    TotalResourceUsage:
      type: object
      properties:
        sumcpu:
          type: number
          format: double
        summemory:
          type: number
          format: double
        maxcpu:
          type: number
          format: double
        maxmemory:
          type: number
          format: double
    VirtualMachine:
      type: object
      properties:
        avgPrice:
          type: number
          format: double
        burst:
          type: boolean
        category:
          type: string
        cpusPerVm:
          type: number
          format: double
        currentGen:
          type: boolean
        gpusPerVm:
          type: number
          format: double
        memPerVm:
          type: number
          format: double
        allocatableCpusPerVm:
          type: number
          format: double
        allocatableMemPerVm:
          type: number
          format: double
        networkPerf:
          type: string
        networkPerfCategory:
          type: string
        onDemandPrice:
          type: number
          format: double
        type:
          type: string
        zones:
          type: array
          items:
            type: string
    ContainerHistogramDTO:
      type: object
      properties:
        containerName:
          type: string
        cpuHistogram:
          $ref: '#/components/schemas/HistogramExp'
        memoryHistogram:
          $ref: '#/components/schemas/HistogramExp'
        containerRecommendation:
          $ref: '#/components/schemas/ContainerRecommendation'
    ContainerRecommendation:
      type: object
      properties:
        current:
          $ref: '#/components/schemas/ResourceRequirement'
        burstable:
          $ref: '#/components/schemas/ResourceRequirement'
        guaranteed:
          $ref: '#/components/schemas/ResourceRequirement'
        recommended:
          $ref: '#/components/schemas/ResourceRequirement'
        percentileBased:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ResourceRequirement'
        lastDayCost:
          $ref: '#/components/schemas/Cost'
        numDays:
          type: integer
          format: int32
        totalSamplesCount:
          type: integer
          format: int32
    ResourceRequirement:
      type: object
      properties:
        requests:
          type: object
          additionalProperties:
            type: string
        limits:
          type: object
          additionalProperties:
            type: string
        empty:
          type: boolean
    ResponseDTOWorkloadRecommendationDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/WorkloadRecommendationDTO'
        metaData:
          type: object
        correlationId:
          type: string
    WorkloadRecommendationDTO:
      type: object
      properties:
        id:
          type: string
        containerRecommendations:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ContainerRecommendation'
        items:
          type: array
          items:
            $ref: '#/components/schemas/ContainerHistogramDTO'
        lastDayCost:
          $ref: '#/components/schemas/Cost'
        jiraDetails:
          $ref: '#/components/schemas/CCMJiraDetails'
        serviceNowDetails:
          $ref: '#/components/schemas/CCMServiceNowDetails'
    AppliedRecommendationResourceStatsDTO:
      required:
        - resourceType
      type: object
      properties:
        resourceType:
          type: string
          enum:
            - WORKLOAD
            - NODE_POOL
            - ECS_SERVICE
            - EC2_INSTANCE
            - GOVERNANCE
            - AZURE_INSTANCE
        count:
          type: integer
          format: int32
        totalMonthlySaving:
          type: number
          format: double
    ResponseDTOListAppliedRecommendationResourceStatsDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/AppliedRecommendationResourceStatsDTO'
        metaData:
          type: object
        correlationId:
          type: string
    AwsRecommendationFilterProperties:
      type: object
      properties:
        instanceType:
          type: array
          description: List of instance types to filter recommendations
          items:
            type: string
            description: List of instance types to filter recommendations
      description: AWS specific properties for recommendation filters
    AzureRecommendationFilterProperties:
      type: object
      properties:
        instanceType:
          type: array
          description: List of instance types to filter recommendations
          items:
            type: string
            description: List of instance types to filter recommendations
        resourceGroup:
          type: array
          description: List of resource groups to filter recommendations
          items:
            type: string
            description: List of resource groups to filter recommendations
      description: Azure specific properties for recommendation filters
    BaseRecommendationFilterProperties:
      type: object
      properties:
        id:
          type: array
          description: List of ids which will be applied as filter for Recommendations
          items:
            type: string
            description: List of ids which will be applied as filter for Recommendations
        cloudAccountId:
          type: array
          description: List of cloud account IDs to filter recommendations
          items:
            type: string
            description: List of cloud account IDs to filter recommendations
        cloudAccountName:
          type: array
          description: List of cloud account names to filter recommendations
          items:
            type: string
            description: List of cloud account names to filter recommendations
        resourceId:
          type: array
          description: List of resource IDs to filter recommendations
          items:
            type: string
            description: List of resource IDs to filter recommendations
        resourceName:
          type: array
          description: List of resource names to filter recommendations
          items:
            type: string
            description: List of resource names to filter recommendations
        region:
          type: array
          description: List of regions to filter recommendations
          items:
            type: string
            description: List of regions to filter recommendations
        resourceType:
          type: array
          description: >-
            List of resourceTypes which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of resourceTypes which will be applied as filter for
              Recommendations
            enum:
              - WORKLOAD
              - NODE_POOL
              - ECS_SERVICE
              - EC2_INSTANCE
              - GOVERNANCE
              - AZURE_INSTANCE
        recommendationState:
          type: array
          description: >-
            List of recommendationStates which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of recommendationStates which will be applied as filter for
              Recommendations
            enum:
              - OPEN
              - APPLIED
              - IGNORED
        cloudProvider:
          type: array
          description: >-
            List of cloud providers which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of cloud providers which will be applied as filter for
              Recommendations
            enum:
              - AWS
              - AZURE
              - GCP
              - CLUSTER
              - EXTERNAL_DATA
              - IBM
              - ON_PREM
              - UNKNOWN
        appliedAtStartTime:
          type: integer
          description: >-
            Filter for recommendations applied after this timestamp (Unix time
            in milliseconds)
          format: int64
        appliedAtEndTime:
          type: integer
          description: >-
            Filter for recommendations applied before this timestamp (Unix time
            in milliseconds)
          format: int64
      description: Base properties for recommendation filters
    CCMCostCategoryDTO:
      type: object
      properties:
        costCategory:
          type: string
        costBucket:
          type: string
      description: This object will contain cost category and it's bucket value
    CCMRecommendationFilterProperties:
      type: object
      properties:
        k8sRecommendationFilterPropertiesDTO:
          $ref: '#/components/schemas/K8sRecommendationFilterProperties'
        awsRecommendationFilterPropertiesDTO:
          $ref: '#/components/schemas/AwsRecommendationFilterProperties'
        azureRecommendationFilterProperties:
          $ref: '#/components/schemas/AzureRecommendationFilterProperties'
        containerRecommendationFilterPropertiesDTO:
          $ref: '#/components/schemas/ContainerRecommendationFilterProperties'
        governanceRecommendationFilterPropertiesDTO:
          $ref: '#/components/schemas/GovernanceRecommendationFilterProperties'
        baseRecommendationFilterPropertiesDTO:
          $ref: '#/components/schemas/BaseRecommendationFilterProperties'
        perspectiveFilters:
          type: array
          description: Get Recommendations for a perspective
          items:
            $ref: '#/components/schemas/QLCEViewFilterWrapper'
        minSaving:
          type: number
          description: Fetch recommendations with Saving more than minSaving
          format: double
        minCost:
          type: number
          description: Fetch recommendations with Cost more than minCost
          format: double
        daysBack:
          type: integer
          description: Fetch recommendations generated in last daysBack days
          format: int64
        offset:
          type: integer
          description: Query Offset
          format: int64
        limit:
          type: integer
          description: Query Limit
          format: int64
        childRecommendation:
          type: boolean
          description: toggle childRecommendation value
        includeIgnoredRecommendation:
          type: boolean
          description: toggle includeIgnoredRecommendation value
        parentRecommendation:
          type: boolean
          description: toggle parentRecommendation value
        tagDTOs:
          type: array
          description: Get recommendations for resources having particular tags
          items:
            $ref: '#/components/schemas/CCMTagDTO'
        costCategoryDTOs:
          type: array
          description: >-
            Get recommendations for resources in particular cost bucket of given
            cost category
          items:
            $ref: '#/components/schemas/CCMCostCategoryDTO'
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          enum:
            - CCMRecommendation
      description: Properties of the CCMRecommendation Filter defined in Harness
    CCMTagDTO:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
      description: This object will contain tag key and value
    ContainerRecommendationFilterProperties:
      type: object
      properties:
        k8sClusterName:
          type: array
          description: List of Kubernetes cluster names to filter recommendations
          items:
            type: string
            description: List of Kubernetes cluster names to filter recommendations
        k8sNamespace:
          type: array
          description: List of Kubernetes namespaces to filter recommendations
          items:
            type: string
            description: List of Kubernetes namespaces to filter recommendations
        ecsClusterName:
          type: array
          description: List of ECS cluster names to filter recommendations
          items:
            type: string
            description: List of ECS cluster names to filter recommendations
        ecsLaunchType:
          type: array
          description: List of ECS launch types to filter recommendations
          items:
            type: string
            description: List of ECS launch types to filter recommendations
      description: Container specific properties for recommendation filters
    GovernanceRecommendationFilterProperties:
      type: object
      properties:
        governanceRuleName:
          type: array
          description: List of governance rule names to filter recommendations
          items:
            type: string
            description: List of governance rule names to filter recommendations
      description: Governance specific properties for recommendation filters
    K8sRecommendationFilterProperties:
      type: object
      properties:
        ids:
          type: array
          description: List of ids which will be applied as filter for Recommendations
          items:
            type: string
            description: List of ids which will be applied as filter for Recommendations
        names:
          type: array
          description: List of names which will be applied as filter for Recommendations
          items:
            type: string
            description: List of names which will be applied as filter for Recommendations
        namespaces:
          type: array
          description: >-
            List of namespaces which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of namespaces which will be applied as filter for
              Recommendations
        clusterNames:
          type: array
          description: >-
            List of clusterNames which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of clusterNames which will be applied as filter for
              Recommendations
        resourceTypes:
          type: array
          description: >-
            List of resourceTypes which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of resourceTypes which will be applied as filter for
              Recommendations
            enum:
              - WORKLOAD
              - NODE_POOL
              - ECS_SERVICE
              - EC2_INSTANCE
              - GOVERNANCE
              - AZURE_INSTANCE
        recommendationStates:
          type: array
          description: >-
            List of recommendationStates which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of recommendationStates which will be applied as filter for
              Recommendations
            enum:
              - OPEN
              - APPLIED
              - IGNORED
        cloudProvider:
          type: array
          description: >-
            List of cloud providers which will be applied as filter for
            Recommendations
          items:
            type: string
            description: >-
              List of cloud providers which will be applied as filter for
              Recommendations
            enum:
              - AWS
              - AZURE
              - GCP
              - CLUSTER
              - EXTERNAL_DATA
              - IBM
              - ON_PREM
              - UNKNOWN
        regions:
          type: array
          description: List of regions which will be applied as filter for Recommendations
          items:
            type: string
            description: >-
              List of regions which will be applied as filter for
              Recommendations
      description: Properties of the K8sRecommendation Filter defined in Harness
    ResponseDTOVoid:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: object
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOInteger:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: integer
          format: int32
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationDetailsDTO:
      type: object
    RecommendationItem:
      required:
        - id
        - resourceType
      type: object
      properties:
        id:
          type: string
        clusterName:
          type: string
        namespace:
          type: string
        resourceName:
          type: string
        monthlySaving:
          type: number
          format: double
        preferenceBasedSaving:
          type: number
          format: double
        monthlyCost:
          type: number
          format: double
        isValid:
          type: boolean
        lastProcessedAt:
          type: integer
          format: int64
        resourceType:
          type: string
          enum:
            - WORKLOAD
            - NODE_POOL
            - ECS_SERVICE
            - EC2_INSTANCE
            - GOVERNANCE
            - AZURE_INSTANCE
        recommendationState:
          type: string
          enum:
            - OPEN
            - APPLIED
            - IGNORED
        jiraConnectorRef:
          type: string
        jiraIssueKey:
          type: string
        jiraStatus:
          type: string
        servicenowConnectorRef:
          type: string
        servicenowIssueKey:
          type: string
        servicenowIssueStatus:
          type: string
        recommendationDetails:
          $ref: '#/components/schemas/RecommendationDetailsDTO'
        perspectiveId:
          type: string
        perspectiveName:
          type: string
        cloudProvider:
          type: string
        governanceRuleId:
          type: string
        targetRegion:
          type: string
        appliedAt:
          type: integer
          format: int64
        appliedAtSavings:
          type: number
          format: double
        overriddenSavings:
          type: number
          format: double
        costCategoryDetails:
          type: array
          items:
            $ref: '#/components/schemas/CCMCostCategoryDTO'
        cloudAccountId:
          type: string
        cloudAccountName:
          type: string
        appliedByUserId:
          type: string
        appliedByUserName:
          type: string
        createdAt:
          type: integer
          format: int64
      description: A single Cloud Cost Recommendation entity.
    Recommendations:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/RecommendationItem'
        offset:
          type: integer
          format: int64
        limit:
          type: integer
          format: int64
      description: The Cloud Cost Recommendations list response
    ResponseDTORecommendations:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/Recommendations'
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationRealizedSavingStatsDTO:
      type: object
      properties:
        appliedDate:
          type: integer
          format: int64
        appliedRecommendationCount:
          type: integer
          format: int32
        totalMonthlySaving:
          type: number
          format: double
    ResponseDTOListRecommendationRealizedSavingStatsDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/RecommendationRealizedSavingStatsDTO'
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationResourceTypeStats:
      type: object
      properties:
        count:
          type: integer
          format: int32
        totalMonthlyCost:
          type: number
          format: double
        totalMonthlySaving:
          type: number
          format: double
        resourceType:
          type: string
    ResponseDTOListRecommendationResourceTypeStats:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/RecommendationResourceTypeStats'
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationOverviewStats:
      type: object
      properties:
        totalMonthlyCost:
          type: number
          format: double
        totalMonthlySaving:
          type: number
          format: double
    ResponseDTORecommendationOverviewStats:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RecommendationOverviewStats'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOCCMJiraDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CCMJiraDetails'
        metaData:
          type: object
        correlationId:
          type: string
    CCMJiraCreateDTO:
      type: object
      properties:
        recommendationId:
          type: string
        resourceType:
          type: string
          enum:
            - WORKLOAD
            - NODE_POOL
            - ECS_SERVICE
            - EC2_INSTANCE
            - GOVERNANCE
            - AZURE_INSTANCE
        connectorRef:
          type: string
        projectKey:
          type: string
        issueType:
          type: string
        fields:
          type: object
          additionalProperties:
            type: string
    EC2RecommendationPreset:
      required:
        - accountId
        - resourceType
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationPreset'
        - type: object
          properties:
            familyPreference:
              type: string
              enum:
                - SAME_FAMILY
                - CROSS_FAMILY
    ECSRecommendationPreset:
      required:
        - accountId
        - resourceType
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationPreset'
        - type: object
          properties:
            bufferPercentage:
              maximum: 100
              minimum: 0
              type: integer
              format: int32
    LookBackPeriod:
      required:
        - ec2InstancePeriod
        - ecsServicePeriod
        - nodepoolPeriod
        - workloadPeriod
      type: object
      properties:
        ec2InstancePeriod:
          type: integer
          format: int32
        ecsServicePeriod:
          type: integer
          format: int32
        workloadPeriod:
          type: integer
          format: int32
        nodepoolPeriod:
          type: integer
          format: int32
    NodepoolRecommendationPreset:
      required:
        - accountId
        - resourceType
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationPreset'
        - type: object
          properties:
            bufferPercentage:
              maximum: 100
              minimum: 0
              type: integer
              format: int32
            minNodeCount:
              minimum: 1
              type: integer
              format: int32
            preferredInstances:
              type: object
              additionalProperties:
                type: object
                additionalProperties:
                  type: array
                  items:
                    type: string
    RecommendationPreferenceDTO:
      type: object
      properties:
        appliedRecommendationPresets:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/RecommendationPreset'
        lookBackPeriod:
          $ref: '#/components/schemas/LookBackPeriod'
        childRecommendation:
          type: boolean
        includeIgnoredRecommendation:
          type: boolean
        parentRecommendation:
          type: boolean
        appliedJiraStatuses:
          uniqueItems: true
          type: array
          items:
            type: string
        ignoredJiraStatuses:
          uniqueItems: true
          type: array
          items:
            type: string
      description: >-
        This object will contain tag key and values for a particular
        recommendation
    RecommendationPreset:
      required:
        - accountId
        - resourceType
      type: object
      properties:
        uuid:
          type: string
        createdAt:
          type: integer
          format: int64
        lastUpdatedAt:
          type: integer
          format: int64
        accountId:
          type: string
        resourceType:
          type: string
          enum:
            - WORKLOAD
            - NODE_POOL
            - ECS_SERVICE
            - EC2_INSTANCE
            - GOVERNANCE
            - AZURE_INSTANCE
        name:
          maxLength: 80
          minLength: 0
          type: string
        description:
          maxLength: 256
          minLength: 0
          type: string
      discriminator:
        propertyName: resourceType
    ResponseDTORecommendationPreferenceDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RecommendationPreferenceDTO'
        metaData:
          type: object
        correlationId:
          type: string
    WorkloadRecommendationPreset:
      required:
        - accountId
        - resourceType
      type: object
      allOf:
        - $ref: '#/components/schemas/RecommendationPreset'
        - type: object
          properties:
            qos:
              type: string
              enum:
                - BURSTABLE
                - GUARANTEED
            bufferPercentage:
              maximum: 100
              minimum: 0
              type: integer
              format: int32
    RecommendationPreference:
      type: object
      properties:
        uuid:
          type: string
        accountId:
          type: string
        recommendationPresets:
          type: object
          additionalProperties:
            type: string
        lookBackPeriod:
          $ref: '#/components/schemas/LookBackPeriod'
        childRecommendation:
          type: boolean
        includeIgnoredRecommendation:
          type: boolean
        parentRecommendation:
          type: boolean
        appliedJiraStatuses:
          uniqueItems: true
          type: array
          items:
            type: string
        ignoredJiraStatuses:
          uniqueItems: true
          type: array
          items:
            type: string
        lastUpdatedAt:
          type: integer
          format: int64
        lastUpdatedBy:
          $ref: '#/components/schemas/EmbeddedUser'
    ResponseDTOListRecommendationPreset:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/RecommendationPreset'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOCCMServiceNowDetails:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/CCMServiceNowDetails'
        metaData:
          type: object
        correlationId:
          type: string
    CCMServiceNowCreateDTO:
      type: object
      properties:
        recommendationId:
          type: string
        resourceType:
          type: string
          enum:
            - WORKLOAD
            - NODE_POOL
            - ECS_SERVICE
            - EC2_INSTANCE
            - GOVERNANCE
            - AZURE_INSTANCE
        connectorRef:
          type: string
        ticketType:
          type: string
        fields:
          type: object
          additionalProperties:
            type: string
    RecommendationTagDTO:
      type: object
      properties:
        recommendationId:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
      description: >-
        This object will contain tag key and values for a particular
        recommendation
    ResponseDTORecommendationTagDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RecommendationTagDTO'
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationAzureVmId:
      type: object
      properties:
        subscriptionId:
          type: string
        resourceGroupId:
          type: string
        vmName:
          type: string
    RecommendationEC2InstanceId:
      type: object
      properties:
        awsAccountId:
          type: string
        instanceId:
          type: string
    RecommendationECSServiceId:
      type: object
      properties:
        clusterName:
          type: string
        ecsServiceName:
          type: string
    RecommendationGovernanceRuleId:
      type: object
      properties:
        ruleId:
          type: string
        targetId:
          type: string
        targetRegion:
          type: string
        resourceId:
          type: string
    RecommendationNodepoolId:
      type: object
      properties:
        clusterName:
          type: string
        nodepoolName:
          type: string
    RecommendationWorkloadId:
      type: object
      properties:
        clusterName:
          type: string
        namespace:
          type: string
        workloadName:
          type: string
    RecommendationsIgnoreList:
      type: object
      properties:
        accountId:
          type: string
        workloadIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationWorkloadId'
        nodepoolIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationNodepoolId'
        ecsServiceIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationECSServiceId'
        ec2InstanceIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationEC2InstanceId'
        azureVmIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationAzureVmId'
        governanceRuleIgnoreList:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationGovernanceRuleId'
    ResponseDTORecommendationsIgnoreList:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RecommendationsIgnoreList'
        metaData:
          type: object
        correlationId:
          type: string
    RecommendationsIgnoreResourcesDTO:
      type: object
      properties:
        workloads:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationWorkloadId'
        nodepools:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationNodepoolId'
        ecsServices:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationECSServiceId'
        ec2Instances:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationEC2InstanceId'
        azureVmIds:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationAzureVmId'
        governanceRuleIds:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/RecommendationGovernanceRuleId'
    ActivationUpdate:
      description: An object used to specify updates for flag activation updates
      properties:
        defaultOffVariation:
          description: >-
            The default variation to serve when the flag is disabled in this
            environment
          example: red
          type: string
        defaultOnVariation:
          description: >-
            The default variation to serve when the flag is enabled in this
            environment
          example: blue
          type: string
        identifier:
          description: The name of the environment
          example: env1
          type: string
        rules:
          items:
            $ref: '#/components/schemas/TargetRulesUpdate'
          type: array
        state:
          description: The state of the flag in this environment i.e. "on" or "off"
          example: 'on'
          type: string
      required:
        - identifier
      type: object
    CfApiKey:
      description: The API key is used by SDKs to connect to Harness Feature Flags
      properties:
        apiKey:
          description: >-
            The Key will be shown only on create. On subsequent GET calls, only
            the masked APIKeys will be returned
          example: b03af1cd-bd3f-472b-a4b0-c9c9c09c642e
          type: string
        applicationIds:
          description: A list of Application IDs
          items:
            $ref: '#/components/schemas/ApplicationId'
          type: array
        identifier:
          description: The environment that this key was created in
          example: production
          type: string
        key:
          description: A hash of API key
          example: 3c940273c34e8a9b21
          type: string
        lastUsed:
          description: Timestamp of the last time the API key was used
          example: 1726744149
          format: int64
          type: integer
        name:
          description: The user friendly identifier for the API Key
          example: Production Server Key
          type: string
        type:
          description: The type of key depending on the SDK that is being used.
          enum:
            - server
            - client
          example: server
          type: string
      required:
        - name
        - apiKey
        - identifier
        - type
      type: object
    ApiKeyRequestType:
      description: The type of key depending on the SDK that is being used.
      enum:
        - Server
        - Client
      example: Server
      type: string
    ApiKeys:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            apiKeys:
              items:
                $ref: '#/components/schemas/CfApiKey'
              type: array
      description: A list of API Keys
      type: object
    ApplicationId:
      description: >-
        An ApplicationId represents an application that is associated with a
        specific API key
      properties:
        applicationId:
          description: The application ID of the application
          example: my-springboot-application
          type: string
        lastUsed:
          description: The timestamp of when this application was last accessed
          example: 1726744149
          format: int64
          type: integer
      required:
        - applicationId
        - lastUsed
      type: object
    Attribute:
      description: An Attribute, object property to evaluate targets on.
      properties:
        key:
          description: The attribute key
          example: age
          type: string
      required:
        - key
      type: object
    AttributeResponseMetadata:
      properties:
        details:
          description: Additional metadata about the request
          properties:
            governanceMetadata:
              description: Summary of governance checks including any warnings
              type: object
          type: object
      type: object
    Attributes:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            attributes:
              items:
                $ref: '#/components/schemas/Attribute'
              type: array
      description: A list of Attributes
      required:
        - environment
      type: object
    CCM:
      description: CCM Details for environment
      properties:
        anomalies:
          description: List of anomalies detected
          items:
            properties:
              acknowledgedAt:
                description: The timestamp when the anomaly was acknowledged
                example: 0
                type: integer
              anomalyId:
                description: The Id of the anomaly
                example: '123456'
                type: string
              costDifference:
                description: The difference value for the anomaly
                example: 123
                type: integer
              createdAt:
                description: The creation timestamp of the anomaly record
                example: 0
                type: integer
              foundAt:
                description: The timestamp when the anomaly was found
                example: 0
                type: integer
              isAcknowledged:
                description: Flag to indicate if the anomaly is acknowledged
                example: false
                type: boolean
              status:
                description: The current status of the anomaly
                example: found
                type: string
            required:
              - anomalyId
              - createdAt
              - isAcknowledged
              - status
            type: object
          type: array
        perspectiveIdentifier:
          example: '123456'
          type: string
        perspectiveName:
          example: myCluster
          type: string
      required:
        - perspectiveIdentifier
        - perspectiveName
      type: object
    Clause:
      description: A clause describes what conditions are used to evaluate a flag
      properties:
        attribute:
          description: >-
            The attribute to use in the clause.  This can be any target
            attribute
          example: identifier
          type: string
        id:
          description: The unique ID for the clause
          example: 32434243
          type: string
        negate:
          description: Is the operation negated?
          example: false
          type: boolean
        op:
          description: The type of operation such as equals, starts_with, contains
          example: starts_with
          type: string
        values:
          description: The values that are compared against the operator
          items:
            type: string
          type: array
      required:
        - attribute
        - op
        - negate
        - values
      type: object
    Distribution:
      description: Describes a distribution rule
      properties:
        bucketBy:
          description: The attribute to use when distributing targets across buckets
          type: string
        variations:
          description: A list of variations and the weight that should be given to each
          items:
            $ref: '#/components/schemas/WeightedVariation'
          type: array
      required:
        - bucketBy
        - variations
      type: object
    EnvironmentPerspective:
      properties:
        createdAt:
          description: The date the key was created at in milliseconds
          format: int64
          type: integer
        environmentId:
          description: The ID of the Environment
          example: '67891'
          type: string
        perspectiveId:
          description: The ID of the Perspective
          example: '12345'
          type: string
        perspectiveIdentifier:
          description: The Identifier/Common Name of the Perspective
          example: myCluster
          type: string
        updatedAt:
          description: The date the key was last updated at in milliseconds
          format: int64
          type: integer
      required:
        - environmentId
        - perspectiveId
        - perspectiveIdentifier
        - createdAt
        - updatedAt
      type: object
    CfError:
      properties:
        code:
          description: The http error code
          example: 404
          type: string
        details:
          description: Additional details about the error
          type: object
        message:
          description: The reason the request failed
          example: Error retrieving projects, organization 'default_org' does not exist
          type: string
      required:
        - code
        - message
      type: object
    Feature:
      description: A Feature Flag response
      properties:
        archived:
          description: Indicates if the flag has been archived and is no longer used
          example: false
          type: boolean
        createdAt:
          description: The date the flag was created in milliseconds
          format: int64
          type: integer
        defaultOffVariation:
          description: The default value returned when a flag is off
          example: true
          type: string
        defaultOnVariation:
          description: The default value returned when a flag is on
          example: true
          type: string
        description:
          description: A description for this flag
          example: A flag to control a new feature in production
          type: string
        envProperties:
          description: The Feature Flag rules for a given environment
          properties:
            ccm:
              $ref: '#/components/schemas/CCM'
            defaultServe:
              $ref: '#/components/schemas/Serve'
            environment:
              description: The environment identifier
              type: string
            jiraEnabled:
              description: >-
                Indicates whether jira functionality is enabled for the given
                account, project, org, and environment
              type: boolean
            jiraIssues:
              description: >-
                An array of Jira Issues linked to this Feature. Returns empty if
                none exist
              items:
                $ref: '#/components/schemas/JiraIssue'
              type: array
            modifiedAt:
              description: The last time the flag was modified in this environment
              format: int64
              type: integer
            offVariation:
              description: >-
                The variation to serve for this flag in this environment when
                the flag is off
              type: string
            pipelineConfigured:
              type: boolean
            pipelineDetails:
              $ref: '#/components/schemas/FeaturePipeline'
            pipelineErrorReason:
              type: string
            pipelineErrorState:
              type: boolean
            rules:
              description: >-
                A list of rules to use when evaluating this flag in this
                environment
              items:
                $ref: '#/components/schemas/ServingRule'
              type: array
            state:
              $ref: '#/components/schemas/FeatureState'
            variationMap:
              description: >-
                A list of the variations that will be served to specific targets
                or target groups in an environment.
              items:
                $ref: '#/components/schemas/VariationMap'
              type: array
            version:
              description: >-
                The version of the flag.  This is incremented each time it is
                changed
              format: int64
              type: integer
          required:
            - state
            - defaultServe
            - environment
            - offVariation
            - pipelineConfigured
          type: object
        evaluation:
          description: The value that the flag will return for the current user
          example: true
          type: string
        evaluationIdentifier:
          description: The identifier for the returned evaluation
          example: on-variation
          type: string
        identifier:
          description: The Feature Flag identifier
          example: bool-flag
          type: string
        kind:
          description: The type of Feature flag
          enum:
            - boolean
            - int
            - string
            - json
          example: boolean
          type: string
        modifiedAt:
          description: The date the flag was last modified in milliseconds
          format: int64
          type: integer
        name:
          description: The name of the Feature Flag
          example: My Boolean Flag
          type: string
        owner:
          description: The user who created the flag
          example: johndoe
          items:
            type: string
          type: array
        permanent:
          description: Indicates if this is a permanent flag, or one that should expire
          example: true
          type: boolean
        prerequisites:
          items:
            $ref: '#/components/schemas/Prerequisite'
          type: array
        project:
          description: The project this Feature belongs to
          example: test-project
          type: string
        results:
          description: >-
            The results shows which variations have been evaluated, and how many
            times each of these have been evaluated.
          items:
            $ref: '#/components/schemas/Results'
          type: array
        services:
          description: A list of services linked to this Feature Flag
          items:
            $ref: '#/components/schemas/CfService'
          type: array
        stale:
          description: Whether the flag is stale or not
          example: false
          type: boolean
        staleReason:
          description: The reason that the flag was marked as stale
          example: matched-criteria
          type: string
        tags:
          description: A list of tags for this Feature Flag
          items:
            $ref: '#/components/schemas/Tag'
          type: array
        variations:
          description: The variations that can be returned for this flag
          items:
            $ref: '#/components/schemas/Variation'
          minItems: 2
          type: array
      required:
        - project
        - identifier
        - createdAt
        - kind
        - name
        - variations
        - defaultOnVariation
        - defaultOffVariation
      type: object
    FeatureCounts:
      properties:
        totalActive:
          description: >-
            The total number of flags with a active status in a
            project/environment
          example: 5
          type: integer
        totalAnomaly:
          description: >-
            The total number of flags with an unacknowledged anomaly status in
            the project/environment
          example: 4
          type: integer
        totalArchived:
          description: The total number of archived flags in the project/environment
          example: 10
          type: integer
        totalEnabled:
          description: >-
            The total number of flags that are turned on in a
            project/environment
          example: 2
          type: integer
        totalFeatures:
          description: The total number of flags in the project/environment
          example: 10
          type: integer
        totalPermanent:
          description: The total number of permanent flags in a project/environment
          example: 7
          type: integer
        totalPotentiallyStale:
          description: >-
            The total number of flags with a potentially-stale status in a
            project/environment
          example: 3
          type: integer
        totalRecentlyAccessed:
          description: >-
            The total number of flags with a recently-accessed status in a
            project/environment
          example: 2
          type: integer
      type: object
    FeatureFlagRequestKind:
      enum:
        - boolean
        - int
        - string
        - json
      example: boolean
      type: string
    FeaturePipeline:
      description: A pipeline configured to update a feature
      properties:
        createdAt:
          description: creation date in milliseconds
          type: integer
        description:
          description: The description of the pipeline
          type: string
        identifier:
          description: The identifier of the pipeline
          type: string
        lastUpdatedAt:
          description: last updated date in milliseconds
          type: integer
        name:
          description: The name of the pipeline
          type: string
      required:
        - identifier
        - name
      type: object
    FeatureResponseMetadata:
      properties:
        details:
          description: Additional metadata about the request
          properties:
            governanceMetadata:
              description: Summary of governance checks including any warnings
              type: object
            pipelineMetadata:
              description: Info about the pipeline whether a pipeline was triggered
              properties:
                pipelineExecutionId:
                  description: The ID of the pipeline execution
                  type: string
                pipelineTriggered:
                  description: Whether a pipeline was triggered
                  type: boolean
              type: object
          type: object
      type: object
    FeatureState:
      description: The state of a flag either off or on
      enum:
        - 'on'
        - 'off'
      type: string
    Features:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            featureCounts:
              $ref: '#/components/schemas/FeatureCounts'
            features:
              items:
                $ref: '#/components/schemas/Feature'
              type: array
      description: A list of Feature Flags
      type: object
    FlagBasicInfo:
      description: A flag Identifier and name
      properties:
        identifier:
          description: The flag identifier
          example: test-flag
          type: string
        name:
          description: The user friendly flag name
          example: Test Flag
          type: string
      required:
        - identifier
        - name
      type: object
    FlagBasicInfos:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            featureFlags:
              items:
                $ref: '#/components/schemas/FlagBasicInfo'
              type: array
      description: A list of Flags
      type: object
    CfGitDetails:
      description: The commit message to use as part of a gitsync operation
      properties:
        commitMsg:
          description: A description of the change or action
          example: Turning on flag test-flag for production
          type: string
      required:
        - commitMsg
      type: object
    GitSyncPatchOperation:
      properties:
        comment:
          description: A comment explaining the reason for this patch operation
          example: This is a comment string
          type: string
        executionTime:
          description: >-
            Time of execution in unix epoch milliseconds when the scheduled
            changes will be applied
          type: integer
        gitDetails:
          $ref: '#/components/schemas/CfGitDetails'
        instructions:
          $ref: '#/components/schemas/PatchInstruction'
      required:
        - instructions
      type: object
    GroupServingRule:
      description: The rule used to determine what variation to serve to a target
      properties:
        clauses:
          description: A list of clauses to use in the rule
          items:
            $ref: '#/components/schemas/Clause'
          type: array
        priority:
          description: >-
            The rules priority relative to other rules.  The rules are evaluated
            in order with 1 being the highest
          example: 1
          type: integer
        ruleId:
          description: The unique identifier for this rule
          type: string
      required:
        - ruleId
        - clauses
        - priority
      type: object
    JiraIssue:
      description: A Jira Issue
      properties:
        issueKey:
          description: The Jira Issue key
          example: FFM-7777
          type: string
        issueURL:
          description: The jira issue URL
          example: https://harness-dev1.atlassian.net
          type: string
      required:
        - issueKey
        - issueURL
      type: object
    OrganizationDictionary:
      additionalProperties:
        $ref: '#/components/schemas/ProjectDictionary'
      type: object
    Pagination:
      properties:
        itemCount:
          description: The total number of items
          example: 1
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          type: integer
        pageIndex:
          description: The current page
          example: 0
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
        version:
          description: >-
            The version of this object.  The version will be incremented each
            time the object is modified
          example: 5
          type: integer
      required:
        - pageCount
        - itemCount
        - pageSize
        - pageIndex
      type: object
    PatchInstruction:
      description: A list of Patch Instructions
      items:
        properties:
          kind:
            description: >-
              The name of the modification you would like to perform on a
              resource.
            example: enableFeatureFlag
            type: string
          parameters:
            example:
              ruleId: TestRule
              variationID: TestVariation
            type: object
        required:
          - kind
          - parameters
      type: array
    Prerequisite:
      description: Feature Flag pre-requisites
      properties:
        feature:
          description: The feature identifier that is the prerequisite
          type: string
        variations:
          description: A list of variations that must be met
          items:
            type: string
          type: array
      required:
        - feature
        - variations
      type: object
    ProjectDictionary:
      properties:
        projects:
          additionalProperties:
            $ref: '#/components/schemas/ProxyKeyProject'
          type: object
      type: object
    ProxyKey:
      properties:
        createdAt:
          description: The date the key was created at in milliseconds
          format: int64
          type: integer
        description:
          description: A description of the Proxy Key
          example: This is a proxy key for production
          type: string
        id:
          description: The ProxyKeys ID
          example: 31B0B299-7635-416D-9E99-CFCAA7ADABEA
          type: string
        identifier:
          description: The Proxy Keys identifier
          example: ProxyKeyOne
          type: string
        name:
          description: The ProxyKeys name
          example: Proxy Key One
          type: string
        updatedAt:
          description: The date the key was last updated at in milliseconds
          format: int64
          type: integer
      required:
        - id
        - name
        - identifier
        - description
        - createdAt
        - updatedAt
      type: object
    ProxyKeyInstruction:
      description: A Proxy Key instruction
      properties:
        instructions:
          properties:
            rotateKey:
              example: 12h
              type: string
            updateConfig:
              example:
                organizations:
                  org123:
                    projects:
                      project1:
                        environments: []
                        scope: all
                      project2:
                        environments: []
                        scope: prod
                      project3:
                        environments: []
                        scope: non-prod
                      project4:
                        environments:
                          - env1
                          - env2
                          - env3
                        scope: selected
                version: 1
              properties:
                organizations:
                  $ref: '#/components/schemas/OrganizationDictionary'
                version:
                  example: 1
                  type: integer
              required:
                - organizations
                - version
              type: object
            updateDescription:
              example: new proxyKey updateDescription
              type: string
            updateName:
              example: newProxyKey
              type: string
          type: object
      type: object
    ProxyKeyProject:
      properties:
        environments:
          items:
            type: string
          type: array
        scope:
          enum:
            - all
            - prod
            - non-prod
            - selected
          type: string
      required:
        - scope
      type: object
    ProxyKeys:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            proxyKeys:
              items:
                $ref: '#/components/schemas/ProxyKey'
              type: array
      description: A list of Proxy Keys
      type: object
    Results:
      description: >-
        This result object shows details of how many times a variation has been
        evaluated
      properties:
        count:
          description: The number of times this variation has been returned in a evaluation
          type: integer
        variationIdentifier:
          description: The unique variation identifier
          example: defaultOnVariation
          type: string
        variationName:
          description: The user friendly variation name
          example: Default On Variation
          type: string
      required:
        - variationIdentifier
        - variationName
        - count
      type: object
    Segment:
      description: A Target Group (Segment) response
      properties:
        createdAt:
          description: The data and time in milliseconds when the group was created
          format: int64
          type: integer
        environment:
          description: The environment this target group belongs to
          example: Production
          type: string
        excluded:
          description: A list of Targets who are excluded from this target group
          items:
            $ref: '#/components/schemas/Target'
          type: array
        identifier:
          description: Unique identifier for the target group.
          type: string
        included:
          description: A list of Targets who belong to this target group
          items:
            $ref: '#/components/schemas/Target'
          type: array
        modifiedAt:
          description: The data and time in milliseconds when the group was last modified
          format: int64
          type: integer
        name:
          description: Name of the target group.
          example: Beta Testers
          type: string
        rules:
          items:
            $ref: '#/components/schemas/Clause'
          type: array
        servingRules:
          description: >-
            An array of rules that can cause a user to be included in this
            segment.
          items:
            $ref: '#/components/schemas/GroupServingRule'
          type: array
        tags:
          description: Tags for this target group
          items:
            $ref: '#/components/schemas/Tag'
          type: array
        version:
          description: >-
            The version of this group.  Each time it is modified the version is
            incremented
          example: 1
          format: int64
          type: integer
      required:
        - identifier
        - name
      type: object
    SegmentFlag:
      description: >-
        Details of a Feature Flag that has been included in a Target Group
        (Segment)
      properties:
        description:
          description: A description of the feature flag
          type: string
        environment:
          description: The environment identifier for the feature flag
          type: string
        identifier:
          description: The identifier of the feature flag
          example: simple-bool
          type: string
        name:
          description: The name of the feature flag
          example: Simple Bool
          type: string
        project:
          description: The project identifier for the feature flag
          type: string
        ruleId:
          description: The unique identifier for this rule
          type: string
        type:
          description: >-
            How the the flag has been included, either directly or via a custom
            rule
          enum:
            - DIRECT
            - CONDITION
          type: string
        variation:
          description: >-
            The identifier for the variation of the flag that should be served
            to members of the group
          type: string
      required:
        - identifier
        - type
        - project
        - environment
        - name
        - variation
      type: object
    Segments:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            segments:
              items:
                $ref: '#/components/schemas/Segment'
              type: array
      description: A list of Target Groups (Segments)
      type: object
    Serve:
      description: >-
        Describe the distribution rule and the variation that should be served
        to the target
      properties:
        distribution:
          $ref: '#/components/schemas/Distribution'
        variation:
          type: string
      type: object
    CfService:
      description: A Harness service linked to a flag
      properties:
        identifier:
          description: The identifier of the service
          type: string
        name:
          description: The name of the service
          type: string
      required:
        - name
        - identifier
      type: object
    ServingRule:
      description: The rule used to determine what variation to serve to a target
      properties:
        clauses:
          description: A list of clauses to use in the rule
          items:
            $ref: '#/components/schemas/Clause'
          type: array
        priority:
          description: >-
            The rules priority relative to other rules.  The rules are evaluated
            in order with 1 being the highest
          example: 1
          type: integer
        ruleId:
          description: The unique identifier for this rule
          type: string
        serve:
          $ref: '#/components/schemas/Serve'
      required:
        - priority
        - clauses
        - serve
      type: object
    Tag:
      description: A Tag object used to tag feature flags - consists of name and identifier
      properties:
        identifier:
          description: The identifier of the tag
          example: feature-flag-tag-1
          type: string
        name:
          description: The name of the tag
          example: feature-flag-tag-1
          type: string
      required:
        - name
        - identifier
      type: object
    TagResponseMetadata:
      properties:
        details:
          description: Additional metadata about the request
          properties:
            governanceMetadata:
              description: Summary of governance checks including any warnings
              type: object
          type: object
      type: object
    Tags:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            tags:
              items:
                $ref: '#/components/schemas/Tag'
              type: array
      description: A list of Tags - requirement for feature flag tagging
      type: object
    Target:
      description: A Target object
      properties:
        account:
          description: The account ID that the target belongs to
          example: abcXDdffdaffd
          type: string
        anonymous:
          description: Indicates if this target is anonymous
          type: boolean
        attributes:
          description: a JSON representation of the attributes for this target
          example:
            age: 20
            location: Belfast
          type: object
        createdAt:
          description: The date and time in milliseconds when this Target was created
          format: int64
          type: integer
        environment:
          description: The identifier for the environment that the target belongs to
          type: string
        identifier:
          description: The unique identifier for this target
          example: john-doe
          type: string
        name:
          description: The name of this Target
          example: John Doe
          type: string
        org:
          description: The identifier for the organization that the target belongs to
          type: string
        project:
          description: The identifier for the project that this target belongs to
          type: string
        segments:
          description: A list of Target Groups (Segments) that this Target belongs to
          items:
            $ref: '#/components/schemas/Segment'
          type: array
      required:
        - identifier
        - name
        - environment
        - project
        - account
        - org
      type: object
    TargetDetail:
      description: >-
        Details of which Target Groups (Segments) a target is included in or
        excluded from
      properties:
        excludedSegments:
          description: A list of target groups (segments) that the target is excluded from.
          items:
            $ref: '#/components/schemas/TargetDetailSegment'
          type: array
        identifier:
          description: The unique identifier for the target
          type: string
        includedSegments:
          description: A list of target groups (segments) that the target is included in.
          items:
            $ref: '#/components/schemas/TargetDetailSegment'
          type: array
        ruleSegments:
          description: >-
            A list of target groups (segments) that the target is included in
            via group rules.
          items:
            $ref: '#/components/schemas/TargetDetailSegment'
          type: array
      required:
        - identifier
        - environment
        - project
        - account
        - org
      type: object
    TargetDetailSegment:
      properties:
        identifier:
          description: The unique identifier
          type: string
        name:
          description: The name
          type: string
      type: object
    TargetMap:
      description: Target map provides the details of a target that belongs to a flag
      properties:
        identifier:
          description: The identifier for the target
          type: string
        name:
          description: The name of the target
          type: string
      required:
        - identifier
        - name
      type: object
    TargetRulesUpdate:
      description: An object used to specify updates for flag activation updates
      properties:
        targets:
          description: The target rules that should be set for this variation
          example:
            - target1
            - target2
          items:
            type: string
          type: array
        variation:
          description: The name of the variation these rules apply to
          example: true
          type: string
      required:
        - variation
      type: object
    Targets:
      allOf:
        - $ref: '#/components/schemas/Pagination'
        - properties:
            targets:
              items:
                $ref: '#/components/schemas/Target'
              type: array
      description: A list of Targets
      type: object
    Variation:
      description: A variation of a flag that can be returned to a target
      properties:
        description:
          description: A description of the variation
          type: string
        identifier:
          description: The unique identifier for the variation
          example: off-variation
          type: string
        name:
          description: The user friendly name of the variation
          example: Off VAriation
          type: string
        value:
          description: >-
            The variation value to serve such as true or false for a boolean
            flag
          example: 'true'
          type: string
      required:
        - identifier
        - value
      type: object
    VariationMap:
      description: >-
        A mapping of variations to targets and target groups (segments).  The
        targets listed here should receive this variation.
      properties:
        targetSegments:
          description: A list of target groups (segments)
          items:
            type: string
          type: array
        targets:
          description: A list of target mappings
          items:
            $ref: '#/components/schemas/TargetMap'
          type: array
        variation:
          description: The variation identifier
          example: off-variation
          type: string
      required:
        - variation
      type: object
    WeightedVariation:
      description: >-
        A variation and the weighting it should receive as part of a percentage
        rollout
      properties:
        variation:
          description: The variation identifier
          example: off-variation
          type: string
        weight:
          description: The weight to be given to the variation in percent
          example: 50
          type: integer
      required:
        - variation
        - weight
      type: object
    DeleteAccessPointPayload:
      type: object
      properties:
        ids:
          type: array
          items:
            type: string
        with_resources:
          type: boolean
    LwService:
      required:
        - cloud_account_id
        - kind
        - name
        - org_id
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        org_id:
          type: string
        account_identifier:
          type: string
        project_id:
          type: string
        fulfilment:
          type: string
        kind:
          type: string
        cloud_account_id:
          type: string
        idle_time_mins:
          type: integer
          format: int64
        host_name:
          type: string
        health_check:
          type: object
          properties: {}
        custom_domains:
          type: array
          items:
            type: string
        match_all_subdomains:
          type: boolean
        disabled:
          type: boolean
        routing:
          $ref: '#/components/schemas/RoutingData'
        opts:
          $ref: '#/components/schemas/Opts'
        created_at:
          type: string
        access_point_id:
          type: string
        metadata:
          $ref: '#/components/schemas/ServiceMetadata'
        status:
          type: string
    ServiceV2:
      required:
        - cloud_account_id
        - kind
        - name
        - org_id
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        org_id:
          type: string
        account_identifier:
          type: string
        project_id:
          type: string
        fulfilment:
          type: string
        kind:
          type: string
        cloud_account_id:
          type: string
        idle_time_mins:
          type: integer
          format: int64
        host_name:
          type: string
        health_check:
          type: object
          properties: {}
        custom_domains:
          type: array
          items:
            type: string
        match_all_subdomains:
          type: boolean
        disabled:
          type: boolean
        routing:
          $ref: '#/components/schemas/RoutingDataV2'
        created_at:
          type: string
        metadata:
          $ref: '#/components/schemas/ServiceMetadata'
        status:
          type: string
    ServiceMetadata:
      type: object
      properties:
        cloud_provider_details:
          type: object
          properties:
            name:
              type: string
            type:
              type: string
        target_group_details:
          type: object
          properties: {}
        service_errors:
          type: array
          items:
            $ref: '#/components/schemas/ServiceError'
        kubernetes_connector_id:
          type: string
        autostopping_proxy_config:
          type: object
          properties:
            http:
              $ref: '#/components/schemas/HTTPProxy'
            tcp:
              $ref: '#/components/schemas/HTTPProxy'
    ServiceError:
      type: object
      properties:
        error:
          type: string
        action:
          type: string
    ServiceDep:
      type: object
    ServiceHealthResponse:
      type: object
      properties:
        response:
          type: object
          properties: {}
    SaveServiceRequest:
      type: object
      properties:
        deps:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDep'
        service:
          $ref: '#/components/schemas/LwService'
        apply_now:
          type: boolean
    SaveServiceRequestV2:
      type: object
      properties:
        deps:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDep'
        service:
          $ref: '#/components/schemas/ServiceV2'
        apply_now:
          type: boolean
    LwResource:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        region:
          type: string
        availability_zone:
          type: string
        status:
          type: string
        type:
          type: string
        launch_time:
          type: string
        ipv4:
          type: array
          items:
            type: string
        private_ipv4:
          type: array
          items:
            type: string
        tags:
          type: object
          properties: {}
          description: tag key as attribute key and tag value as attribute value
        resource_type:
          type: string
        provider_name:
          type: string
        is_spot:
          type: boolean
        platform:
          type: string
        cloud_account_id:
          type: number
        metadata:
          type: object
          properties: {}
        provider_type:
          type: string
    AllResourcesOfAccountResponse:
      type: object
      properties:
        response:
          type: array
          items:
            $ref: '#/components/schemas/LwResource'
    ServiceUsageRecord:
      type: object
      properties:
        service_id:
          type: number
        path:
          type: string
        session_id:
          type: string
        idle_time_mins:
          type: number
        created_at:
          type: string
    LwServiceResponse:
      type: object
      properties:
        response:
          $ref: '#/components/schemas/LwService'
    ServicesResponse:
      type: object
      properties:
        response:
          type: array
          items:
            $ref: '#/components/schemas/LwService'
    ServiceDepTree:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/LwService'
        children:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDepTree'
    InstanceBasedRoutingData:
      type: object
      properties:
        filter_text:
          type: string
        scale_group:
          $ref: '#/components/schemas/ASGMinimal'
    InstanceBasedRoutingDataV2:
      type: object
      properties:
        filter:
          $ref: '#/components/schemas/FilterObject'
        scale_group:
          $ref: '#/components/schemas/ASGMinimal'
    FilterObject:
      type: object
      properties:
        name:
          type: string
        ids:
          type: array
          items:
            type: string
        regions:
          type: array
          items:
            type: string
        resource_groups:
          type: array
          items:
            type: string
        vpc_id:
          type: string
        zones:
          type: array
          items:
            type: string
        tags:
          type: object
          properties: {}
    Proxy:
      type: object
      properties:
        id:
          type: string
    HTTPProxy:
      required:
        - proxy
        - ports
      type: object
      properties:
        proxy:
          $ref: '#/components/schemas/Proxy'
        ports:
          type: array
          items:
            $ref: '#/components/schemas/PortConfig'
    TCPProxy:
      required:
        - proxy
      type: object
      properties:
        proxy:
          $ref: '#/components/schemas/Proxy'
        ssh:
          type: integer
        rdp:
          type: integer
        ports:
          type: array
          items:
            type: integer
    Opts:
      type: object
      properties:
        preserve_private_ip:
          type: boolean
        delete_cloud_resources:
          type: boolean
        always_use_private_ip:
          type: boolean
        access_details:
          type: object
          properties: {}
        hide_progress_page:
          type: boolean
    PortConfig:
      type: object
      properties:
        protocol:
          type: string
        target_protocol:
          type: string
        port:
          type: integer
        target_port:
          type: integer
        server_name:
          type: string
        action:
          type: string
        redirect_url:
          type: string
        routing_rules:
          type: array
          items:
            $ref: '#/components/schemas/RoutingRule'
    RoutingRule:
      type: object
      properties:
        path_match:
          type: string
    RoutingData:
      type: object
      properties:
        instance:
          $ref: '#/components/schemas/InstanceBasedRoutingData'
        ports:
          type: array
          items:
            $ref: '#/components/schemas/PortConfig'
        lb:
          type: string
        k8s:
          type: object
          properties:
            RuleJson:
              type: string
            ConnectorID:
              type: string
            Namespace:
              type: string
        custom_domain_providers:
          type: object
          properties: {}
        container_svc:
          $ref: '#/components/schemas/ContainerSvc'
        database:
          $ref: '#/components/schemas/RDSDatabase'
    RoutingDataV2:
      type: object
      properties:
        instance:
          $ref: '#/components/schemas/InstanceBasedRoutingDataV2'
        lb:
          type: string
        k8s:
          type: object
          properties:
            RuleJson:
              type: string
            ConnectorID:
              type: string
            Namespace:
              type: string
        custom_domain_providers:
          type: object
          properties: {}
        container_svc:
          $ref: '#/components/schemas/ContainerSvc'
        database:
          $ref: '#/components/schemas/RDSDatabase'
        http:
          $ref: '#/components/schemas/HTTPProxy'
        tcp:
          $ref: '#/components/schemas/TCPProxy'
    RDSDatabase:
      type: object
      properties:
        id:
          type: string
        region:
          type: string
    ContainerSvc:
      type: object
      properties:
        cluster:
          type: string
        service:
          type: string
        region:
          type: string
        task_count:
          type: number
    AccessPointMeta:
      type: object
      properties:
        error:
          type: string
        certificate_id:
          type: string
        security_groups:
          type: array
          items:
            type: string
        dns:
          type: object
          properties:
            route53:
              type: object
              properties:
                hosted_zone_id:
                  type: string
            others:
              type: string
        albArn:
          type: string
        resource_group:
          type: string
        fe_ip_id:
          type: string
        subnet_id:
          type: string
        size:
          type: string
        app_gateway_id:
          type: string
        subnet_name:
          type: string
        fe_ip_name:
          type: string
        certificate:
          $ref: '#/components/schemas/CertificateData'
        func_region:
          type: string
    CertificateData:
      type: object
      properties:
        name:
          type: string
        password:
          type: string
        content:
          type: string
    AccessPoint:
      type: object
      properties:
        id:
          type: string
        account_id:
          type: string
        cloud_account_id:
          type: string
        org_id:
          type: string
        project_id:
          type: string
        host_name:
          type: string
        region:
          type: string
        type:
          type: string
        name:
          type: string
        vpc:
          type: string
        status:
          type: string
          enum:
            - created
            - submitted
            - errored
        metadata:
          $ref: '#/components/schemas/AccessPointMeta'
        subnets:
          type: array
          items:
            type: string
        security_groups:
          type: array
          items:
            type: string
        editables:
          type: array
          items:
            type: string
    CreateAccessPointResponse:
      type: object
      properties:
        response:
          $ref: '#/components/schemas/AccessPoint'
        errors:
          type: array
          items:
            type: string
        metadata:
          type: object
          properties: {}
    ListAccessPointResponse:
      type: object
      properties:
        response:
          type: array
          items:
            $ref: '#/components/schemas/AccessPoint'
    GetAccessPointResponse:
      type: object
      properties:
        response:
          $ref: '#/components/schemas/AccessPoint'
    CumulativeSavings:
      type: object
      properties:
        days:
          type: array
          items:
            type: string
        potential_cost:
          type: array
          items:
            type: number
            format: float
        actual_cost:
          type: array
          items:
            type: number
            format: float
        savings:
          type: array
          items:
            type: number
            format: float
        total_savings:
          type: number
          format: float
        total_potential:
          type: number
          format: float
        total_cost:
          type: number
          format: float
        savings_percent:
          type: number
          format: float
        total_active_services:
          type: number
          format: int64
    CumulativeSavingsResponse:
      type: object
      properties:
        response:
          $ref: '#/components/schemas/CumulativeSavings'
    AccessPointActivityResponse:
      type: object
      properties:
        response:
          $ref: '#/components/schemas/ServiceUsageRecord'
    ServiceDiagnosticsResponse:
      type: object
      properties:
        response:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDiagnostics'
    ASGMinimal:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        desired:
          type: integer
        min:
          type: integer
        max:
          type: integer
        on_demand:
          type: integer
        spot:
          type: integer
        mixed_instance:
          type: boolean
        cloud_account_id:
          type: string
        provider_name:
          type: string
        target_groups:
          type: array
          items:
            $ref: '#/components/schemas/TargetGroupMinimal'
        region:
          type: string
        availability_zones:
          type: array
          items:
            type: string
        status:
          type: string
        meta:
          type: object
          properties: {}
    TargetGroupMinimal:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        port:
          type: integer
        protocol:
          type: string
        vpc:
          type: string
    SaveStaticSchedulesRequest:
      type: object
      properties:
        schedule:
          $ref: '#/components/schemas/FixedSchedule'
        id:
          type: number
    FixedSchedule:
      type: object
      properties:
        name:
          type: string
          description: Name of the schedule
        id:
          type: number
          description: ID of fixed schedule
          readOnly: true
        account:
          type: string
          description: ID of account
        description:
          type: string
          description: Description of fixed schedule
        resources:
          type: array
          description: List of resources to be controlled by the schedule
          items:
            $ref: '#/components/schemas/StaticScheduleResource'
        details:
          $ref: '#/components/schemas/OccurrenceSchedule'
    StaticScheduleResource:
      type: object
      properties:
        id:
          type: string
          description: >-
            ID of the resource to be controlled by schedule. For AutoStopping
            rule, this would be the ID of the rule
        type:
          type: string
          description: Type of the resource to be controlled
          enum:
            - autostop_rule
      description: Details of an independent resource that can be controlled by a schedule
    OccurrenceSchedule:
      type: object
      properties:
        uptime:
          $ref: '#/components/schemas/TimeSchedule'
        downtime:
          $ref: '#/components/schemas/TimeSchedule'
        timezone:
          type: string
          description: Time zone in which the schedule should be applied
      description: Details of time schedule by which the resource should be controlled
    TimeSchedule:
      type: object
      properties:
        period:
          type: object
          properties:
            start:
              type: string
              description: Start time of the period
              example: '2021-10-19T08:35:00.927Z'
            end:
              type: string
              description: End time of the period
              example: '2021-10-19T08:37:58.927Z'
          description: For schedules that uses an exact time period
        days:
          type: object
          properties:
            days:
              type: array
              description: Days of week on which the schedule should be executed
              items:
                type: number
            all_day:
              type: boolean
              description: Equivalent to selecting all days
            start_time:
              $ref: '#/components/schemas/TimeInDay'
            end_time:
              $ref: '#/components/schemas/TimeInDay'
          description: For specifying a recurring schedule in terms of week days
      description: >-
        Specifies the occurrence schedule. Occurrence schedule can either be
        specified as period or as days
    TimeInDay:
      type: object
      properties:
        hour:
          type: number
          description: Hour
        min:
          type: number
          description: Minutes
    FixedSchedulesListResponse:
      type: object
      properties:
        response:
          type: array
          items:
            $ref: '#/components/schemas/FixedSchedule'
    ServiceDiagnostics:
      type: object
      properties:
        message:
          type: string
          description: Error message if success were to be false
        name:
          type: string
          description: Name of the check
        success:
          type: boolean
          description: Flag which specifies if a diagnostic check is successful
        type:
          type: string
    CoolDownOption:
      type: object
      properties:
        propagate:
          type: boolean
          description: Specifies if we need to propagate cool down to dependant rules
        force:
          type: boolean
          description: Specifies if the cool down is by force
    WarmUpOption:
      type: object
      properties:
        idle_time_mins:
          type: integer
          required: true
          description: Specifies time for which resource should be running
          default: '5'
        source:
          type: string
          required: true
          description: Specifies source of warm up
          default: Warm up through API
        forced_trigger:
          type: boolean
          description: Specifies warm up as force action to override schedules
          required: true
          default: true
    CoolDownMetaSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        response:
          type: array
          items:
            type: string
          description: Name of dependant autostopping rules which will be shut down
    CoolDownMetaFailureResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        errors:
          type: array
          items:
            type: string
          description: Errors
    ConnectedKubernetesClustersListResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
        errors:
          type: array
          items:
            type: string
        response:
          type: object
          properties:
            clusters:
              type: array
              items:
                $ref: '#/components/schemas/ConnectedKubernetesCluster'
    ConnectedKubernetesCluster:
      type: object
      properties:
        id:
          type: string
        account_id:
          type: string
        k8s_connector_id:
          type: string
          description: This is the CCM Kubernetes Cost Connector ID
        provider:
          type: string
          example: AWS
        name:
          type: string
          description: This is the name of the cluster
        region:
          type: string
          example: us-east-1
        created_at:
          type: string
          format: date-time
        health:
          type: object
          nullable: true
          properties:
            raw_json:
              type: array
              items:
                $ref: '#/components/schemas/ConnectedClusterHealthStatus'
        total_spend:
          type: number
          example: 0
        total_savings:
          type: number
          example: 0
        config:
          type: object
          nullable: true
          properties:
            spot_distribution:
              type: string
              enum:
                - ALL
                - SpotReady
                - None
            node_deletion_delay:
              type: integer
              example: 0
            distribution_strategy:
              type: string
              example: CostOptimized
              enum:
                - CostOptimized
                - LeastInterrupted
            base_on_demand_capacity:
              type: integer
              example: 1
            spot_split:
              type: integer
              example: 70
            on_demand_split:
              type: integer
              example: 30
            consolidation:
              type: object
              nullable: true
              properties:
                policy:
                  type: string
                  example: WhenEmptyOrUnderutilized
                  enum:
                    - WhenEmptyOrUnderutilized
                    - WhenEmpty
                after:
                  type: string
                  example: 1h5m
                  description: Consolidation will be performed after this window
                budgets:
                  type: array
                  nullable: true
                  items:
                    $ref: '#/components/schemas/ClusterConsolidationBudget'
                node_expiry:
                  type: string
                  nullable: true
                  example: 24h
                  description: >-
                    This is the max age for nodes created by cluster
                    orchestrator
                pod_evictor:
                  $ref: '#/components/schemas/ClusterOrchestratorPodEvictor'
            reverse_fallback:
              type: string
              nullable: true
              example: 6h
              description: >-
                The nodes which were replaced by a fallback ondemand node will
                be retried for spot after this window
    ConnectedClusterHealthStatus:
      type: object
      properties:
        status:
          type: string
          example: success
        service:
          type: string
          example: telemetry_collector
        raw_json:
          type: string
          nullable: true
          example: null
        last_heart_beat_received_at:
          type: string
          format: date-time
          example: '2025-02-28T20:07:13Z'
    ClusterOrchestratorPodEvictor:
      type: object
      properties:
        enabled:
          type: boolean
          example: false
        evict_single_replicas:
          type: boolean
          example: false
        minimum_cpu:
          type: integer
          example: 50
        minimum_memory:
          type: integer
          example: 50
    ClusterConsolidationBudget:
      type: object
      properties:
        reasons:
          type: array
          items:
            type: string
          example:
            - Drifted
            - Underutilized
            - Empty
        nodes:
          type: string
          example: 20%
        schedule:
          type: string
          nullable: true
          example: midnight
        duration:
          type: string
          nullable: true
          example: 10m0s
    OnboardToClusterOrchestratorRequest:
      type: object
      description: Configuration for cluster setup
      required:
        - name
        - user_config
        - k8s_connector_id
      properties:
        name:
          type: string
          description: Name identifier for the cluster configuration
        user_config:
          type: object
          description: User-specific configuration settings for the cluster
          required:
            - cluster_endpoint
          properties:
            cluster_endpoint:
              type: string
              description: >-
                API end point of the Kubernetes cluster as per the cloud
                provider
        k8s_connector_id:
          type: string
          description: ID for the CCM Cloud Cost Kubernetes connector
    ConnectedKubernetesClustersGetResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
        errors:
          type: array
          items:
            type: string
        response:
          $ref: '#/components/schemas/ConnectedKubernetesCluster'
    ClusterOrchestratorConfig:
      type: object
      description: Configuration for cluster orchestrator
      required:
        - cluster_id
        - base_on_demand_capacity
        - distribution_strategy
        - on_demand_split
        - spot_distribution
        - spot_split
        - consolidation
      properties:
        cluster_id:
          type: string
          description: >-
            Identifier of the Orchestrator of the cluster, available in list
            response and onboard response
        base_on_demand_capacity:
          type: integer
          description: Base capacity for on-demand instances
          minimum: 0
        distribution_strategy:
          type: string
          description: Strategy for distributing workloads
          enum:
            - CostOptimized
            - LeastInterrupted
        on_demand_split:
          type: integer
          description: Percentage of on-demand split for workloads
          minimum: 0
          maximum: 100
        spot_distribution:
          type: string
          description: Distribution strategy for spot instances
          enum:
            - SpotReady
            - ALL
        spot_split:
          type: integer
          description: Percentage of spot split for workloads
          minimum: 0
          maximum: 100
        node_deletion_delay:
          type: integer
          description: Delay in seconds before node deletion
          minimum: 0
        consolidation:
          type: object
          description: Configuration for node consolidation
          required:
            - policy
            - budgets
            - pod_evictor
          properties:
            policy:
              type: string
              description: Consolidation policy
              enum:
                - WhenEmptyOrUnderutilized
                - WhenEmpty
            after:
              type: string
              description: Time after which consolidation starts
            budgets:
              type: array
              description: List of consolidation budgets
              items:
                type: object
                required:
                  - reasons
                  - nodes
                properties:
                  reasons:
                    type: array
                    description: Reasons for consolidation
                    items:
                      type: string
                      enum:
                        - Empty
                        - Underutilized
                        - Drifted
                  nodes:
                    type: string
                    description: Percentage of nodes to consolidate
                    pattern: ^[0-9]+%$
            node_expiry:
              type: string
              nullable: true
              description: Node expiration time
            pod_evictor:
              type: object
              nullable: true
              description: Configuration for pod eviction
              required:
                - enabled
                - evict_single_replicas
                - minimum_cpu
                - minimum_memory
              properties:
                enabled:
                  type: boolean
                  description: Enable pod eviction
                evict_single_replicas:
                  type: boolean
                  description: Allow eviction of single replica pods
                minimum_cpu:
                  type: integer
                  description: Minimum CPU percentage threshold for eviction
                  minimum: 0
                  maximum: 100
                minimum_memory:
                  type: integer
                  description: Minimum memory percentage threshold for eviction
                  minimum: 0
                  maximum: 100
        reverse_fallback:
          type: object
          nullable: true
          description: Configuration for reverse fallback strategy
    LandingPageResponse:
      type: object
      required:
        - ts
        - success
        - response
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
          example: 1747338580
        success:
          type: boolean
          description: Indicates if the request was successful
          example: true
        errors:
          type: array
          items:
            type: string
          description: Error messages if any
          example: null
        response:
          type: array
          description: List of cloud accounts with their commitment details
          items:
            $ref: '#/components/schemas/CloudAccountCommitment'
    CloudAccountCommitment:
      type: object
      required:
        - provider_id
        - name
        - cloud_account_id
        - connector_status
        - services
      properties:
        provider_id:
          type: string
          description: Cloud provider account ID
          example: '101852341822'
        name:
          type: string
          description: Display name of the cloud account
          example: Master Payer CCM
        cloud_account_id:
          type: string
          description: Unique identifier for the cloud account
          example: Master_Payer_CCM
        connector_status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - UNKNOWN
          description: Status of the connector (SUCCESS, FAILURE, UNKNOWN)
          example: FAILURE
        last_ping:
          type: string
          format: date-time
          description: Last time the connector was pinged
          example: '2025-05-15T03:01:49-07:00'
        services:
          type: array
          description: List of services with their commitment details
          items:
            $ref: '#/components/schemas/CommitmentService'
    CommitmentService:
      type: object
      required:
        - name
        - is_enabled
        - coverage
        - target_coverage
        - annualized_savings
      properties:
        name:
          type: string
          description: Name of the service
          example: Amazon Elastic Compute Cloud - Compute
        is_enabled:
          type: boolean
          description: Whether the service is enabled for commitment orchestration
          example: true
        coverage:
          type: number
          format: double
          description: Current coverage percentage
          example: 41.422
        target_coverage:
          type: number
          format: double
          description: Target coverage percentage
          example: 85
        annualized_savings:
          type: string
          description: Annualized savings amount as a string
          example: '417217.58'
    PaginationInput:
      type: object
      properties:
        limit:
          type: integer
          maximum: 100
          example: 20
        page:
          type: integer
          example: 1
          maximum: 100
    EventsFilter:
      type: object
      properties:
        events:
          type: array
          items:
            type: string
        group_by:
          type: string
    EventLogsSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            total:
              type: integer
            pages:
              type: integer
            events:
              type: array
              items:
                $ref: '#/components/schemas/EventResponse'
    EventResponse:
      type: object
      properties:
        id:
          type: integer
        cloud_account_id:
          type: string
        account_id:
          type: string
        transaction_id:
          type: string
        event_type:
          type: string
        region:
          type: string
        category:
          type: string
        status:
          type: string
        created_at:
          type: string
          example: '2023-07-14T00:59:00.619568Z'
        updated_at:
          type: string
          example: '2023-07-14T00:59:00.619568Z'
        metadata:
          type: object
        description:
          type: string
    EventsChartsSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            total:
              type: integer
            pages:
              type: integer
            events:
              type: array
              items:
                $ref: '#/components/schemas/ChartResponse'
    ChartResponse:
      type: object
      properties:
        date:
          type: string
          example: '2023-07-14T00:59:00.619568Z'
        count:
          type: integer
        event_type:
          type: string
    AutoCUDSetup:
      type: object
      properties:
        account_id:
          type: string
        cloud_account_id:
          type: string
        enabled:
          type: boolean
        config:
          type: object
          items:
            $ref: '#/components/schemas/AutoCUDConfig'
    AutoCUDConfig:
      type: object
      properties:
        exclusion_list:
          type: array
          items:
            $ref: '#/components/schemas/ExclusionEntry'
        excluded_cloud_accounts:
          type: array
          items:
            type: string
        total_coverage:
          type: integer
          minimum: 0
          maximum: 1
      required:
        - total_coverage
    InstanceTypesPayload:
      type: object
      properties:
        instance_families:
          type: array
          items:
            type: string
        excluded_cloud_accounts:
          type: array
          items:
            type: string
        regions:
          type: array
          items:
            type: string
    ExclusionEntry:
      type: object
      properties:
        instance_type:
          type: string
          example: t2.micro
        region:
          type: string
          example: us-east-1
    ApprovalPayload:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/ApprovalAction'
    ApprovalAction:
      type: object
      properties:
        id:
          type: integer
          example: 13
          description: ID of the event being approved or rejected
        status:
          type: string
          example: APPROVED
          enum:
            - APPROVED
            - REJECTED
    ApprovalEvent:
      type: object
      properties:
        id:
          type: integer
        category:
          type: string
        cloud_account_id:
          type: string
        account_id:
          type: string
        evaluated_at:
          type: string
        metadata:
          type: object
          description: Map of key and value with data specific to the event type
    ApprovalEventSummary:
      type: object
      properties:
        savings_potential:
          type: number
        event_count:
          type: integer
        event_type:
          type: string
        event_status:
          type: string
    SetupValidateSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            savings_plan_max_percentage:
              type: integer
              maximum: 1
              minimum: 0
    SetupInstanceTypesSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            content:
              type: array
              items:
                $ref: '#/components/schemas/ListInstanceTypesContent'
    ListInstanceTypesContent:
      type: object
      properties:
        compute_spend:
          type: number
        coverage_percentage:
          type: number
        region:
          type: string
        instance_type:
          type: string
    ListMasterSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            data:
              type: object
              properties:
                content:
                  type: array
                  items:
                    $ref: '#/components/schemas/ListMasterContent'
    ListMasterContent:
      type: object
      properties:
        connector:
          $ref: '#/components/schemas/LwCOConnector'
    LwCOConnector:
      type: object
      properties:
        accountIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        type:
          type: string
        spec:
          type: object
    ListSetupsSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: array
          items:
            $ref: '#/components/schemas/AutoCUDSetup'
    GenericSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
    ApprovalEventsSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            total:
              type: integer
            pages:
              type: integer
            events:
              type: array
              items:
                $ref: '#/components/schemas/ApprovalEvent'
    ApprovalOverviewSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: object
          properties:
            result:
              type: array
              items:
                $ref: '#/components/schemas/ApprovalEventSummary'
    ListChildAccountsSuccessResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation is successful
        errors:
          type: string
          description: Specifies the error if the operation failed
        response:
          type: array
          items:
            $ref: '#/components/schemas/KeyValuePair'
    KeyValuePair:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
    SavingsOverviewResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          properties:
            overall_savings:
              type: number
              format: double
              description: Total savings amount
            managed_savings_total:
              type: number
              format: double
              description: Total managed savings
            unmanaged_savings_total:
              type: number
              format: double
              description: Total unmanaged savings
            savings_plans:
              type: object
              properties:
                managed_savings:
                  $ref: '#/components/schemas/SavingsDetails'
                unmanaged_savings:
                  $ref: '#/components/schemas/SavingsDetails'
                sp_total:
                  type: number
                  format: double
                  description: Total savings plan amount
                sp_percentage:
                  type: number
                  format: double
                  description: Savings plan percentage
            reserved_instances:
              type: object
              properties:
                managed_savings:
                  $ref: '#/components/schemas/SavingsDetails'
                unmanaged_savings:
                  $ref: '#/components/schemas/SavingsDetails'
                ri_total:
                  type: number
                  format: double
                  description: Total reserved instance savings
                ri_percentage:
                  type: number
                  format: double
                  description: Reserved instance savings percentage
    SavingsDetails:
      type: object
      properties:
        total:
          type: number
          format: double
          description: Total amount of savings
        percentage:
          type: number
          format: double
          description: Percentage of savings
    SavingsDetailResponse:
      type: object
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
        success:
          type: boolean
          description: Indicates whether the request was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          additionalProperties:
            type: object
            properties:
              table:
                type: object
                properties:
                  total:
                    type: number
                    format: double
                    description: Total savings amount
                  percentage:
                    type: number
                    format: float
                    description: Percentage savings
                  trend:
                    type: number
                    format: float
                    description: Trend in savings percentage
                    nullable: true
              chart:
                type: array
                items:
                  type: object
                  properties:
                    date:
                      type: string
                      format: date-time
                      description: Date of the savings data
                    savings:
                      type: number
                      format: double
                      description: Savings amount for the date
    SpendsDetailResponse:
      type: object
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
        success:
          type: boolean
          description: Indicates whether the request was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          additionalProperties:
            type: object
            properties:
              table:
                type: object
                properties:
                  total_spend:
                    type: number
                    format: double
                    description: Total savings amount
                  service:
                    type: string
                    description: AWS Service name
              chart:
                type: array
                items:
                  type: object
                  properties:
                    date:
                      type: string
                      format: date-time
                      description: Date of the spend data
                    spend_amount:
                      type: number
                      format: double
                      description: Spend amount for the date
    SavingsRateResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          properties:
            effective_savings_rate:
              type: number
              format: double
              description: Effective savings rate percentage.
            total_spend_percentage:
              type: number
              format: double
              description: Total spend percentage.
    UtilizationOverviewResponse:
      type: object
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: object
          nullable: true
          description: Error details, if any
        response:
          type: object
          properties:
            overall_percentage:
              type: number
              format: float
              description: Overall utilization percentage
            overall_managed_percentage:
              type: number
              format: float
              description: Managed utilization percentage
            overall_unmanaged_percentage:
              type: number
              format: float
              description: Unmanaged utilization percentage
            reservations:
              $ref: '#/components/schemas/ReservationsData'
            savings_plans:
              $ref: '#/components/schemas/SavingsPlansData'
    ReservationsData:
      type: object
      properties:
        percentage:
          type: number
          format: float
          description: Reservation utilization percentage
        managed:
          type: object
          properties:
            utilization_percentage:
              type: number
              format: float
              description: Managed reservation utilization percentage
        unmanaged:
          type: object
          properties:
            utilization_percentage:
              type: number
              format: float
              description: Unmanaged reservation utilization percentage
    SavingsPlansData:
      type: object
      properties:
        percentage:
          type: number
          format: float
          description: Savings plans utilization percentage
        managed:
          type: object
          properties:
            utilization_percentage:
              type: number
              format: float
              description: Managed savings plans utilization percentage
        unmanaged:
          type: object
          properties:
            utilization_percentage:
              type: number
              format: float
              description: Unmanaged savings plans utilization percentage
    UtilizationOverviewRequestFilters:
      type: object
      properties:
        instance_families:
          type: array
          items:
            type: string
          description: List of instance families
        regions:
          type: array
          items:
            type: string
          description: List of regions to filter by
        cloud_account_ids:
          type: array
          items:
            type: string
          description: List of cloud account IDs to filter by
        service:
          type: string
          enum:
            - Amazon Elastic Compute Cloud - Compute
            - Amazon Relational Database Service
    ApprovalsOverviewRequestFilters:
      type: object
      properties:
        regions:
          type: array
          items:
            type: string
          description: List of regions to filter by
        cloud_account_ids:
          type: array
          items:
            type: string
          description: List of cloud account IDs to filter by
        service:
          type: string
          enum:
            - Amazon Elastic Compute Cloud - Compute
            - Amazon Relational Database Service
    SpendDetailed:
      type: object
      properties:
        value:
          type: number
          format: double
          description: Cost value
        percentage:
          type: number
          format: double
          description: Cost value as a percentage
    SpendBreakdownResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          properties:
            total:
              type: number
              format: double
              description: Total spend value in dollars.
            trend:
              type: number
              format: double
              nullable: true
              description: >-
                Trend in spend value compared to the previous period (in
                percentage).
            ondemand:
              $ref: '#/components/schemas/SpendDetailed'
            savings_plans:
              $ref: '#/components/schemas/SpendDetailed'
            reserved_instances:
              $ref: '#/components/schemas/SpendDetailed'
            unused_commitments:
              $ref: '#/components/schemas/SpendDetailed'
    SpendBreakdownFilter:
      type: object
      properties:
        regions:
          type: array
          items:
            type: string
        instance_types:
          type: array
          items:
            type: string
        cloud_account_ids:
          type: array
          items:
            type: string
        service:
          type: string
          enum:
            - Amazon Elastic Compute Cloud - Compute
            - Amazon Relational Database Service
    CoverageDetailed:
      type: object
      properties:
        value:
          type: number
          format: double
          description: Cost value
        percentage:
          type: number
          format: double
          description: Cost value as a percentage
    ComputeCoverageResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Specifies if the operation was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          properties:
            total_spend:
              type: number
              format: double
              description: Total spend value in dollars
            total_coverage_percentage:
              type: number
              format: double
              description: Percentage of the total spend value in dollars
            average_coverage_percentage:
              type: number
              format: double
              description: Average Percentage of the total spend value in dollars
            ondemand:
              $ref: '#/components/schemas/CoverageDetailed'
            savings_plans:
              $ref: '#/components/schemas/CoverageDetailed'
            reserved_instances:
              $ref: '#/components/schemas/CoverageDetailed'
    CopmputeCoverageFilter:
      type: object
      properties:
        regions:
          type: array
          items:
            type: string
        instance_types:
          type: array
          items:
            type: string
        cloud_account_ids:
          type: array
          items:
            type: string
        service:
          type: string
          enum:
            - Amazon Elastic Compute Cloud - Compute
            - Amazon Relational Database Service
    ComputeCoveragesDetailResponse:
      type: object
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
        success:
          type: boolean
          description: Indicates whether the request was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ComputeCoveragesDetail'
    ComputeCoveragesDetail:
      type: object
      properties:
        table:
          $ref: '#/components/schemas/ComputeCoveragesDetailTable'
        chart:
          type: array
          items:
            $ref: '#/components/schemas/ComputeCoverageChart'
    ComputeCoveragesDetailTable:
      type: object
      properties:
        reservation_cost:
          type: number
          format: double
          nullable: true
          description: Total cost for reserved instances
        total_cost:
          type: number
          format: double
          nullable: true
          description: Total cost including all coverage types
        on_demand_cost:
          type: number
          format: double
          nullable: true
          description: Cost for on-demand instances
        total_hours:
          type: number
          format: double
          nullable: true
          description: Total hours of usage
        total_covered_hours:
          type: number
          format: double
          nullable: true
          description: Total hours covered by RI or SP
        on_demand_hours:
          type: number
          format: double
          nullable: true
          description: Hours billed at on-demand rates
        savings_plan_hours:
          type: number
          format: double
          nullable: true
          description: Hours covered by savings plans
        ri_coverage_hours:
          type: number
          format: double
          nullable: true
          description: Hours covered by reserved instances
        coverage:
          type: number
          format: float
          nullable: true
          description: Coverage percentage
        region:
          type: string
          nullable: true
          description: Region information when grouped by region
        machine_type:
          type: string
          nullable: true
          description: Machine type information when grouped by machine type
        trend:
          type: number
          format: float
          nullable: true
          description: Trend in coverage percentage compared to previous period
        spot_cost:
          type: number
          format: double
          nullable: true
          description: Cost for spot instances
        spot_hours:
          type: number
          format: double
          nullable: true
          description: Hours covered by spot instances
    ComputeCoverageChart:
      type: object
      properties:
        date:
          type: string
          format: date-time
          description: Date for the chart data point
        coverage_cost:
          type: number
          format: double
          description: Coverage cost for the date
    CommitmentUtilizationDetailResponse:
      type: object
      properties:
        ts:
          type: integer
          format: int64
          description: Timestamp of the response
        success:
          type: boolean
          description: Indicates whether the request was successful
        errors:
          type: string
          description: Error message, if any
        response:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CommitmentUtlizationsDetail'
          description: >-
            Response object containing savings plans and reserved instances
            utilization details
    CommitmentUtlizationsDetail:
      type: object
      properties:
        table:
          $ref: '#/components/schemas/CommitmentUtilizationsDetailTable'
        chart:
          type: array
          items:
            $ref: '#/components/schemas/CommitmentUtilizationChart'
    CommitmentUtilizationsDetailTable:
      type: object
      properties:
        compute_spend:
          type: number
          format: double
          description: Total compute spend amount
        utilization:
          type: number
          format: double
          description: Utilization amount
        percentage:
          type: number
          format: double
          description: Utilization percentage
        trend:
          type: number
          format: double
          nullable: true
          description: Trend in utilization percentage compared to previous period
    CommitmentUtilizationChart:
      type: object
      properties:
        date:
          type: string
          format: date-time
          description: Date for the utilization data point
        utilization_percentage:
          type: number
          format: double
          description: Utilization percentage for the date
    RIInventoryOverviewResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/RIInventoryOverview'
    RIInventoryOverview:
      type: object
      properties:
        total:
          $ref: '#/components/schemas/TotalCount'
        distribution:
          $ref: '#/components/schemas/RIDistribution'
        status:
          $ref: '#/components/schemas/StatusBreakdown'
        actions:
          $ref: '#/components/schemas/ActionsBreakdown'
    TotalCount:
      type: object
      properties:
        purchased:
          type: integer
          description: Total number of purchased RIs
        managed:
          type: integer
          description: Total number of managed RIs
    RIDistribution:
      type: object
      properties:
        reserved:
          $ref: '#/components/schemas/InstanceTypeDistribution'
        managed:
          $ref: '#/components/schemas/InstanceTypeDistribution'
    InstanceTypeDistribution:
      type: object
      properties:
        standard:
          $ref: '#/components/schemas/TypeCount'
        convertible:
          $ref: '#/components/schemas/TypeCount'
    TypeCount:
      type: object
      properties:
        count:
          type: integer
          description: Number of instances of this type
        percentage:
          type: number
          format: float
          description: Percentage of total instances
    StatusBreakdown:
      type: object
      properties:
        expired:
          $ref: '#/components/schemas/StatusCount'
        expiring_soon:
          $ref: '#/components/schemas/StatusCount'
        active:
          $ref: '#/components/schemas/StatusCount'
    ActionsBreakdown:
      type: object
      properties:
        pending_approval:
          $ref: '#/components/schemas/StatusCount'
    StatusCount:
      type: object
      properties:
        count:
          type: integer
          description: Count of items in this status
        label:
          type: string
          description: Display label for the status
    InventoryRIAPIFilter:
      type: object
      properties:
        account_ids:
          type: array
          items:
            type: string
          description: List of provider account IDs
        cloud_account_ids:
          type: array
          items:
            type: string
          description: List of cloud account IDs
        instance_types:
          type: array
          items:
            type: string
          description: List of instance types
        instance_families:
          type: array
          items:
            type: string
          description: List of instance families
        platforms:
          type: array
          items:
            type: string
          description: List of platforms
        tenancy:
          type: array
          items:
            type: string
          description: List of tenancy options
        payment_options:
          type: array
          items:
            type: string
            enum:
              - No Upfront
              - Partial Upfront
              - All Upfront
          description: List of payment options
        terms:
          type: array
          items:
            type: number
            format: float64
          description: List of term lengths in years
        plan_types:
          type: array
          items:
            type: string
            enum:
              - Standard
              - Convertible
          description: List of RI types
        status:
          type: array
          items:
            type: string
            enum:
              - active
              - expired
              - pending
              - retired
          description: List of statuses
        is_harness_managed:
          type: boolean
          nullable: true
          description: Filter by Harness managed status
        service:
          type: string
          description: Service to filter by
        regions:
          type: array
          items:
            type: string
          description: List of regions
    InventorySPAPIFilter:
      type: object
      properties:
        account_ids:
          type: array
          items:
            type: string
          description: List of provider account IDs
        cloud_account_ids:
          type: array
          items:
            type: string
          description: List of cloud account IDs
        instance_families:
          type: array
          items:
            type: string
          description: List of instance families
        payment_options:
          type: array
          items:
            type: string
            enum:
              - No Upfront
              - Partial Upfront
              - All Upfront
          description: List of payment options
        terms:
          type: array
          items:
            type: number
            format: float64
          description: List of term lengths in years
        plan_types:
          type: array
          items:
            type: string
            enum:
              - ComputeSavingsPlans
              - EC2InstanceSavingsPlans
          description: List of Savings Plan types
        status:
          type: array
          items:
            type: string
            enum:
              - active
              - expired
              - pending
              - retired
          description: List of statuses
        is_harness_managed:
          type: boolean
          nullable: true
          description: Filter by Harness managed status
        service:
          type: string
          description: Service to filter by
        regions:
          type: array
          items:
            type: string
          description: List of regions
    SPInventoryOverviewResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/SPInventoryOverview'
    SPInventoryOverview:
      type: object
      properties:
        total:
          $ref: '#/components/schemas/TotalCount'
        distribution:
          $ref: '#/components/schemas/SPDistribution'
        status:
          $ref: '#/components/schemas/StatusBreakdown'
        actions:
          $ref: '#/components/schemas/ActionsBreakdown'
    SPDistribution:
      type: object
      properties:
        purchased:
          $ref: '#/components/schemas/PlanTypeDistribution'
        managed:
          $ref: '#/components/schemas/PlanTypeDistribution'
    PlanTypeDistribution:
      type: object
      properties:
        compute:
          $ref: '#/components/schemas/TypeCount'
        compute_savings_plans:
          $ref: '#/components/schemas/TypeCount'
    ListReservedInstancesRequest:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/PaginationInput'
        filters:
          $ref: '#/components/schemas/InventoryRIAPIFilter'
        sort_by:
          type: string
          description: Field to sort results by
        sort_order:
          type: string
          enum:
            - asc
            - desc
          description: Sort order direction
    ListReservedInstancesResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/ReservedInstancesData'
    ReservedInstancesData:
      type: object
      properties:
        total:
          type: integer
          format: int64
          description: Total number of Reserved Instances
        pages:
          type: integer
          format: int64
          description: Total number of pages
        items:
          type: array
          items:
            $ref: '#/components/schemas/ReservedInstance'
        pagination:
          $ref: '#/components/schemas/PaginationInput'
    ReservedInstance:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the Reserved Instance
        type:
          type: string
          description: Type of Reserved Instance (e.g., Convertible)
        count:
          type: integer
          description: Number of instances in this reservation
        scope:
          type: string
          description: Scope of the reservation (e.g., Region)
        availability_zone:
          type: string
          description: Availability zone if applicable
        start_date:
          type: string
          format: date-time
          description: Start date of the reservation
        expires_on:
          type: string
          format: date-time
          description: Expiration date of the reservation
        term:
          type: string
          description: Term length of the reservation
        avg_utilization:
          type: number
          format: float
          description: Average utilization percentage
        status:
          type: string
          description: Current status of the reservation
        is_harness_managed:
          type: boolean
          description: Indicates if the reservation is managed by Harness
        is_seed_ri:
          type: boolean
          description: Indicates if this is a seed reservation
    ListSavingsPlansRequest:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/PaginationInput'
        filters:
          $ref: '#/components/schemas/InventorySPAPIFilter'
        sort_by:
          type: string
          description: Field to sort results by
        sort_order:
          type: string
          enum:
            - asc
            - desc
          description: Sort order direction
    ListSavingsPlansResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/SavingsPlansDataResponse'
    SavingsPlansDataResponse:
      type: object
      properties:
        total:
          type: integer
          format: int64
          description: Total number of Savings Plans
        pages:
          type: integer
          format: int64
          description: Total number of pages
        items:
          type: array
          items:
            $ref: '#/components/schemas/SavingsPlan'
        pagination:
          $ref: '#/components/schemas/PaginationInput'
    SavingsPlan:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the Savings Plan
        type:
          type: string
          description: Type of Savings Plan
        instance_family:
          type: string
          description: Instance family if applicable
        region:
          type: string
          description: Region for the Savings Plan
        commitment:
          type: number
          format: double
          description: Hourly commitment amount
        start_date:
          type: string
          format: date-time
          description: Start date of the Savings Plan
        expires_on:
          type: string
          format: date-time
          description: Expiration date of the Savings Plan
        status:
          type: string
          description: Current status of the Savings Plan
        is_harness_managed:
          type: boolean
          description: Indicates if the Savings Plan is managed by Harness
        payment_option:
          type: string
          description: Payment option for the Savings Plan
        plan_type:
          type: string
          description: Type of the Savings Plan
        upfront_fee:
          type: number
          format: double
          description: Upfront fee amount if applicable
    ReservedInstanceDetailsResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/ReservedInstanceDetail'
    ReservedInstanceDetail:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the Reserved Instance
        instance_type:
          type: string
          description: Type of EC2 instance
        scope:
          type: string
          description: Scope of the reservation (e.g., region)
        instance_count:
          type: integer
          description: Number of instances in this reservation
        availability_zone:
          type: string
          description: Availability zone if applicable
        platform:
          type: string
          description: Operating system platform
        tenancy:
          type: string
          description: Instance tenancy (e.g., Shared, Dedicated)
        type:
          type: string
          description: Type of Reserved Instance (e.g., Convertible)
        utilization:
          type: number
          format: float
          description: Current utilization percentage
        status:
          type: string
          description: Current status of the reservation
        start_date:
          type: string
          format: date-time
          description: Start date of the reservation
        expiry_date:
          type: string
          format: date-time
          description: Expiration date of the reservation
        purchase_term_years:
          type: string
          description: Term length of the reservation
        payment_option:
          type: string
          description: Payment option selected
        upfront_fee:
          type: number
          format: double
          description: Upfront payment amount
        usage_price:
          type: number
          format: double
          description: Usage price per hour
        hourly_cost:
          type: number
          format: double
          description: Total hourly cost
        purchase_date:
          type: string
          format: date-time
          description: Date when the reservation was purchased
        previously_was:
          $ref: '#/components/schemas/PreviousStateInfo'
        approval_info:
          $ref: '#/components/schemas/ApprovalInfo'
        is_harness_managed:
          type: boolean
          description: Indicates if the reservation is managed by Harness
    PreviousStateInfo:
      type: object
      properties:
        instance_type:
          type: string
          description: Previous instance type
        platform:
          type: string
          description: Previous platform
        tenancy:
          type: string
          description: Previous tenancy
    ApprovalInfo:
      type: object
      properties:
        approved_by:
          type: string
          description: User who approved the change
        approved_at:
          type: string
          format: date-time
          description: Timestamp of approval
        status:
          type: string
          description: Current approval status
    SavingsPlanDetailsResponse:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
        success:
          type: boolean
          description: Indicates if the request was successful
        errors:
          type: string
          nullable: true
          description: Error details, if any
        response:
          $ref: '#/components/schemas/SavingsPlanDetail'
    ApprovalsListRequestV2:
      type: object
      properties:
        pagination:
          type: object
          properties:
            limit:
              type: integer
              description: Number of items per page
              example: 15
            page:
              type: integer
              description: Page number (starting from 1)
              example: 1
        service:
          type: string
          description: Filter by service name
          example: Amazon Elastic Compute Cloud - Compute
        statuses:
          type: array
          description: Filter by event statuses
          items:
            type: string
            enum:
              - PENDING
              - COMPLETED
              - EXPIRED
              - REJECTED
              - QUEUED
              - APPROVED
              - APPROVAL_PENDING
          example:
            - COMPLETED
            - APPROVED
        cloud_account_id:
          type: string
          description: Filter by cloud account ID
          example: ''
        event_types:
          type: array
          description: Filter by event types
          items:
            type: string
            enum:
              - Reserved Instance Exchange
              - Atom RI Purchase
              - Savings Plan Purchase
              - RDS Reserved Instance Purchase
          example: []
        regions:
          type: array
          description: Filter by regions
          items:
            type: string
          example:
            - ap-southeast-1
    ApprovalsListResponseV2:
      type: object
      properties:
        ts:
          type: integer
          description: Response timestamp
          example: 1755058271
        success:
          type: boolean
          description: Indicates if the request was successful
          example: true
        errors:
          type: array
          description: List of errors if any
          items:
            type: object
          nullable: true
          example: null
        response:
          type: object
          properties:
            total:
              type: integer
              description: Total number of events matching the criteria
              example: 112
            pages:
              type: integer
              description: Total number of pages
              example: 2
            events:
              type: array
              description: List of approval events
              items:
                $ref: '#/components/schemas/ApprovalEventV2'
    ApprovalEventV2:
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier for the event
          example: 786
        category:
          type: string
          description: Category of the event
          example: ExpandSeedReservation
        cloud_account_id:
          type: string
          description: Cloud account identifier
          example: DoNotDelete_aws_india_master
        cloud_account_name:
          type: string
          description: Cloud account name
          example: DoNotDelete_aws_india_master_name
        account_id:
          type: string
          description: Harness account identifier
          example: zEaak-FLS425IEO7OLzMUg
        evaluated_at:
          type: string
          format: date-time
          description: Timestamp when the event was evaluated
          example: '2024-12-18T04:38:35.19815Z'
        status:
          type: string
          description: Status of the event
          enum:
            - PENDING
            - COMPLETED
            - EXPIRED
            - REJECTED
          example: EXPIRED
        potential_savings:
          type: number
          format: float
          description: Potential savings from the event
          example: 15.840000000000003
        potential_spend:
          type: number
          format: float
          description: Potential spend from the event
          example: 70.56
        name:
          type: string
          description: Name of the event
          example: Reserved Instance Exchange
        metadata:
          type: object
          description: Additional metadata for the event
          additionalProperties: true
          example:
            hourly spend: 0.076
            instances: 1
            payment option: No Upfront
            platform: Linux/UNIX
            source instance type: t3.nano
            target instance type: t2.nano
            tenancy: Shared
            source_ri:
              instance_type: t3.nano
              instances: 1
              platform: Linux
              region: ap-southeast-1
              tenancy: Shared
            target_ri:
              expiry_date: '2024-12-21T06:53:31Z'
              instance_type: t2.nano
              instances: 1
              platform: Linux/UNIX
              region: ap-southeast-1
              tenancy: Shared
    SavingsPlanDetail:
      type: object
      properties:
        account_info:
          $ref: '#/components/schemas/AccountInfo'
          description: Associated account information
        instance_family:
          type: string
          description: Instance family if applicable
        region:
          type: string
          description: Region for the Savings Plan
        platform:
          type: string
          description: Operating system platform
        type:
          type: string
          description: Type of Savings Plan
        mtd_utilization:
          type: number
          format: double
          description: Month-to-date utilization percentage
        status:
          type: string
          description: Current status of the Savings Plan
        start_date:
          type: string
          format: date-time
          description: Start date of the Savings Plan
        end_date:
          type: string
          format: date-time
          description: End date of the Savings Plan
        term:
          type: string
          description: Term length of the Savings Plan
        payment_option:
          type: string
          description: Payment option selected
        commitment:
          type: number
          format: double
          description: Hourly commitment amount
        mtd_commitment:
          type: number
          format: double
          description: Month-to-date commitment amount
        upfront_fee:
          type: number
          format: double
          description: Upfront payment amount
        hourly_cost:
          type: number
          format: double
          description: Hourly cost amount
        mtd_net_savings:
          type: number
          format: double
          description: Month-to-date net savings amount
        approval_info:
          $ref: '#/components/schemas/SPApprovalInfo'
          description: Approval information if applicable
        is_harness_managed:
          type: boolean
          description: Indicates if the Savings Plan is managed by Harness
    AccountInfo:
      type: object
      properties:
        account_id:
          type: string
          description: Account identifier
        account_name:
          type: string
          description: Name of the account
        id:
          type: string
          description: Unique identifier (ARN) of the Savings Plan
    SPApprovalInfo:
      type: object
      properties:
        approved_by:
          type: string
          description: User who approved the Savings Plan
        approved_at:
          type: string
          description: Timestamp of approval
        status:
          type: string
          description: Current approval status
    AuditError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
        metadata:
          $ref: '#/components/schemas/AuditErrorMetadata'
      description: This is Error entity as defined in Harness
    AuditErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    AddCollaboratorAuditEventData:
      required:
        - source
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            source:
              $ref: '#/components/schemas/Source'
    AuditEvent:
      required:
        - action
        - authenticationInfo
        - insertId
        - module
        - resource
        - resourceScope
        - timestamp
      type: object
      properties:
        auditId:
          type: string
          description: Identifier of the Audit.
        insertId:
          type: string
          description: Insert Identifier of the Audit.
        resourceScope:
          $ref: '#/components/schemas/AuditResourceScope'
        httpRequestInfo:
          $ref: '#/components/schemas/AuditHttpRequestInfo'
        requestMetadata:
          $ref: '#/components/schemas/AuditRequestMetadata'
        timestamp:
          type: integer
          format: int64
        authenticationInfo:
          $ref: '#/components/schemas/AuthenticationInfo'
        impersonatingAuthenticationInfo:
          $ref: '#/components/schemas/AuthenticationInfo'
        module:
          type: string
          description: Type of module associated with the Audit.
          enum:
            - CD
            - CI
            - CV
            - CF
            - CE
            - STO
            - CHAOS
            - AI_TEST_AUTOMATION
            - SRM
            - IACM
            - CET
            - IDP
            - CODE
            - SSCA
            - CORE
            - PMS
            - TEMPLATESERVICE
            - RMG
            - GOVERNANCE
            - PLATFORM
            - SEI
            - HAR
            - DevopsEssentials
            - FME
            - DBOPS
            - AI_AGENT_MLOPS
        environment:
          $ref: '#/components/schemas/AuditEnvironment'
        resource:
          $ref: '#/components/schemas/AuditResource'
        action:
          type: string
          description: Action type associated with the Audit.
          enum:
            - CREATE
            - UPDATE
            - RESTORE
            - DELETE
            - FORCE_DELETE
            - UPSERT
            - INVITE
            - RESEND_INVITE
            - REVOKE_INVITE
            - ADD_COLLABORATOR
            - REMOVE_COLLABORATOR
            - CREATE_TOKEN
            - REVOKE_TOKEN
            - DELETE_TOKEN
            - LOGIN
            - LOGIN2FA
            - UNSUCCESSFUL_LOGIN
            - ADD_MEMBERSHIP
            - REMOVE_MEMBERSHIP
            - ERROR_BUDGET_RESET
            - START
            - END
            - STAGE_START
            - STAGE_END
            - PAUSE
            - RESUME
            - ABORT
            - TIMEOUT
            - SIGNED_EULA
            - ROLE_ASSIGNMENT_CREATED
            - ROLE_ASSIGNMENT_UPDATED
            - ROLE_ASSIGNMENT_DELETED
            - MOVE
            - ENABLED
            - DISABLED
            - DISMISS_ANOMALY
            - RERUN
            - BYPASS
            - STABLE_VERSION_CHANGED
            - SYNC_START
            - START_IMPERSONATION
            - END_IMPERSONATION
            - MOVE_TO_GIT
            - FREEZE_BYPASS
            - EXPIRED
            - FORCE_PUSH
        auditEventData:
          $ref: '#/components/schemas/AuditEventData'
        internalInfo:
          type: object
          additionalProperties:
            type: string
            description: Internal information.
          description: Internal information.
      description: This has the AuditEvent details defined in Harness.
    AuditEventData:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    AuthenticationInfo:
      required:
        - principal
      type: object
      properties:
        principal:
          $ref: '#/components/schemas/AuditPrincipal'
        labels:
          type: object
          additionalProperties:
            type: string
            description: labels
          description: labels
      description: This has the AuthenticationInfo details defined in Harness.
    ChaosAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            eventModule:
              type: string
    AuditEnvironment:
      required:
        - identifier
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - PreProduction
            - Production
        identifier:
          type: string
      description: List of Environments
    FeatureFlagAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            environment:
              type: string
    GitopsAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            agentId:
              type: string
    AuditHttpRequestInfo:
      type: object
      properties:
        requestMethod:
          type: string
    InvitationSource:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/Source'
    NodeExecutionEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            accountIdentifier:
              type: string
            orgIdentifier:
              type: string
            projectIdentifier:
              type: string
            pipelineIdentifier:
              type: string
            stageIdentifier:
              type: string
            stageType:
              type: string
            planExecutionId:
              type: string
            runSequence:
              type: integer
              format: int32
            nodeExecutionId:
              type: string
            status:
              type: string
            triggeredBy:
              $ref: '#/components/schemas/TriggeredByInfoAuditDetails'
            startTs:
              type: integer
              format: int64
            endTs:
              type: integer
              format: int64
    OpaAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            eventModule:
              type: string
    PageResponseAuditEvent:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/AuditEvent'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    AuditPrincipal:
      required:
        - identifier
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - USER
            - SYSTEM
            - API_KEY
            - SERVICE_ACCOUNT
        identifier:
          type: string
      description: List of Principals
    AuditRequestMetadata:
      type: object
      properties:
        clientIP:
          type: string
    AuditResource:
      required:
        - identifier
        - type
      type: object
      properties:
        type:
          type: string
          description: Resource Type
        identifier:
          type: string
          description: Resource Identifier
        labels:
          type: object
          additionalProperties:
            type: string
            description: Map of additional information about the Resource.
          description: Map of additional information about the Resource.
      description: This contains info about Resource saved as a part of Audit Event
    AuditResourceScope:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Identifier of Account
        orgIdentifier:
          type: string
          description: Identifier of Organization
        projectIdentifier:
          type: string
          description: Identifier of Project
        labels:
          type: object
          additionalProperties:
            type: string
            description: Additional information about the Resource Scope
          description: Additional information about the Resource Scope
      description: This has scope details for the resource defined in Harness.
    ResponseDTOPageResponseAuditEvent:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseAuditEvent'
        metaData:
          type: object
        correlationId:
          type: string
    AuditRoleBinding:
      type: object
      properties:
        roleIdentifier:
          type: string
        resourceGroupIdentifier:
          type: string
    ServiceDiscoveryAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            eventModule:
              type: string
    Source:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    TemplateEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            comments:
              type: string
            templateUpdateEventType:
              type: string
            newStableVersion:
              type: string
            oldStableVersion:
              type: string
    TriggeredByInfoAuditDetails:
      type: object
      properties:
        type:
          type: string
        identifier:
          type: string
        extraInfo:
          type: object
          additionalProperties:
            type: string
    UserInvitationAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            roleBindings:
              type: array
              items:
                $ref: '#/components/schemas/AuditRoleBinding'
    UserInviteAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            roleBindings:
              type: array
              items:
                $ref: '#/components/schemas/AuditRoleBinding'
    UserMembershipAuditEventData:
      required:
        - type
      type: object
      allOf:
        - $ref: '#/components/schemas/AuditEventData'
        - type: object
          properties:
            mechanism:
              type: string
    AuditFilterProperties:
      type: object
      properties:
        scopes:
          type: array
          description: List of Resource Scopes
          items:
            $ref: '#/components/schemas/AuditResourceScope'
        resources:
          type: array
          description: List of Resources
          items:
            $ref: '#/components/schemas/AuditResource'
        includeChildScopes:
          type: boolean
          description: Include audits from child scopes
          default: true
        modules:
          type: array
          description: List of Module Types
          items:
            type: string
            description: List of Module Types
            enum:
              - CD
              - CI
              - CV
              - CF
              - CE
              - STO
              - CHAOS
              - AI_TEST_AUTOMATION
              - SRM
              - IACM
              - CET
              - IDP
              - CODE
              - SSCA
              - CORE
              - PMS
              - TEMPLATESERVICE
              - RMG
              - GOVERNANCE
              - PLATFORM
              - SEI
              - HAR
              - DevopsEssentials
              - FME
              - DBOPS
              - AI_AGENT_MLOPS
        actions:
          type: array
          description: List of Actions
          items:
            type: string
            description: List of Actions
            enum:
              - CREATE
              - UPDATE
              - RESTORE
              - DELETE
              - FORCE_DELETE
              - UPSERT
              - INVITE
              - RESEND_INVITE
              - REVOKE_INVITE
              - ADD_COLLABORATOR
              - REMOVE_COLLABORATOR
              - CREATE_TOKEN
              - REVOKE_TOKEN
              - DELETE_TOKEN
              - LOGIN
              - LOGIN2FA
              - UNSUCCESSFUL_LOGIN
              - ADD_MEMBERSHIP
              - REMOVE_MEMBERSHIP
              - ERROR_BUDGET_RESET
              - START
              - END
              - STAGE_START
              - STAGE_END
              - PAUSE
              - RESUME
              - ABORT
              - TIMEOUT
              - SIGNED_EULA
              - ROLE_ASSIGNMENT_CREATED
              - ROLE_ASSIGNMENT_UPDATED
              - ROLE_ASSIGNMENT_DELETED
              - MOVE
              - ENABLED
              - DISABLED
              - DISMISS_ANOMALY
              - RERUN
              - BYPASS
              - STABLE_VERSION_CHANGED
              - SYNC_START
              - START_IMPERSONATION
              - END_IMPERSONATION
              - MOVE_TO_GIT
              - FREEZE_BYPASS
              - EXPIRED
              - FORCE_PUSH
        environments:
          type: array
          description: List of Environments
          items:
            $ref: '#/components/schemas/AuditEnvironment'
        principals:
          type: array
          description: List of Principals
          items:
            $ref: '#/components/schemas/AuditPrincipal'
        staticFilter:
          type: string
          description: Pre-defined Filter
          enum:
            - EXCLUDE_LOGIN_EVENTS
            - EXCLUDE_SYSTEM_EVENTS
        startTime:
          type: integer
          description: >-
            Used to specify a start time for retrieving Audit events that
            occurred at or after the time indicated.
          format: int64
        endTime:
          type: integer
          description: >-
            Used to specify the end time for retrieving Audit events that
            occurred at or before the time indicated.
          format: int64
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Audit
      description: >-
        This contains the Audit Event filter information. This is used to filter
        Audit Events depending on the information provided.
    ResponseDTOSliceResponseAuditEvent:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SliceResponseAuditEvent'
        metaData:
          type: object
        correlationId:
          type: string
    SliceResponseAuditEvent:
      type: object
      properties:
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/AuditEvent'
        pageIndex:
          type: integer
          format: int64
        hasNext:
          type: boolean
        pageToken:
          type: string
    ResponseDTOYamlDiffRecord:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/YamlDiffRecord'
        metaData:
          type: object
        correlationId:
          type: string
    YamlDiffRecord:
      type: object
      properties:
        oldYaml:
          type: string
          description: Previous YAML version
        newYaml:
          type: string
          description: Current YAML version
      description: This has the YAML Difference of the record.
    TemplateError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
            - TRANSACTION_ABORTED
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/ResponseMessage'
        metadata:
          $ref: '#/components/schemas/TemplateErrorMetadata'
      description: This is Error entity as defined in Harness
    TemplateErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    RefreshResponse:
      type: object
      properties:
        refreshedYaml:
          type: string
      description: This is the view of the RefreshResponse entity defined in Harness
    ResponseDTORefreshResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/RefreshResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RefreshRequestDTO:
      required:
        - yaml
      type: object
      properties:
        yaml:
          type: string
    TemplateEntityGitDetails:
      type: object
      properties:
        valid:
          type: boolean
          description: Indicates if the Entity is valid
        invalidYaml:
          type: string
          description: This has the Git File content if the entity is invalid
      description: This contains Validity Details of the Entity
    TemplateErrorNodeSummary:
      type: object
      properties:
        nodeInfo:
          $ref: '#/components/schemas/TemplateNodeInfo'
        templateInfo:
          $ref: '#/components/schemas/TemplateInfo'
        templateResponse:
          $ref: '#/components/schemas/TemplateTemplateResponse'
        childrenErrorNodes:
          type: array
          items:
            $ref: '#/components/schemas/TemplateErrorNodeSummary'
    TemplateNodeInfo:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        localFqn:
          type: string
    TemplateResponseDTOValidateTemplateInputsResponseDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/ValidateTemplateInputsResponseDTO'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateTemplateResponse:
      required:
        - accountId
        - identifier
        - name
        - yaml
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        yaml:
          type: string
        mergedYaml:
          type: string
        versionLabel:
          type: string
        isStableTemplate:
          type: boolean
          writeOnly: true
        templateEntityType:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
            - ArtifactSource
            - StepGroup
            - Workspace
            - Notification
        childType:
          type: string
        templateScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        version:
          type: integer
          format: int64
        gitDetails:
          $ref: '#/components/schemas/TemplateEntityGitDetails'
        entityValidityDetails:
          $ref: '#/components/schemas/TemplateEntityGitDetails'
        lastUpdatedAt:
          type: integer
          format: int64
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        connectorRef:
          type: string
        icon:
          type: string
        cacheResponseMetadata:
          $ref: '#/components/schemas/CacheResponseMetadata'
        yamlVersion:
          type: string
        bulkReconcileUUID:
          type: string
        hasInsert:
          type: boolean
        isInlineHCEntity:
          type: boolean
        stableTemplate:
          type: boolean
      description: This contains details of the Template Response
    ResponseDTOTemplateMergeResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TemplateMergeResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateMergeResponse:
      type: object
      properties:
        mergedPipelineYaml:
          type: string
        templateReferenceSummaries:
          type: array
          items:
            $ref: '#/components/schemas/TemplateTemplateReferenceSummary'
        mergedPipelineYamlWithTemplateRef:
          type: string
        cacheResponseMetadata:
          $ref: '#/components/schemas/CacheResponseMetadata'
        processedYamlVersion:
          type: string
        templateMetadata:
          $ref: '#/components/schemas/TemplateMetadata'
      description: This is the view of the TemplateMergeResponse entity defined in Harness
    TemplateMetadata:
      type: object
      properties:
        hasInsert:
          type: boolean
      description: This is the view of the TemplateMetadata entity defined in Harness
    TemplateTemplateReferenceSummary:
      type: object
      properties:
        fqn:
          type: string
        templateIdentifier:
          type: string
        versionLabel:
          type: string
        scope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        stableTemplate:
          type: boolean
        moduleInfo:
          uniqueItems: true
          type: array
          items:
            type: string
    TemplateApplyRequestDTO:
      required:
        - originalEntityYaml
      type: object
      properties:
        originalEntityYaml:
          type: string
        checkForAccess:
          type: boolean
        getMergedYamlWithTemplateField:
          type: boolean
        getOnlyFileContent:
          type: boolean
        yamlVersion:
          type: string
    TemplateDeclaration:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        reserved:
          type: boolean
        fullNameBytes:
          $ref: '#/components/schemas/ByteString'
        type:
          type: string
        number:
          type: integer
          format: int32
        fullName:
          type: string
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplateDeclaration'
        parserForType:
          $ref: '#/components/schemas/ParserDeclaration'
        serializedSize:
          type: integer
          format: int32
        repeated:
          type: boolean
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TemplateDescriptor:
      type: object
      properties:
        index:
          type: integer
          format: int32
        proto:
          $ref: '#/components/schemas/DescriptorProto'
        options:
          $ref: '#/components/schemas/MessageOptions'
        fullName:
          type: string
        file:
          $ref: '#/components/schemas/FileDescriptor'
        containingType:
          $ref: '#/components/schemas/TemplateDescriptor'
        nestedTypes:
          type: array
          items:
            $ref: '#/components/schemas/TemplateDescriptor'
        enumTypes:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptor'
        fields:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptor'
        oneofs:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptor'
        name:
          type: string
        extendable:
          type: boolean
        realOneofs:
          type: array
          items:
            $ref: '#/components/schemas/OneofDescriptor'
    TemplateGovernanceMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        message:
          type: string
        id:
          type: string
        type:
          type: string
        timestamp:
          type: integer
          format: int64
        initialized:
          type: boolean
        status:
          type: string
        action:
          type: string
        entity:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplateGovernanceMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserGovernanceMetadata'
        serializedSize:
          type: integer
          format: int32
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        deny:
          type: boolean
        idBytes:
          $ref: '#/components/schemas/ByteString'
        detailsCount:
          type: integer
          format: int32
        detailsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/TemplatePolicySetMetadataOrBuilder'
        entityBytes:
          $ref: '#/components/schemas/ByteString'
        actionBytes:
          $ref: '#/components/schemas/ByteString'
        detailsList:
          type: array
          items:
            $ref: '#/components/schemas/TemplatePolicySetMetadata'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TemplatePolicyMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        severity:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        status:
          type: string
        error:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplatePolicyMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicyMetadata'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyId:
          type: string
        policyName:
          type: string
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        denyMessagesCount:
          type: integer
          format: int32
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        updated:
          type: integer
          format: int64
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TemplatePolicySetMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/TemplatePolicySetMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicySetMetadata'
        serializedSize:
          type: integer
          format: int32
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/TemplatePolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    TemplatePolicySetMetadataOrBuilder:
      type: object
      properties:
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        accountId:
          type: string
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgId:
          type: string
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        created:
          type: integer
          format: int64
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        deny:
          type: boolean
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/TemplatePolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/TemplateDescriptor'
        initialized:
          type: boolean
    ResponseDTOTemplateWrapperResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TemplateWrapperResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateWrapperResponse:
      type: object
      properties:
        isValid:
          type: boolean
          writeOnly: true
        templateResponseDTO:
          $ref: '#/components/schemas/TemplateTemplateResponse'
        governanceMetadata:
          $ref: '#/components/schemas/TemplateGovernanceMetadata'
        valid:
          type: boolean
      description: This contains details of the Template Wrapper Response
    ResponseDTOTemplateResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TemplateTemplateResponse'
        metaData:
          type: object
        correlationId:
          type: string
    PageTemplateMetadataSummaryResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int32
        totalElements:
          type: integer
          format: int64
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/TemplateTemplateMetadataSummaryResponse'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        first:
          type: boolean
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        empty:
          type: boolean
    ResponseDTOPageTemplateMetadataSummaryResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageTemplateMetadataSummaryResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateTemplateMetadataSummaryResponse:
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          maxLength: 1024
          minLength: 0
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        versionLabel:
          type: string
        stableTemplate:
          type: boolean
        templateEntityType:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
            - ArtifactSource
            - StepGroup
            - Workspace
            - Notification
        childType:
          type: string
        templateScope:
          type: string
          enum:
            - account
            - org
            - project
            - unknown
        version:
          type: integer
          format: int64
        gitDetails:
          $ref: '#/components/schemas/TemplateEntityGitDetails'
        lastUpdatedAt:
          type: integer
          format: int64
        createdAt:
          type: integer
          format: int64
        storeType:
          type: string
          enum:
            - INLINE
            - REMOTE
            - INLINE_HC
        connectorRef:
          type: string
        icon:
          type: string
        yamlVersion:
          type: string
        iconName:
          type: string
        iconUrl:
          type: string
        isInlineHCEntity:
          type: boolean
      description: This contains details of the Template Metadata Summary Response
    TemplateFilterProperties:
      required:
        - filterType
      type: object
      properties:
        tags:
          type: object
          additionalProperties:
            type: string
            description: Filter tags as a key-value pair.
          description: Filter tags as a key-value pair.
        filterType:
          type: string
          description: This specifies the corresponding Entity of the filter.
          enum:
            - Connector
            - Secret
            - DelegateProfile
            - Delegate
            - PipelineSetup
            - PipelineExecution
            - Deployment
            - Audit
            - Template
            - Trigger
            - EnvironmentGroup
            - FileStore
            - CCMRecommendation
            - Anomaly
            - RIInventory
            - SPInventory
            - Autocud
            - CCMConnector
            - CCMK8sConnector
            - Environment
            - RuleExecution
            - Override
            - InputSet
            - Webhook
        templateNames:
          type: array
          items:
            type: string
        templateIdentifiers:
          type: array
          items:
            type: string
        description:
          type: string
        templateEntityTypes:
          type: array
          items:
            type: string
            enum:
              - Step
              - Stage
              - Pipeline
              - CustomDeployment
              - MonitoredService
              - SecretManager
              - ArtifactSource
              - StepGroup
              - Workspace
              - Notification
        childTypes:
          type: array
          items:
            type: string
        listingScope:
          $ref: '#/components/schemas/TemplateScope'
        repoName:
          type: string
      description: This contains details of the Template Filter
    TemplateScope:
      type: object
      properties:
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
      description: This contains scope of template being created
    ResponseDTOTemplateMoveConfigResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TemplateMoveConfigResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateMoveConfigResponse:
      type: object
      properties:
        templateIdentifier:
          type: string
          description: Contains the templateIdentifier of the successfully moved config.
        versionLabel:
          type: string
          description: Contains the versionLabel of the successfully moved config.
      description: Tells us if the template move config operation was successful or not
    ResponseDTOTemplateUpdateGitDetailsResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/TemplateUpdateGitDetailsResponse'
        metaData:
          type: object
        correlationId:
          type: string
    TemplateUpdateGitDetailsResponse:
      type: object
      properties:
        status:
          type: boolean
          description: status whether update was successful or not
      description: Tells status of update git details request for given template
    TemplateUpdateGitDetailsRequest:
      type: object
      properties:
        filePath:
          type: string
          description: filepath to be updated
        repoName:
          type: string
          description: repo name to be updated
        connectorRef:
          type: string
          description: connector ref to be updated
      description: Lists down request params for template update git details request
    CvFailure:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        message:
          type: string
        correlationId:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
      description: This is Failure entity as defied in Harness
    CvError:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        message:
          type: string
        correlationId:
          type: string
        detailedMessage:
          type: string
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
        metadata:
          $ref: '#/components/schemas/CvErrorMetadata'
      description: This is Error entity as defined in Harness
    CvErrorMetadata:
      type: object
      properties:
        type:
          type: string
      description: This implements different error meta data objects
      discriminator:
        propertyName: type
    CvResponseMessage:
      type: object
      properties:
        code:
          type: string
          enum:
            - DEFAULT_ERROR_CODE
            - INVALID_ARGUMENT
            - INVALID_EMAIL
            - DOMAIN_NOT_ALLOWED_TO_REGISTER
            - COMMNITY_EDITION_NOT_FOUND
            - DEPLOY_MODE_IS_NOT_ON_PREM
            - USER_ALREADY_REGISTERED
            - USER_INVITATION_DOES_NOT_EXIST
            - USER_DOES_NOT_EXIST
            - USER_INVITE_OPERATION_FAILED
            - USER_DISABLED
            - ACCOUNT_DOES_NOT_EXIST
            - INACTIVE_ACCOUNT
            - ACCOUNT_MIGRATED
            - ACCOUNT_MIGRATED_TO_NEXT_GEN
            - USER_DOMAIN_NOT_ALLOWED
            - MAX_FAILED_ATTEMPT_COUNT_EXCEEDED
            - RESOURCE_NOT_FOUND
            - INVALID_FORMAT
            - ROLE_DOES_NOT_EXIST
            - EMAIL_NOT_VERIFIED
            - EMAIL_VERIFICATION_TOKEN_NOT_FOUND
            - INVALID_TOKEN
            - REVOKED_TOKEN
            - INVALID_CAPTCHA_TOKEN
            - NOT_ACCOUNT_MGR_NOR_HAS_ALL_APP_ACCESS
            - EXPIRED_TOKEN
            - INVALID_AGENT_MTLS_AUTHORITY
            - TOKEN_ALREADY_REFRESHED_ONCE
            - ACCESS_DENIED
            - NG_ACCESS_DENIED
            - INVALID_CREDENTIAL
            - INVALID_CREDENTIALS_THIRD_PARTY
            - INVALID_KEY
            - INVALID_CONNECTOR_TYPE
            - INVALID_KEYPATH
            - INVALID_VARIABLE
            - UNKNOWN_HOST
            - UNREACHABLE_HOST
            - INVALID_PORT
            - SSH_SESSION_TIMEOUT
            - ALGORITHM_NEGOTIATION_ERROR
            - SOCKET_CONNECTION_ERROR
            - CONNECTION_ERROR
            - SOCKET_CONNECTION_TIMEOUT
            - WINRM_COMMAND_EXECUTION_TIMEOUT
            - CONNECTION_TIMEOUT
            - SSH_CONNECTION_ERROR
            - USER_GROUP_ERROR
            - INVALID_EXECUTION_ID
            - ERROR_IN_GETTING_CHANNEL_STREAMS
            - UNEXPECTED
            - UNKNOWN_ERROR
            - UNKNOWN_EXECUTOR_TYPE_ERROR
            - DUPLICATE_STATE_NAMES
            - TRANSITION_NOT_LINKED
            - TRANSITION_TO_INCORRECT_STATE
            - TRANSITION_TYPE_NULL
            - STATES_WITH_DUP_TRANSITIONS
            - BARRIERS_NOT_RUNNING_CONCURRENTLY
            - NON_FORK_STATES
            - NON_REPEAT_STATES
            - INITIAL_STATE_NOT_DEFINED
            - FILE_INTEGRITY_CHECK_FAILED
            - INVALID_URL
            - FILE_DOWNLOAD_FAILED
            - PLATFORM_SOFTWARE_DELETE_ERROR
            - INVALID_CSV_FILE
            - INVALID_REQUEST
            - SCHEMA_VALIDATION_FAILED
            - FILTER_CREATION_ERROR
            - INVALID_YAML_ERROR
            - PLAN_CREATION_ERROR
            - INVALID_INFRA_STATE
            - PIPELINE_ALREADY_TRIGGERED
            - NON_EXISTING_PIPELINE
            - DUPLICATE_COMMAND_NAMES
            - INVALID_PIPELINE
            - COMMAND_DOES_NOT_EXIST
            - DUPLICATE_ARTIFACTSTREAM_NAMES
            - DUPLICATE_HOST_NAMES
            - STATE_NOT_FOR_TYPE
            - STATE_MACHINE_ISSUE
            - STATE_DISCONTINUE_FAILED
            - STATE_PAUSE_FAILED
            - PAUSE_ALL_ALREADY
            - RESUME_ALL_ALREADY
            - ROLLBACK_ALREADY
            - ABORT_ALL_ALREADY
            - EXPIRE_ALL_ALREADY
            - RETRY_FAILED
            - UNKNOWN_ARTIFACT_TYPE
            - UNKNOWN_STAGE_ELEMENT_WRAPPER_TYPE
            - INIT_TIMEOUT
            - LICENSE_EXPIRED
            - NOT_LICENSED
            - REQUEST_TIMEOUT
            - SCM_REQUEST_TIMEOUT
            - WORKFLOW_ALREADY_TRIGGERED
            - JENKINS_ERROR
            - INVALID_ARTIFACT_SOURCE
            - INVALID_ARTIFACT_SERVER
            - INVALID_CLOUD_PROVIDER
            - UPDATE_NOT_ALLOWED
            - DELETE_NOT_ALLOWED
            - APPDYNAMICS_CONFIGURATION_ERROR
            - APM_CONFIGURATION_ERROR
            - SPLUNK_CONFIGURATION_ERROR
            - ELK_CONFIGURATION_ERROR
            - LOGZ_CONFIGURATION_ERROR
            - SUMO_CONFIGURATION_ERROR
            - INSTANA_CONFIGURATION_ERROR
            - APPDYNAMICS_ERROR
            - STACKDRIVER_ERROR
            - STACKDRIVER_CONFIGURATION_ERROR
            - NEWRELIC_CONFIGURATION_ERROR
            - NEWRELIC_ERROR
            - DYNA_TRACE_CONFIGURATION_ERROR
            - DYNA_TRACE_ERROR
            - CLOUDWATCH_ERROR
            - CLOUDWATCH_CONFIGURATION_ERROR
            - PROMETHEUS_CONFIGURATION_ERROR
            - DATA_DOG_CONFIGURATION_ERROR
            - SERVICE_GUARD_CONFIGURATION_ERROR
            - ENCRYPTION_NOT_CONFIGURED
            - UNAVAILABLE_DELEGATES
            - WORKFLOW_EXECUTION_IN_PROGRESS
            - PIPELINE_EXECUTION_IN_PROGRESS
            - AWS_ACCESS_DENIED
            - AWS_CLUSTER_NOT_FOUND
            - AWS_SERVICE_NOT_FOUND
            - IMAGE_NOT_FOUND
            - ILLEGAL_ARGUMENT
            - IMAGE_TAG_NOT_FOUND
            - DELEGATE_NOT_AVAILABLE
            - INVALID_YAML_PAYLOAD
            - AUTHENTICATION_ERROR
            - AUTHORIZATION_ERROR
            - UNRECOGNIZED_YAML_FIELDS
            - COULD_NOT_MAP_BEFORE_YAML
            - MISSING_BEFORE_YAML
            - MISSING_YAML
            - NON_EMPTY_DELETIONS
            - GENERAL_YAML_ERROR
            - GENERAL_YAML_INFO
            - YAML_GIT_SYNC_ERROR
            - GIT_CONNECTION_ERROR
            - GIT_ERROR
            - ARTIFACT_SERVER_ERROR
            - ENCRYPT_DECRYPT_ERROR
            - SECRET_MANAGEMENT_ERROR
            - SECRET_NOT_FOUND
            - KMS_OPERATION_ERROR
            - GCP_KMS_OPERATION_ERROR
            - VAULT_OPERATION_ERROR
            - AWS_SECRETS_MANAGER_OPERATION_ERROR
            - AZURE_KEY_VAULT_OPERATION_ERROR
            - AZURE_KEY_VAULT_INTERRUPT_ERROR
            - UNSUPPORTED_OPERATION_EXCEPTION
            - FEATURE_UNAVAILABLE
            - GENERAL_ERROR
            - BASELINE_CONFIGURATION_ERROR
            - SAML_IDP_CONFIGURATION_NOT_AVAILABLE
            - INVALID_AUTHENTICATION_MECHANISM
            - INVALID_SAML_CONFIGURATION
            - INVALID_OAUTH_CONFIGURATION
            - INVALID_LDAP_CONFIGURATION
            - USER_GROUP_SYNC_FAILURE
            - USER_GROUP_ALREADY_EXIST
            - INVALID_TWO_FACTOR_AUTHENTICATION_CONFIGURATION
            - EXPLANATION
            - HINT
            - NOT_WHITELISTED_IP
            - INVALID_TOTP_TOKEN
            - EMAIL_FAILED
            - SSL_HANDSHAKE_FAILED
            - NO_APPS_ASSIGNED
            - INVALID_INFRA_CONFIGURATION
            - TEMPLATES_LINKED
            - USER_HAS_NO_PERMISSIONS
            - USER_NOT_AUTHORIZED
            - USER_ALREADY_PRESENT
            - EMAIL_ERROR
            - INVALID_USAGE_RESTRICTION
            - USAGE_RESTRICTION_ERROR
            - STATE_EXECUTION_INSTANCE_NOT_FOUND
            - DELEGATE_TASK_RETRY
            - KUBERNETES_API_TASK_EXCEPTION
            - KUBERNETES_TASK_EXCEPTION
            - KUBERNETES_YAML_ERROR
            - SAVE_FILE_INTO_GCP_STORAGE_FAILED
            - READ_FILE_FROM_GCP_STORAGE_FAILED
            - FILE_NOT_FOUND_ERROR
            - USAGE_LIMITS_EXCEEDED
            - EVENT_PUBLISH_FAILED
            - CUSTOM_APPROVAL_ERROR
            - JIRA_ERROR
            - EXPRESSION_EVALUATION_FAILED
            - KUBERNETES_VALUES_ERROR
            - KUBERNETES_CLUSTER_ERROR
            - INCORRECT_SIGN_IN_MECHANISM
            - OAUTH_LOGIN_FAILED
            - INVALID_TERRAFORM_TARGETS_REQUEST
            - TERRAFORM_EXECUTION_ERROR
            - FILE_READ_FAILED
            - FILE_SIZE_EXCEEDS_LIMIT
            - CLUSTER_NOT_FOUND
            - MARKETPLACE_TOKEN_NOT_FOUND
            - INVALID_MARKETPLACE_TOKEN
            - INVALID_TICKETING_SERVER
            - SERVICENOW_ERROR
            - PASSWORD_EXPIRED
            - USER_LOCKED
            - PASSWORD_STRENGTH_CHECK_FAILED
            - ACCOUNT_DISABLED
            - INVALID_ACCOUNT_PERMISSION
            - PAGERDUTY_ERROR
            - HEALTH_ERROR
            - SAML_TEST_SUCCESS_MECHANISM_NOT_ENABLED
            - DOMAIN_WHITELIST_FILTER_CHECK_FAILED
            - INVALID_DASHBOARD_UPDATE_REQUEST
            - DUPLICATE_FIELD
            - INVALID_AZURE_VAULT_CONFIGURATION
            - USER_NOT_AUTHORIZED_DUE_TO_USAGE_RESTRICTIONS
            - INVALID_ROLLBACK
            - DATA_COLLECTION_ERROR
            - SUMO_DATA_COLLECTION_ERROR
            - DEPLOYMENT_GOVERNANCE_ERROR
            - BATCH_PROCESSING_ERROR
            - GRAPHQL_ERROR
            - FILE_CREATE_ERROR
            - ILLEGAL_STATE
            - GIT_DIFF_COMMIT_NOT_IN_ORDER
            - FAILED_TO_ACQUIRE_PERSISTENT_LOCK
            - FAILED_TO_ACQUIRE_NON_PERSISTENT_LOCK
            - POD_NOT_FOUND_ERROR
            - COMMAND_EXECUTION_ERROR
            - REGISTRY_EXCEPTION
            - ENGINE_INTERRUPT_PROCESSING_EXCEPTION
            - ENGINE_IO_EXCEPTION
            - ENGINE_OUTCOME_EXCEPTION
            - ENGINE_SWEEPING_OUTPUT_EXCEPTION
            - CACHE_NOT_FOUND_EXCEPTION
            - ENGINE_ENTITY_UPDATE_EXCEPTION
            - SHELL_EXECUTION_EXCEPTION
            - TEMPLATE_NOT_FOUND
            - AZURE_SERVICE_EXCEPTION
            - AZURE_CLIENT_EXCEPTION
            - GIT_UNSEEN_REMOTE_HEAD_COMMIT
            - TIMEOUT_ENGINE_EXCEPTION
            - NO_AVAILABLE_DELEGATES
            - NO_GLOBAL_DELEGATE_ACCOUNT
            - NO_INSTALLED_DELEGATES
            - DUPLICATE_DELEGATE_EXCEPTION
            - GCP_MARKETPLACE_EXCEPTION
            - MISSING_DEFAULT_GOOGLE_CREDENTIALS
            - INCORRECT_DEFAULT_GOOGLE_CREDENTIALS
            - OPTIMISTIC_LOCKING_EXCEPTION
            - NG_PIPELINE_EXECUTION_EXCEPTION
            - NG_PIPELINE_CREATE_EXCEPTION
            - RESOURCE_NOT_FOUND_EXCEPTION
            - PMS_INITIALIZE_SDK_EXCEPTION
            - UNEXPECTED_SNIPPET_EXCEPTION
            - UNEXPECTED_SCHEMA_EXCEPTION
            - CONNECTOR_VALIDATION_EXCEPTION
            - TIMESCALE_NOT_AVAILABLE
            - MIGRATION_EXCEPTION
            - REQUEST_PROCESSING_INTERRUPTED
            - SECRET_MANAGER_ID_NOT_FOUND
            - GCP_SECRET_MANAGER_OPERATION_ERROR
            - GCP_SECRET_OPERATION_ERROR
            - GIT_OPERATION_ERROR
            - TASK_FAILURE_ERROR
            - INSTANCE_STATS_PROCESS_ERROR
            - INSTANCE_STATS_MIGRATION_ERROR
            - DEPLOYMENT_MIGRATION_ERROR
            - CG_LICENSE_USAGE_ERROR
            - INSTANCE_STATS_AGGREGATION_ERROR
            - UNRESOLVED_EXPRESSIONS_ERROR
            - KRYO_HANDLER_NOT_FOUND_ERROR
            - DELEGATE_ERROR_HANDLER_EXCEPTION
            - DELEGATE_SERVICE_DRIVER_EXCEPTION
            - DELEGATE_INSTALLATION_COMMAND_NOT_SUPPORTED_EXCEPTION
            - UNEXPECTED_TYPE_ERROR
            - EXCEPTION_HANDLER_NOT_FOUND
            - CONNECTOR_NOT_FOUND_EXCEPTION
            - GCP_SERVER_ERROR
            - HTTP_RESPONSE_EXCEPTION
            - SCM_NOT_FOUND_ERROR
            - SCM_CONFLICT_ERROR
            - SCM_CONFLICT_ERROR_V2
            - SCM_UNPROCESSABLE_ENTITY
            - PROCESS_EXECUTION_EXCEPTION
            - SCM_UNAUTHORIZED
            - SCM_BAD_REQUEST
            - SCM_INTERNAL_SERVER_ERROR
            - DATA
            - CONTEXT
            - PR_CREATION_ERROR
            - URL_NOT_REACHABLE
            - URL_NOT_PROVIDED
            - ENGINE_EXPRESSION_EVALUATION_ERROR
            - ENGINE_FUNCTOR_ERROR
            - JIRA_CLIENT_ERROR
            - SCM_NOT_MODIFIED
            - APPROVAL_STEP_NG_ERROR
            - BUCKET_SERVER_ERROR
            - GIT_SYNC_ERROR
            - TEMPLATE_EXCEPTION
            - TEMPLATE_ALREADY_EXISTS_EXCEPTION
            - ENTITY_REFERENCE_EXCEPTION
            - ACTIVE_SERVICE_INSTANCES_PRESENT_EXCEPTION
            - INVALID_INPUT_SET
            - INVALID_OVERLAY_INPUT_SET
            - RESOURCE_ALREADY_EXISTS
            - INVALID_JSON_PAYLOAD
            - POLICY_EVALUATION_FAILURE
            - POLICY_SET_ERROR
            - INVALID_ARTIFACTORY_REGISTRY_REQUEST
            - INVALID_NEXUS_REGISTRY_REQUEST
            - ENTITY_NOT_FOUND
            - GITX_OAUTH_NOT_SET
            - INVALID_AZURE_CONTAINER_REGISTRY_REQUEST
            - AZURE_AUTHENTICATION_ERROR
            - AZURE_CONFIG_ERROR
            - DATA_PROCESSING_ERROR
            - INVALID_AZURE_AKS_REQUEST
            - AWS_IAM_ERROR
            - AWS_CF_ERROR
            - AWS_INSTANCE_ERROR
            - AWS_VPC_ERROR
            - AWS_TAG_ERROR
            - AWS_ASG_ERROR
            - AWS_LOAD_BALANCER_ERROR
            - SCM_INTERNAL_SERVER_ERROR_V2
            - SCM_FAILED_DEPENDENCY_ERROR
            - SCM_UNAUTHORIZED_ERROR_V2
            - TOO_MANY_REQUESTS
            - INVALID_IDENTIFIER_REF
            - SPOTINST_NULL_ERROR
            - SPOTNIST_REST_EXCEPTION
            - SCM_UNEXPECTED_ERROR
            - DUPLICATE_FILE_IMPORT
            - AZURE_APP_SERVICES_TASK_EXCEPTION
            - AZURE_ARM_TASK_EXCEPTION
            - AZURE_BP_TASK_EXCEPTION
            - MEDIA_NOT_SUPPORTED
            - AWS_ECS_ERROR
            - AWS_APPLICATION_AUTO_SCALING
            - AWS_ECS_SERVICE_NOT_ACTIVE
            - AWS_ECS_CLIENT_ERROR
            - AWS_STS_ERROR
            - FREEZE_EXCEPTION
            - MISSING_EXCEPTION
            - DELEGATE_TASK_EXPIRED
            - DELEGATE_TASK_VALIDATION_FAILED
            - MONGO_EXECUTION_TIMEOUT_EXCEPTION
            - DELEGATE_NOT_REGISTERED
            - TERRAFORM_VAULT_SECRET_CLEANUP_FAILURE
            - APPROVAL_REJECTION
            - TERRAGRUNT_EXECUTION_ERROR
            - ADFS_ERROR
            - TERRAFORM_CLOUD_ERROR
            - CLUSTER_CREDENTIALS_NOT_FOUND
            - SCM_API_ERROR
            - INTERNAL_SERVER_ERROR
            - SCM_FORBIDDEN
            - AWS_EKS_ERROR
            - OPA_POLICY_EVALUATION_ERROR
            - USER_MARKED_FAILURE
            - SSH_RETRY
            - HTTP_CLIENT_ERROR_RESPONSE
            - HTTP_INTERNAL_SERVER_ERROR
            - HTTP_BAD_GATEWAY
            - HTTP_SERVICE_UNAVAILABLE
            - HTTP_GATEWAY_TIMEOUT
            - HTTP_SERVER_ERROR_RESPONSE
            - PIPELINE_UPDATE_EXCEPTION
            - SERVICENOW_REFRESH_TOKEN_ERROR
            - PARAMETER_FIELD_CAST_ERROR
            - ABORT_ALL_ALREADY_NG
            - WEBHOOK_EXCEPTION
            - INVALID_OIDC_CONFIGURATION
            - INVALID_CREDENTIALS
            - INVALID_OR_PRIVATE_REPO
            - BARRIER_FAILED_ERROR
            - ELASTICSEARCH_NOT_AVAILABLE
            - OBJECT_STORE_NOT_AVAILABLE
            - NO_ELIGIBLE_RUNNERS
            - NO_AVAILABLE_RUNNERS
            - RUNNER_DISCONNECTED
            - EVENT_LISTENER_STEP_FAILURE
        level:
          type: string
          enum:
            - INFO
            - ERROR
        message:
          type: string
        exception:
          type: object
          properties:
            stackTrace:
              type: array
              items:
                type: object
                properties:
                  classLoaderName:
                    type: string
                  moduleName:
                    type: string
                  moduleVersion:
                    type: string
                  methodName:
                    type: string
                  fileName:
                    type: string
                  lineNumber:
                    type: integer
                    format: int32
                  nativeMethod:
                    type: boolean
                  className:
                    type: string
            message:
              type: string
            suppressed:
              type: array
              items:
                type: object
                properties:
                  stackTrace:
                    type: array
                    items:
                      type: object
                      properties:
                        classLoaderName:
                          type: string
                        moduleName:
                          type: string
                        moduleVersion:
                          type: string
                        methodName:
                          type: string
                        fileName:
                          type: string
                        lineNumber:
                          type: integer
                          format: int32
                        nativeMethod:
                          type: boolean
                        className:
                          type: string
                  message:
                    type: string
                  localizedMessage:
                    type: string
            localizedMessage:
              type: string
        failureTypes:
          type: array
          items:
            type: string
            enum:
              - EXPIRED
              - DELEGATE_PROVISIONING
              - CONNECTIVITY
              - AUTHENTICATION
              - VERIFICATION_FAILURE
              - APPLICATION_ERROR
              - AUTHORIZATION_ERROR
              - TIMEOUT_ERROR
              - POLICY_EVALUATION_FAILURE
              - INPUT_TIMEOUT_FAILURE
              - APPROVAL_REJECTION
              - DELEGATE_RESTART
              - USER_MARKED_FAILURE
        additionalInfo:
          type: object
          additionalProperties:
            type: string
    AnalysisDTO:
      type: object
      properties:
        liveMonitoring:
          $ref: '#/components/schemas/LiveMonitoringDTO'
        deploymentVerification:
          $ref: '#/components/schemas/DeploymentVerificationDTO'
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
    AppDMetricDefinitions:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        groupName:
          type: string
        baseFolder:
          type: string
        metricPath:
          type: string
        completeMetricPath:
          type: string
        completeServiceInstanceMetricPath:
          type: string
    AppDynamicsHealthSource:
      required:
        - applicationName
        - connectorRef
        - feature
        - tierName
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        feature:
          type: string
        applicationName:
          type: string
        tierName:
          type: string
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/AppDMetricDefinitions'
      description: >-
        This is the AppDynamics Metric Health Source spec entity defined in
        Harness
    AwsPrometheusHealthSource:
      required:
        - connectorRef
        - region
        - workspaceId
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/PrometheusMetricDefinition'
        region:
          type: string
        workspaceId:
          type: string
      description: >-
        This is the AwsPrometheusHealthSource Metric Health Source spec entity
        defined in Harness
    ChangeSourceDTO:
      required:
        - identifier
        - name
        - spec
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        type:
          type: string
          enum:
            - HarnessCDNextGen
            - PagerDuty
            - K8sCluster
            - HarnessCD
            - HarnessFF
            - HarnessCE
            - CustomDeploy
            - CustomIncident
            - CustomInfrastructure
            - CustomFF
        enabled:
          type: boolean
        spec:
          $ref: '#/components/schemas/ChangeSourceSpec'
        category:
          type: string
          enum:
            - Deployment
            - Infrastructure
            - Alert
            - FeatureFlag
            - ChaosExperiment
    ChangeSourceSpec:
      type: object
    CloudWatchMetricDefinition:
      required:
        - expression
        - groupName
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        groupName:
          type: string
        expression:
          type: string
        responseMapping:
          $ref: '#/components/schemas/MetricResponseMapping'
    CloudWatchMetricsHealthSource:
      required:
        - connectorRef
        - feature
        - metricDefinitions
        - region
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        region:
          type: string
        feature:
          type: string
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/CloudWatchMetricDefinition'
      description: >-
        This is the Cloud Watch Metric Health Source spec entity defined in
        Harness
    CustomHealthLogDefinition:
      type: object
      properties:
        requestDefinition:
          $ref: '#/components/schemas/CustomHealthRequestDefinition'
        logMessageJsonPath:
          type: string
        timestampJsonPath:
          type: string
        serviceInstanceJsonPath:
          type: string
        queryName:
          type: string
    CustomHealthMetricDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        requestDefinition:
          $ref: '#/components/schemas/CustomHealthRequestDefinition'
        queryType:
          type: string
          enum:
            - SERVICE_BASED
            - HOST_BASED
        metricResponseMapping:
          $ref: '#/components/schemas/MetricResponseMapping'
        groupName:
          type: string
    CustomHealthRequestDefinition:
      type: object
      properties:
        urlPath:
          type: string
        requestBody:
          type: string
        method:
          type: string
          enum:
            - GET
            - POST
        startTimeInfo:
          $ref: '#/components/schemas/TimestampInfo'
        endTimeInfo:
          $ref: '#/components/schemas/TimestampInfo'
    CustomHealthSourceLog:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        logDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/CustomHealthLogDefinition'
      description: This is the Custom Log Health Source spec entity defined in Harness
    CustomHealthSourceMetric:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/CustomHealthMetricDefinition'
      description: This is the Custom Metric Health Source spec entity defined in Harness
    DatadogLogHealthSource:
      required:
        - connectorRef
        - feature
        - queries
      type: object
      properties:
        connectorRef:
          type: string
        feature:
          type: string
        queries:
          type: array
          items:
            $ref: '#/components/schemas/DatadogLogHealthSourceQueryDTO'
      description: This is the Datadog Log Health Source spec entity defined in Harness
    DatadogLogHealthSourceQueryDTO:
      required:
        - indexes
        - name
        - query
        - serviceInstanceIdentifier
      type: object
      properties:
        name:
          type: string
        query:
          type: string
        indexes:
          type: array
          items:
            type: string
        serviceInstanceIdentifier:
          type: string
    DatadogMetricHealthDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        dashboardId:
          type: string
        dashboardName:
          type: string
        metricPath:
          type: string
        query:
          type: string
        groupingQuery:
          type: string
        metric:
          type: string
        aggregation:
          type: string
        serviceInstanceIdentifierTag:
          type: string
        groupByResource:
          type: array
          items:
            type: string
        metricTags:
          type: array
          items:
            type: string
        isManualQuery:
          type: boolean
        isCustomCreatedMetric:
          type: boolean
    DatadogMetricHealthSource:
      required:
        - connectorRef
        - feature
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        feature:
          type: string
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/DatadogMetricHealthDefinition'
      description: This is the Datadog Metric Health Source spec entity defined in Harness
    DeploymentVerificationDTO:
      type: object
      properties:
        enabled:
          type: boolean
        serviceInstanceFieldName:
          type: string
        serviceInstanceMetricPath:
          type: string
        groupByResource:
          type: array
          items:
            type: string
    DynatraceHealthSource:
      required:
        - connectorRef
        - feature
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        feature:
          type: string
        serviceId:
          type: string
        serviceName:
          type: string
        serviceMethodIds:
          type: array
          items:
            type: string
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/DynatraceMetricDefinition'
      description: >-
        This is the Dynatrace Metric Health Source spec entity defined in
        Harness
    DynatraceMetricDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        groupName:
          type: string
        metricSelector:
          type: string
        serviceInstanceIdentifier:
          type: string
        filters:
          type: array
          items:
            $ref: '#/components/schemas/DynatraceMetricFilter'
        isManualQuery:
          type: boolean
    DynatraceMetricFilter:
      type: object
      properties:
        dimension:
          type: string
        dimensionValue:
          type: string
    ELKHealthSource:
      required:
        - connectorRef
        - feature
        - queries
      type: object
      properties:
        connectorRef:
          type: string
        feature:
          type: string
        queries:
          type: array
          items:
            $ref: '#/components/schemas/ELKHealthSourceQueryDTO'
      description: This is the ELK Log Health Source spec entity defined in Harness
    ELKHealthSourceQueryDTO:
      required:
        - index
        - messageIdentifier
        - name
        - query
        - serviceInstanceIdentifier
        - timeStampFormat
        - timeStampIdentifier
      type: object
      properties:
        name:
          type: string
        query:
          type: string
        index:
          type: string
        serviceInstanceIdentifier:
          type: string
        timeStampIdentifier:
          type: string
        timeStampFormat:
          type: string
        messageIdentifier:
          type: string
    ErrorTrackingHealthSource:
      required:
        - connectorRef
        - feature
      type: object
      properties:
        connectorRef:
          type: string
        feature:
          type: string
      description: This is the ErrorTracking Health Source spec entity defined in Harness
    FailMetricCustomThresholdSpec:
      type: object
      properties:
        count:
          type: integer
          format: int32
    FailMetricThresholdSpec:
      required:
        - action
      type: object
      allOf:
        - $ref: '#/components/schemas/MetricThresholdSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/FailMetricCustomThresholdSpec'
    HealthSource:
      required:
        - Health Source
        - identifier
        - name
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        type:
          type: string
          enum:
            - AppDynamics
            - NewRelic
            - BigQueryLog
            - StackdriverLog
            - Stackdriver
            - Prometheus
            - Splunk
            - DatadogMetrics
            - DatadogLog
            - Dynatrace
            - DynatraceGrailLogs
            - ErrorTracking
            - CustomHealthMetric
            - CustomHealthLog
            - SplunkMetric
            - ElasticSearch
            - CloudWatchMetrics
            - AwsPrometheus
            - SumologicMetrics
            - SumologicLogs
            - SplunkSignalFXMetrics
            - GrafanaLokiLogs
            - AzureLogs
            - AzureMetrics
            - CloudWatchLog
        version:
          type: string
          enum:
            - v1
            - v2
        Health Source:
          $ref: '#/components/schemas/HealthSourceSpec'
    HealthSourceParamsDTO:
      type: object
      properties:
        region:
          type: string
    HealthSourceSpec:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
      description: This is the Health Source entity defined in Harness
      anyOf:
        - $ref: '#/components/schemas/AppDynamicsHealthSource'
        - $ref: '#/components/schemas/NewRelicHealthSource'
        - $ref: '#/components/schemas/StackdriverLogHealthSource'
        - $ref: '#/components/schemas/SplunkHealthSource'
        - $ref: '#/components/schemas/PrometheusHealthSource'
        - $ref: '#/components/schemas/StackdriverMetricHealthSource'
        - $ref: '#/components/schemas/DatadogMetricHealthSource'
        - $ref: '#/components/schemas/DatadogLogHealthSource'
        - $ref: '#/components/schemas/DynatraceHealthSource'
        - $ref: '#/components/schemas/ErrorTrackingHealthSource'
        - $ref: '#/components/schemas/CustomHealthSourceMetric'
        - $ref: '#/components/schemas/CustomHealthSourceLog'
        - $ref: '#/components/schemas/SplunkMetricHealthSource'
        - $ref: '#/components/schemas/ELKHealthSource'
        - $ref: '#/components/schemas/CloudWatchMetricsHealthSource'
        - $ref: '#/components/schemas/AwsPrometheusHealthSource'
        - $ref: '#/components/schemas/NextGenHealthSource'
    IgnoreMetricThresholdSpec:
      required:
        - action
      type: object
      allOf:
        - $ref: '#/components/schemas/MetricThresholdSpec'
    KubernetesDependencyMetadata:
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceDependencyMetadata'
        - type: object
          properties:
            namespace:
              type: string
            workload:
              type: string
            workloads:
              type: array
              items:
                type: string
    LiveMonitoringDTO:
      type: object
      properties:
        enabled:
          type: boolean
    MetricResponseMapping:
      type: object
      properties:
        metricValueJsonPath:
          type: string
        timestampJsonPath:
          type: string
        serviceInstanceJsonPath:
          type: string
        serviceInstanceListJsonPath:
          type: string
        relativeMetricListJsonPath:
          type: string
        relativeTimestampJsonPath:
          type: string
        relativeMetricValueJsonPath:
          type: string
        relativeServiceInstanceValueJsonPath:
          type: string
        timestampFormat:
          type: string
    MetricThreshold:
      required:
        - spec
      type: object
      properties:
        groupName:
          type: string
        metricName:
          type: string
        metricIdentifier:
          type: string
        metricType:
          type: string
        spec:
          $ref: '#/components/schemas/MetricThresholdSpec'
        criteria:
          $ref: '#/components/schemas/MetricThresholdCriteria'
        type:
          type: string
          enum:
            - IgnoreThreshold
            - FailImmediately
    MetricThresholdCriteria:
      type: object
      properties:
        type:
          type: string
          enum:
            - Absolute
            - Percentage
        spec:
          $ref: '#/components/schemas/MetricThresholdCriteriaSpec'
    MetricThresholdCriteriaSpec:
      type: object
      properties:
        lessThan:
          type: number
          format: double
        greaterThan:
          type: number
          format: double
    MetricThresholdSpec:
      required:
        - action
        - type
      type: object
      properties:
        action:
          type: string
          enum:
            - Ignore
            - FailImmediately
            - FailAfterOccurrence
            - FailAfterConsecutiveOccurrence
        type:
          type: string
      discriminator:
        propertyName: type
    MonitoredService:
      required:
        - identifier
        - name
        - orgIdentifier
        - projectIdentifier
        - serviceRef
        - type
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
            - Application
            - Infrastructure
        description:
          type: string
        serviceRef:
          type: string
        environmentRef:
          type: string
        environmentRefList:
          type: array
          items:
            type: string
        tags:
          type: object
          additionalProperties:
            type: string
        sources:
          $ref: '#/components/schemas/Sources'
        dependencies:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/ServiceDependencyDTO'
        notificationRuleRefs:
          type: array
          items:
            $ref: '#/components/schemas/NotificationRuleRefDTO'
        template:
          $ref: '#/components/schemas/TemplateDTO'
        enabled:
          type: boolean
      description: This is the Monitored Service entity defined in Harness
    MonitoredServiceResponse:
      required:
        - monitoredService
      type: object
      properties:
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        monitoredService:
          $ref: '#/components/schemas/MonitoredService'
    NewRelicHealthSource:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        applicationName:
          type: string
        applicationId:
          type: string
        feature:
          type: string
        newRelicMetricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/NewRelicMetricDefinition'
      description: This is the NewRelic Metric Health Source spec entity defined in Harness
    NewRelicMetricDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        groupName:
          type: string
        nrql:
          type: string
        responseMapping:
          $ref: '#/components/schemas/MetricResponseMapping'
        serviceInstanceField:
          type: string
    NextGenHealthSource:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        queryDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/QueryDefinition'
        healthSourceParams:
          $ref: '#/components/schemas/HealthSourceParamsDTO'
      description: >-
        This is the NextGenHealthSource Health Source spec entity defined in
        Harness
    NotificationRuleRefDTO:
      required:
        - enabled
        - notificationRuleRef
      type: object
      properties:
        notificationRuleRef:
          type: string
        enabled:
          type: boolean
    PrometheusFilter:
      type: object
      properties:
        labelName:
          type: string
        labelValue:
          type: string
    PrometheusHealthSource:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/PrometheusMetricDefinition'
      description: >-
        This is the Prometheus Metric Health Source spec entity defined in
        Harness
    PrometheusMetricDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        query:
          type: string
        groupName:
          type: string
        serviceInstanceFieldName:
          type: string
        prometheusMetric:
          type: string
        serviceFilter:
          type: array
          items:
            $ref: '#/components/schemas/PrometheusFilter'
        envFilter:
          type: array
          items:
            $ref: '#/components/schemas/PrometheusFilter'
        additionalFilters:
          type: array
          items:
            $ref: '#/components/schemas/PrometheusFilter'
        aggregation:
          type: string
        isManualQuery:
          type: boolean
    QueryDefinition:
      required:
        - identifier
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        groupName:
          type: string
        queryParams:
          $ref: '#/components/schemas/QueryParamsDTO'
        liveMonitoringEnabled:
          type: boolean
        continuousVerificationEnabled:
          type: boolean
        sliEnabled:
          type: boolean
        query:
          type: string
        metricThresholds:
          type: array
          items:
            $ref: '#/components/schemas/MetricThreshold'
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
    QueryParamsDTO:
      type: object
      properties:
        serviceInstanceField:
          type: string
        index:
          type: string
        region:
          type: string
        iamRoleArn:
          type: string
        timeStampIdentifier:
          type: string
        timeStampFormat:
          type: string
        messageIdentifier:
          type: string
        healthSourceMetricName:
          type: string
        healthSourceMetricNamespace:
          type: string
        aggregationType:
          type: string
          enum:
            - average
            - maximum
            - minimum
            - total
            - count
        indexes:
          type: array
          items:
            type: string
        logGroups:
          type: array
          items:
            type: string
    RestResponseMonitoredServiceResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/MonitoredServiceResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    RiskProfile:
      type: object
      properties:
        category:
          type: string
          enum:
            - Performance
            - Errors
            - Infrastructure
        metricType:
          type: string
          enum:
            - INFRA
            - RESP_TIME
            - THROUGHPUT
            - ERROR
            - APDEX
            - OTHER
        riskCategory:
          type: string
          enum:
            - Errors
            - Infrastructure
            - Performance_Throughput
            - Performance_Other
            - Performance_ResponseTime
        thresholdTypes:
          type: array
          items:
            type: string
            enum:
              - ACT_WHEN_LOWER
              - ACT_WHEN_HIGHER
    SLIDTO:
      type: object
      properties:
        enabled:
          type: boolean
    ServiceDependencyDTO:
      type: object
      properties:
        monitoredServiceIdentifier:
          type: string
        type:
          type: string
          enum:
            - KUBERNETES
        dependencyMetadata:
          $ref: '#/components/schemas/ServiceDependencyMetadata'
    ServiceDependencyMetadata:
      type: object
      properties:
        type:
          type: string
          enum:
            - KUBERNETES
        supportedChangeSourceTypes:
          uniqueItems: true
          type: array
          items:
            type: string
            enum:
              - HarnessCDNextGen
              - PagerDuty
              - K8sCluster
              - HarnessCD
              - HarnessFF
              - HarnessCE
              - CustomDeploy
              - CustomIncident
              - CustomInfrastructure
              - CustomFF
    Sources:
      type: object
      properties:
        healthSources:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/HealthSource'
        changeSources:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/ChangeSourceDTO'
    SplunkHealthSource:
      required:
        - connectorRef
        - feature
        - queries
      type: object
      properties:
        connectorRef:
          type: string
        feature:
          type: string
        queries:
          type: array
          items:
            $ref: '#/components/schemas/SplunkHealthSourceQueryDTO'
      description: This is the Splunk Log Health Source spec entity defined in Harness
    SplunkHealthSourceQueryDTO:
      required:
        - name
        - query
        - serviceInstanceIdentifier
      type: object
      properties:
        name:
          type: string
        query:
          type: string
        serviceInstanceIdentifier:
          type: string
    SplunkMetricDefinition:
      required:
        - groupName
        - identifier
        - metricName
        - query
      type: object
      properties:
        groupName:
          type: string
        query:
          type: string
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
    SplunkMetricHealthSource:
      required:
        - connectorRef
        - feature
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        feature:
          type: string
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/SplunkMetricDefinition'
      description: This is the Splunk Metric Health Source spec entity defined in Harness
    StackdriverDefinition:
      required:
        - identifier
        - metricName
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
        riskProfile:
          $ref: '#/components/schemas/RiskProfile'
        analysis:
          $ref: '#/components/schemas/AnalysisDTO'
        sli:
          $ref: '#/components/schemas/SLIDTO'
        dashboardName:
          type: string
        dashboardPath:
          type: string
        jsonMetricDefinition:
          type: object
        jsonMetricDefinitionString:
          type: string
        metricTags:
          type: array
          items:
            type: string
        serviceInstanceField:
          type: string
        isManualQuery:
          type: boolean
    StackdriverLogHealthSource:
      required:
        - connectorRef
        - feature
        - queries
      type: object
      properties:
        connectorRef:
          type: string
        feature:
          type: string
        queries:
          type: array
          items:
            $ref: '#/components/schemas/StackdriverLogHealthSourceQueryDTO'
      description: This is the StackDriver Log Health Source spec entity defined in Harness
    StackdriverLogHealthSourceQueryDTO:
      required:
        - messageIdentifier
        - name
        - query
        - serviceInstanceIdentifier
      type: object
      properties:
        name:
          type: string
        query:
          type: string
        messageIdentifier:
          type: string
        serviceInstanceIdentifier:
          type: string
    StackdriverMetricHealthSource:
      required:
        - connectorRef
      type: object
      properties:
        connectorRef:
          type: string
        metricPacks:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/TimeSeriesMetricPackDTO'
        metricDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/StackdriverDefinition'
      description: >-
        This is the Stackdriver Metric Health Source spec entity defined in
        Harness
    TemplateDTO:
      required:
        - templateRef
      type: object
      properties:
        templateRef:
          type: string
        versionLabel:
          type: string
        templateInputs:
          type: string
        isTemplateByReference:
          type: boolean
        lastReconciliationTime:
          type: integer
          format: int64
    TimeSeriesMetricPackDTO:
      required:
        - identifier
      type: object
      properties:
        identifier:
          type: string
        metricThresholds:
          type: array
          items:
            $ref: '#/components/schemas/MetricThreshold'
    TimestampInfo:
      type: object
      properties:
        placeholder:
          type: string
        timestampFormat:
          type: string
          enum:
            - SECONDS
            - MILLISECONDS
            - CUSTOM
        customTimestampFormat:
          type: string
    ProjectParams:
      required:
        - account_identifier
      type: object
      properties:
        account_identifier:
          type: string
          description: Account Identifier.
        org_identifier:
          type: string
          description: Org Identifier.
        project_identifier:
          type: string
          description: Project Identifier.
      description: Project Parameters
    CvRestResponseBoolean:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: boolean
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    ResponseDTOMonitoredServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/MonitoredServiceResponse'
        metaData:
          type: object
        correlationId:
          type: string
    HealthSourceSummary:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
    MonitoredServiceWithHealthSources:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        healthSources:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/HealthSourceSummary'
    ResponseDTOListMonitoredServiceWithHealthSources:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceWithHealthSources'
        metaData:
          type: object
        correlationId:
          type: string
    AnomaliesSummaryDTO:
      type: object
      properties:
        logsAnomalies:
          type: integer
          format: int64
        timeSeriesAnomalies:
          type: integer
          format: int64
        totalAnomalies:
          type: integer
          format: int64
    RestResponseAnomaliesSummaryDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/AnomaliesSummaryDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    CountServiceDTO:
      type: object
      properties:
        allServicesCount:
          type: integer
          format: int32
        servicesAtRiskCount:
          type: integer
          format: int32
    CvDeclaration:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        fullNameBytes:
          $ref: '#/components/schemas/ByteString'
        reserved:
          type: boolean
        type:
          type: string
        number:
          type: integer
          format: int32
        fullName:
          type: string
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/CvDeclaration'
        parserForType:
          $ref: '#/components/schemas/ParserDeclaration'
        serializedSize:
          type: integer
          format: int32
        repeated:
          type: boolean
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CvEntityGitDetails:
      type: object
      properties:
        valid:
          type: boolean
          description: Indicates if the Entity is valid
        invalidYaml:
          type: string
          description: This has the Git File content if the entity is invalid
      description: This contains Validity Details of the Entity
    CvEnvironmentResponse:
      type: object
      properties:
        environment:
          $ref: '#/components/schemas/EnvironmentResponseDetails'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        entityValidityDetails:
          $ref: '#/components/schemas/CvEntityGitDetails'
        governanceMetadata:
          $ref: '#/components/schemas/CvGovernanceMetadata'
    CvFileDescriptorProto:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        name:
          type: string
        package:
          type: string
        initialized:
          type: boolean
        options:
          $ref: '#/components/schemas/FileOptions'
        edition:
          type: string
          enum:
            - EDITION_UNKNOWN
            - EDITION_LEGACY
            - EDITION_PROTO2
            - EDITION_PROTO3
            - EDITION_2023
            - EDITION_2024
            - EDITION_1_TEST_ONLY
            - EDITION_2_TEST_ONLY
            - EDITION_99997_TEST_ONLY
            - EDITION_99998_TEST_ONLY
            - EDITION_99999_TEST_ONLY
            - EDITION_MAX
        defaultInstanceForType:
          $ref: '#/components/schemas/CvFileDescriptorProto'
        syntax:
          type: string
        enumTypeCount:
          type: integer
          format: int32
        extensionCount:
          type: integer
          format: int32
        parserForType:
          $ref: '#/components/schemas/ParserFileDescriptorProto'
        serializedSize:
          type: integer
          format: int32
        publicDependencyCount:
          type: integer
          format: int32
        dependencyCount:
          type: integer
          format: int32
        messageTypeCount:
          type: integer
          format: int32
        serviceCount:
          type: integer
          format: int32
        packageBytes:
          $ref: '#/components/schemas/ByteString'
        dependencyList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        publicDependencyList:
          type: array
          items:
            type: integer
            format: int32
        weakDependencyList:
          type: array
          items:
            type: integer
            format: int32
        weakDependencyCount:
          type: integer
          format: int32
        messageTypeList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProto'
        messageTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/DescriptorProtoOrBuilder'
        enumTypeList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProto'
        enumTypeOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/EnumDescriptorProtoOrBuilder'
        serviceList:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDescriptorProto'
        serviceOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/ServiceDescriptorProtoOrBuilder'
        extensionList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProto'
        extensionOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/FieldDescriptorProtoOrBuilder'
        optionsOrBuilder:
          $ref: '#/components/schemas/FileOptionsOrBuilder'
        sourceCodeInfo:
          $ref: '#/components/schemas/CvSourceCodeInfo'
        sourceCodeInfoOrBuilder:
          $ref: '#/components/schemas/SourceCodeInfoOrBuilder'
        syntaxBytes:
          $ref: '#/components/schemas/ByteString'
        nameBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CvGovernanceMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        deny:
          type: boolean
        detailsCount:
          type: integer
          format: int32
        detailsOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/CvPolicySetMetadataOrBuilder'
        messageBytes:
          $ref: '#/components/schemas/ByteString'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        entityBytes:
          $ref: '#/components/schemas/ByteString'
        actionBytes:
          $ref: '#/components/schemas/ByteString'
        detailsList:
          type: array
          items:
            $ref: '#/components/schemas/CvPolicySetMetadata'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        message:
          type: string
        id:
          type: string
        type:
          type: string
        timestamp:
          type: integer
          format: int64
        initialized:
          type: boolean
        status:
          type: string
        action:
          type: string
        entity:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/CvGovernanceMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserGovernanceMetadata'
        serializedSize:
          type: integer
          format: int32
        orgId:
          type: string
        created:
          type: integer
          format: int64
        accountId:
          type: string
        typeBytes:
          $ref: '#/components/schemas/ByteString'
        projectId:
          type: string
        idBytes:
          $ref: '#/components/schemas/ByteString'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CvPolicyMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        policyIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyNameBytes:
          $ref: '#/components/schemas/ByteString'
        severityBytes:
          $ref: '#/components/schemas/ByteString'
        denyMessagesList:
          type: array
          properties:
            empty:
              type: boolean
          items:
            type: string
        denyMessagesCount:
          type: integer
          format: int32
        errorBytes:
          $ref: '#/components/schemas/ByteString'
        policyId:
          type: string
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        policyName:
          type: string
        severity:
          type: string
        initialized:
          type: boolean
        identifier:
          type: string
        status:
          type: string
        error:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/CvPolicyMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicyMetadata'
        serializedSize:
          type: integer
          format: int32
        orgId:
          type: string
        created:
          type: integer
          format: int64
        accountId:
          type: string
        projectId:
          type: string
        updated:
          type: integer
          format: int64
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CvPolicySetMetadata:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        deny:
          type: boolean
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/CvPolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        initialized:
          type: boolean
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        defaultInstanceForType:
          $ref: '#/components/schemas/CvPolicySetMetadata'
        parserForType:
          $ref: '#/components/schemas/ParserPolicySetMetadata'
        serializedSize:
          type: integer
          format: int32
        orgId:
          type: string
        created:
          type: integer
          format: int64
        accountId:
          type: string
        projectId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    CvPolicySetMetadataOrBuilder:
      type: object
      properties:
        deny:
          type: boolean
        statusBytes:
          $ref: '#/components/schemas/ByteString'
        policySetId:
          type: string
        policySetIdBytes:
          $ref: '#/components/schemas/ByteString'
        policyMetadataList:
          type: array
          items:
            $ref: '#/components/schemas/CvPolicyMetadata'
        policyMetadataCount:
          type: integer
          format: int32
        policyMetadataOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/PolicyMetadataOrBuilder'
        policySetName:
          type: string
        policySetNameBytes:
          $ref: '#/components/schemas/ByteString'
        projectIdBytes:
          $ref: '#/components/schemas/ByteString'
        orgIdBytes:
          $ref: '#/components/schemas/ByteString'
        accountIdBytes:
          $ref: '#/components/schemas/ByteString'
        identifierBytes:
          $ref: '#/components/schemas/ByteString'
        descriptionBytes:
          $ref: '#/components/schemas/ByteString'
        identifier:
          type: string
        description:
          type: string
        status:
          type: string
        orgId:
          type: string
        created:
          type: integer
          format: int64
        accountId:
          type: string
        projectId:
          type: string
        allFields:
          type: object
          additionalProperties:
            type: object
        defaultInstanceForType:
          $ref: '#/components/schemas/Message'
        initializationErrorString:
          type: string
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        initialized:
          type: boolean
    CvResponseDTOListEnvironmentResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/CvEnvironmentResponse'
        metaData:
          type: object
        correlationId:
          type: string
    CvSourceCodeInfo:
      type: object
      properties:
        unknownFields:
          $ref: '#/components/schemas/UnknownFieldSet'
        initialized:
          type: boolean
        defaultInstanceForType:
          $ref: '#/components/schemas/CvSourceCodeInfo'
        parserForType:
          $ref: '#/components/schemas/ParserSourceCodeInfo'
        serializedSize:
          type: integer
          format: int32
        locationCount:
          type: integer
          format: int32
        locationOrBuilderList:
          type: array
          items:
            $ref: '#/components/schemas/LocationOrBuilder'
        locationList:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        allFields:
          type: object
          additionalProperties:
            type: object
        initializationErrorString:
          type: string
        descriptorForType:
          $ref: '#/components/schemas/Descriptor'
        memoizedSerializedSize:
          type: integer
          format: int32
          writeOnly: true
    HealthSourceDTO:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
            - APP_DYNAMICS
            - BIGQUERY_LOG
            - SPLUNK
            - SPLUNK_METRIC
            - STACKDRIVER
            - STACKDRIVER_LOG
            - KUBERNETES
            - NEW_RELIC
            - NEW_RELIC_GRAPHQL
            - PROMETHEUS
            - DATADOG_METRICS
            - DATADOG_LOG
            - APM_GROUPED_DATADOG_METRICS
            - ERROR_TRACKING
            - DYNATRACE
            - DYNATRACE_GRAIL_LOGS
            - CUSTOM_HEALTH_METRIC
            - CUSTOM_HEALTH_LOG
            - ELASTICSEARCH
            - CLOUDWATCH_METRICS
            - AWS_PROMETHEUS
            - SUMOLOGIC_METRICS
            - SUMOLOGIC_LOG
            - SPLUNK_SIGNALFX_METRICS
            - GRAFANA_LOKI_LOGS
            - AZURE_LOGS
            - AZURE_METRICS
            - CLOUDWATCH_LOG
        verificationType:
          type: string
          enum:
            - TIME_SERIES
            - LOG
    RestResponseListHealthSourceDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/HealthSourceDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    PageResponseMonitoredServiceResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseMonitoredServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseMonitoredServiceResponse'
        metaData:
          type: object
        correlationId:
          type: string
    MonitoredServicePlatformResponse:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        serviceRef:
          type: string
        environmentRefs:
          type: array
          items:
            type: string
        serviceName:
          type: string
        type:
          type: string
          enum:
            - Application
            - Infrastructure
        tags:
          type: object
          additionalProperties:
            type: string
        configuredChangeSources:
          type: integer
          format: int32
        configuredHealthSources:
          type: integer
          format: int32
    PageResponseMonitoredServicePlatformResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServicePlatformResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseMonitoredServicePlatformResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseMonitoredServicePlatformResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOListSecondaryEventsResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/SecondaryEventsResponse'
        metaData:
          type: object
        correlationId:
          type: string
    SecondaryEventsResponse:
      type: object
      properties:
        type:
          type: string
          enum:
            - Downtime
            - DataCollectionFailure
            - Annotation
            - ErrorBudgetReset
            - SrmAnalysisImpact
        identifiers:
          type: array
          items:
            type: string
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
    AnnotationInstance:
      required:
        - message
        - uuid
      type: object
      properties:
        uuid:
          type: string
        message:
          type: string
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        createdBy:
          type: string
        createdAt:
          type: integer
          format: int64
    AnnotationInstanceDetails:
      type: object
      allOf:
        - $ref: '#/components/schemas/SecondaryEventDetails'
        - type: object
          properties:
            annotations:
              type: array
              items:
                $ref: '#/components/schemas/AnnotationInstance'
    DataCollectionFailureInstanceDetails:
      required:
        - message
      type: object
      allOf:
        - $ref: '#/components/schemas/SecondaryEventDetails'
        - type: object
          properties:
            message:
              type: string
    DowntimeInstanceDetails:
      type: object
      allOf:
        - $ref: '#/components/schemas/SecondaryEventDetails'
    ResponseDTOSecondaryEventDetailsResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SecondaryEventDetailsResponse'
        metaData:
          type: object
        correlationId:
          type: string
    SLOErrorBudgetResetInstanceDetails:
      type: object
      allOf:
        - $ref: '#/components/schemas/SecondaryEventDetails'
        - type: object
          properties:
            errorBudgetIncrementMinutes:
              type: integer
              format: int32
    SRMAnalysisStepInstanceDetails:
      type: object
      allOf:
        - $ref: '#/components/schemas/SecondaryEventDetails'
        - type: object
          properties:
            stepName:
              type: string
            analysisDuration:
              type: object
              properties:
                seconds:
                  type: integer
                  format: int64
                zero:
                  type: boolean
                nano:
                  type: integer
                  format: int32
                negative:
                  type: boolean
                units:
                  type: array
                  items:
                    type: object
                    properties:
                      durationEstimated:
                        type: boolean
                      timeBased:
                        type: boolean
                      dateBased:
                        type: boolean
            analysisStatus:
              type: string
              enum:
                - RUNNING
                - COMPLETED
                - ABORTED
    SecondaryEventDetails:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    SecondaryEventDetailsResponse:
      required:
        - details
        - startTime
        - type
      type: object
      properties:
        type:
          type: string
          enum:
            - Downtime
            - DataCollectionFailure
            - Annotation
            - ErrorBudgetReset
            - SrmAnalysisImpact
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        details:
          $ref: '#/components/schemas/SecondaryEventDetails'
    MonitoredServiceChangeDetailSLO:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        outOfRange:
          type: boolean
    RestResponseListMonitoredServiceChangeDetailSLO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceChangeDetailSLO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    CategoryCountDetails:
      type: object
      properties:
        count:
          type: integer
          format: int64
        countInPrecedingWindow:
          type: integer
          format: int64
        percentageChange:
          type: number
          format: double
    ChangeSummaryDTO:
      type: object
      properties:
        categoryCountMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CategoryCountDetails'
        total:
          $ref: '#/components/schemas/CategoryCountDetails'
    HistoricalTrend:
      type: object
      properties:
        healthScores:
          type: array
          items:
            $ref: '#/components/schemas/RiskData'
    MonitoredServiceListItemDTO:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        serviceRef:
          type: string
        environmentRef:
          type: string
        environmentRefList:
          type: array
          items:
            type: string
        serviceName:
          type: string
        environmentName:
          type: string
        type:
          type: string
          enum:
            - Application
            - Infrastructure
        healthMonitoringEnabled:
          type: boolean
        currentHealthScore:
          $ref: '#/components/schemas/RiskData'
        dependentHealthScore:
          type: array
          items:
            $ref: '#/components/schemas/RiskData'
        historicalTrend:
          $ref: '#/components/schemas/HistoricalTrend'
        changeSummary:
          $ref: '#/components/schemas/ChangeSummaryDTO'
        tags:
          type: object
          additionalProperties:
            type: string
        serviceMonitoringEnabled:
          type: boolean
        sloHealthIndicators:
          type: array
          items:
            $ref: '#/components/schemas/SloHealthIndicatorDTO'
    RiskData:
      type: object
      properties:
        healthScore:
          type: integer
          format: int32
        riskStatus:
          type: string
          enum:
            - NO_DATA
            - NO_ANALYSIS
            - HEALTHY
            - OBSERVE
            - NEED_ATTENTION
            - UNHEALTHY
            - CUSTOMER_DEFINED_UNHEALTHY
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        timeRangeParams:
          $ref: '#/components/schemas/TimeRangeParams'
    SloHealthIndicatorDTO:
      type: object
      properties:
        serviceLevelObjectiveIdentifier:
          type: string
        monitoredServiceIdentifier:
          type: string
        errorBudgetRemainingPercentage:
          type: number
          format: double
        errorBudgetRemainingMinutes:
          type: integer
          format: int32
        errorBudgetBurnRate:
          type: number
          format: double
        errorBudgetRisk:
          type: string
          enum:
            - EXHAUSTED
            - UNHEALTHY
            - NEED_ATTENTION
            - OBSERVE
            - HEALTHY
    TimeRangeParams:
      type: object
      properties:
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
    ApiCallLogDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGLog'
        - type: object
          properties:
            requests:
              type: array
              items:
                $ref: '#/components/schemas/ApiCallLogDTOField'
            responses:
              type: array
              items:
                $ref: '#/components/schemas/ApiCallLogDTOField'
            requestTime:
              type: integer
              format: int64
            responseTime:
              type: integer
              format: int64
    ApiCallLogDTOField:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        type:
          type: string
          enum:
            - JSON
            - XML
            - NUMBER
            - URL
            - TEXT
            - TIMESTAMP
    CVNGLog:
      type: object
      properties:
        accountId:
          type: string
        traceableId:
          type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/CVNGLogTag'
        createdAt:
          type: integer
          format: int64
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        traceableType:
          type: string
          enum:
            - ONBOARDING
            - VERIFICATION_TASK
            - VERIFICATION_JOB_INSTANCE
        type:
          type: string
          enum:
            - ApiCallLog
            - ExecutionLog
      description: This is the CVNG Log entity defined in Harness
      discriminator:
        propertyName: type
    CVNGLogTag:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
        type:
          type: string
          enum:
            - TIMESTAMP
            - STRING
            - DEBUG
    ExecutionLogDTO:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGLog'
        - type: object
          properties:
            log:
              type: string
            logLevel:
              type: string
              enum:
                - INFO
                - WARN
                - ERROR
    PageResponseCVNGLog:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/CVNGLog'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    RestResponsePageResponseCVNGLog:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/PageResponseCVNGLog'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    MonitoredServiceReference:
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        accountIdentifier:
          type: string
        identifier:
          type: string
        serviceIdentifier:
          type: string
        environmentIdentifiers:
          type: array
          items:
            type: string
        lastReconciledTimestamp:
          type: integer
          format: int64
        reconciliationStatus:
          type: string
          enum:
            - NO_RECONCILIATION_REQUIRED
            - INPUT_REQUIRED_FOR_RECONCILIATION
            - NO_INPUT_REQUIRED_FOR_RECONCILIATION
    PageResponseMonitoredServiceReference:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceReference'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    RestResponsePageResponseMonitoredServiceReference:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/PageResponseMonitoredServiceReference'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    HealthScoreDTO:
      type: object
      properties:
        currentHealthScore:
          $ref: '#/components/schemas/RiskData'
        dependentHealthScore:
          $ref: '#/components/schemas/RiskData'
    ResponseDTOHealthScoreDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/HealthScoreDTO'
        metaData:
          type: object
        correlationId:
          type: string
    CVNGEmailChannelSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            userGroups:
              type: array
              items:
                type: string
            recipients:
              type: array
              items:
                type: string
    CVNGMSTeamsChannelSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            msTeamKeys:
              type: array
              items:
                type: string
            userGroups:
              type: array
              items:
                type: string
    CVNGNotificationChannel:
      required:
        - spec
      type: object
      properties:
        type:
          type: string
          enum:
            - Email
            - Slack
            - PagerDuty
            - MsTeams
            - Webhook
            - Rollback
        spec:
          $ref: '#/components/schemas/CVNGNotificationChannelSpec'
    CVNGNotificationChannelSpec:
      type: object
    CVNGPagerDutyChannelSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            userGroups:
              type: array
              items:
                type: string
            integrationKey:
              type: string
    CVNGRollbackSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            infrastructureId:
              type: string
            rollbackWindow:
              type: integer
              format: int32
    CVNGSlackChannelSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            userGroups:
              type: array
              items:
                type: string
            webhookUrl:
              type: string
    CVNGWebhookChannelSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CVNGNotificationChannelSpec'
        - type: object
          properties:
            userGroups:
              type: array
              items:
                type: string
            webhookUrl:
              type: string
            authorizationToken:
              type: string
            headers:
              type: object
              additionalProperties:
                type: string
            expressionFunctorToken:
              type: integer
              format: int64
    ChangeImpactConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            changeEventTypes:
              type: array
              items:
                type: string
                enum:
                  - Deployment
                  - Infrastructure
                  - Incident
            changeCategories:
              type: array
              items:
                type: string
                enum:
                  - Deployment
                  - Infrastructure
                  - Alert
                  - FeatureFlag
                  - ChaosExperiment
            threshold:
              maximum: 100
              minimum: 0
              type: number
              format: double
            period:
              type: string
    ChangeObservedConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            changeEventTypes:
              type: array
              items:
                type: string
                enum:
                  - Deployment
                  - Infrastructure
                  - Incident
            changeCategories:
              type: array
              items:
                type: string
                enum:
                  - Deployment
                  - Infrastructure
                  - Alert
                  - FeatureFlag
                  - ChaosExperiment
    DeploymentImpactReportConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
    ErrorBudgetBurnRateConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            threshold:
              minimum: 0
              type: number
              format: double
            lookBackDuration:
              type: string
    ErrorBudgetRemainingMinutesConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            threshold:
              type: number
              format: double
    ErrorBudgetRemainingPercentageConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            threshold:
              minimum: 0
              type: number
              format: double
    ErrorTrackingConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            errorTrackingEventTypes:
              type: array
              items:
                type: string
                enum:
                  - Exceptions
                  - LogErrors
                  - HttpErrors
                  - CustomErrors
                  - TimeoutErrors
                  - SwallowedExceptions
                  - CaughtExceptions
                  - UncaughtExceptions
                  - LogWarnings
            errorTrackingEventStatus:
              type: array
              items:
                type: string
                enum:
                  - NewEvents
                  - CriticalEvents
                  - ResurfacedEvents
            aggregated:
              type: boolean
            savedFilterId:
              type: integer
              format: int64
            volumeThresholdCount:
              type: integer
              format: int32
            volumeThresholdMinutes:
              type: integer
              format: int32
    HealthScoreConditionSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            threshold:
              maximum: 100
              minimum: 0
              type: number
              format: double
            period:
              type: string
    NotificationRule:
      required:
        - conditions
        - identifier
        - name
        - notificationMethod
        - type
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
            - MonitoredService
            - ServiceLevelObjective
            - FireHydrant
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/NotificationRuleCondition'
        notificationMethod:
          $ref: '#/components/schemas/CVNGNotificationChannel'
      description: This is the Notification Rule entity defined in Harness
    NotificationRuleCondition:
      required:
        - spec
      type: object
      properties:
        type:
          type: string
          enum:
            - ErrorBudgetRemainingPercentage
            - ErrorBudgetRemainingMinutes
            - SLIValue
            - ErrorBudgetBurnRate
            - ChangeImpact
            - HealthScore
            - ChangeObserved
            - CodeErrors
            - FireHydrantReport
            - DeploymentImpactReport
        spec:
          $ref: '#/components/schemas/NotificationRuleConditionSpec'
    NotificationRuleConditionSpec:
      type: object
    NotificationRuleResponse:
      required:
        - notificationRule
      type: object
      properties:
        notificationRule:
          $ref: '#/components/schemas/NotificationRule'
        enabled:
          type: boolean
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
    PageResponseNotificationRuleResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/NotificationRuleResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseNotificationRuleResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseNotificationRuleResponse'
        metaData:
          type: object
        correlationId:
          type: string
    SLIValueSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/NotificationRuleConditionSpec'
        - type: object
          properties:
            threshold:
              minimum: 0
              type: number
              format: double
    ResponseDTOHistoricalTrend:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/HistoricalTrend'
        metaData:
          type: object
        correlationId:
          type: string
    CvResponseDTOListServiceResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          type: array
          items:
            $ref: '#/components/schemas/CvServiceResponse'
        metaData:
          type: object
        correlationId:
          type: string
    CvServiceResponse:
      type: object
      properties:
        service:
          $ref: '#/components/schemas/CvServiceResponseDetails'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        entityValidityDetails:
          $ref: '#/components/schemas/CvEntityGitDetails'
        governanceMetadata:
          $ref: '#/components/schemas/CvGovernanceMetadata'
    CvServiceResponseDetails:
      type: object
      properties:
        accountId:
          type: string
        identifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        name:
          type: string
        description:
          type: string
        deleted:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
        yaml:
          type: string
        type:
          type: string
          enum:
            - Kubernetes
            - NativeHelm
            - Ssh
            - WinRm
            - ServerlessAwsLambda
            - AzureWebApp
            - AzureFunction
            - CustomDeployment
            - ECS
            - Elastigroup
            - TAS
            - Asg
            - GoogleCloudFunctions
            - AwsLambda
            - AWS_SAM
            - SERVICE_YAML_V1_TYPE
            - GoogleCloudRun
      description: This is the Service entity defined in Harness
    MetricDTO:
      type: object
      properties:
        identifier:
          type: string
        metricName:
          type: string
    RestResponseListMetricDTO:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/MetricDTO'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    PageResponseMonitoredServiceListItemDTO:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceListItemDTO'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseMonitoredServiceListItemDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseMonitoredServiceListItemDTO'
        metaData:
          type: object
        correlationId:
          type: string
    HealthMonitoringFlagResponse:
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        healthMonitoringEnabled:
          type: boolean
    RestResponseHealthMonitoringFlagResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/HealthMonitoringFlagResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    MonitoredServiceDetail:
      type: object
      properties:
        monitoredServiceIdentifier:
          type: string
        monitoredServiceName:
          type: string
        healthSourceIdentifier:
          type: string
        healthSourceName:
          type: string
        serviceIdentifier:
          type: string
        serviceName:
          type: string
        environmentIdentifier:
          type: string
        environmentName:
          type: string
        projectParams:
          $ref: '#/components/schemas/ProjectParams'
        projectName:
          type: string
        orgName:
          type: string
    RestResponseListMonitoredServiceDetail:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceDetail'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    AffectedEntity:
      required:
        - envName
        - monitoredServiceIdentifier
        - serviceName
      type: object
      properties:
        serviceName:
          type: string
        envName:
          type: string
        monitoredServiceIdentifier:
          type: string
    AllEntitiesRule:
      type: object
      allOf:
        - $ref: '#/components/schemas/EntitiesRule'
    Downtime:
      required:
        - category
        - entitiesRule
        - identifier
        - name
        - orgIdentifier
        - projectIdentifier
        - spec
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        category:
          type: string
          enum:
            - ScheduledMaintenance
            - Deployment
            - Other
        scope:
          type: string
          enum:
            - Project
            - Entity
        spec:
          $ref: '#/components/schemas/DowntimeSpecDTO'
        entitiesRule:
          $ref: '#/components/schemas/EntitiesRule'
        enabled:
          type: boolean
      description: This is the Downtime entity defined in Harness
    DowntimeDuration:
      required:
        - durationType
        - durationValue
      type: object
      properties:
        durationType:
          type: string
          enum:
            - Minutes
            - Hours
            - Days
            - Weeks
        durationValue:
          type: integer
          format: int32
    DowntimeRecurrence:
      required:
        - recurrenceType
        - recurrenceValue
      type: object
      properties:
        recurrenceType:
          type: string
          enum:
            - Day
            - Week
            - Month
            - Year
        recurrenceValue:
          type: integer
          format: int32
    DowntimeResponse:
      required:
        - downtime
      type: object
      properties:
        downtime:
          $ref: '#/components/schemas/Downtime'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
    DowntimeSpec:
      required:
        - timezone
        - type
      type: object
      properties:
        timezone:
          type: string
        startTime:
          type: integer
          format: int64
        startDateTime:
          type: string
        type:
          type: string
      discriminator:
        propertyName: type
    DowntimeSpecDTO:
      required:
        - spec
      type: object
      properties:
        type:
          type: string
          enum:
            - Onetime
            - Recurring
        spec:
          $ref: '#/components/schemas/DowntimeSpec'
    EntitiesRule:
      type: object
      properties:
        affectedEntity:
          $ref: '#/components/schemas/AffectedEntity'
        type:
          type: string
          enum:
            - All
            - Identifiers
      discriminator:
        propertyName: type
    CvEntityDetails:
      required:
        - entityRef
      type: object
      properties:
        entityRef:
          type: string
        enabled:
          type: boolean
    EntityIdentifiersRule:
      required:
        - entityIdentifiers
      type: object
      allOf:
        - $ref: '#/components/schemas/EntitiesRule'
        - type: object
          properties:
            entityIdentifiers:
              type: array
              items:
                $ref: '#/components/schemas/CvEntityDetails'
    OnetimeDowntimeSpec:
      required:
        - spec
        - timezone
      type: object
      allOf:
        - $ref: '#/components/schemas/DowntimeSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/OnetimeSpec'
            type:
              type: string
              enum:
                - Duration
                - EndTime
    OnetimeDurationBasedSpec:
      required:
        - downtimeDuration
      type: object
      allOf:
        - $ref: '#/components/schemas/OnetimeSpec'
        - type: object
          properties:
            downtimeDuration:
              $ref: '#/components/schemas/DowntimeDuration'
    OnetimeEndTimeBasedSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/OnetimeSpec'
        - type: object
          properties:
            endTime:
              type: integer
              format: int64
            endDateTime:
              type: string
    OnetimeSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    RecurringDowntimeSpec:
      required:
        - downtimeDuration
        - downtimeRecurrence
        - timezone
      type: object
      allOf:
        - $ref: '#/components/schemas/DowntimeSpec'
        - type: object
          properties:
            recurrenceEndTime:
              type: integer
              format: int64
            recurrenceEndDateTime:
              type: string
            downtimeDuration:
              $ref: '#/components/schemas/DowntimeDuration'
            downtimeRecurrence:
              $ref: '#/components/schemas/DowntimeRecurrence'
    RestResponseDowntimeResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/DowntimeResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    MSDropdownResponse:
      required:
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        serviceRef:
          type: string
        environmentRef:
          type: string
    PageResponseMSDropdownResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/MSDropdownResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseMSDropdownResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseMSDropdownResponse'
        metaData:
          type: object
        correlationId:
          type: string
    DowntimeHistoryView:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        category:
          type: string
          enum:
            - ScheduledMaintenance
            - Deployment
            - Other
        affectedEntities:
          type: array
          items:
            $ref: '#/components/schemas/AffectedEntity'
        duration:
          $ref: '#/components/schemas/DowntimeDuration'
        startTime:
          type: integer
          format: int64
        startDateTime:
          type: string
        endTime:
          type: integer
          format: int64
        endDateTime:
          type: string
        spec:
          $ref: '#/components/schemas/DowntimeSpecDTO'
        downtimeDetails:
          $ref: '#/components/schemas/DowntimeSpecDTO'
    PageResponseDowntimeHistoryView:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/DowntimeHistoryView'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseDowntimeHistoryView:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseDowntimeHistoryView'
        metaData:
          type: object
        correlationId:
          type: string
    DowntimeListView:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        category:
          type: string
          enum:
            - ScheduledMaintenance
            - Deployment
            - Other
        affectedEntities:
          type: array
          items:
            $ref: '#/components/schemas/AffectedEntity'
        description:
          type: string
        duration:
          $ref: '#/components/schemas/DowntimeDuration'
        downtimeStatusDetails:
          $ref: '#/components/schemas/DowntimeStatusDetails'
        enabled:
          type: boolean
        lastModified:
          $ref: '#/components/schemas/LastModified'
        spec:
          $ref: '#/components/schemas/DowntimeSpecDTO'
        pastOrActiveInstancesCount:
          type: integer
          format: int32
    DowntimeStatusDetails:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/DowntimeStatus'
        start_time:
          type: integer
          description: Start time of the Downtime.
          format: int64
        end_time:
          type: integer
          description: End time of the Downtime.
          format: int64
        end_date_time:
          type: string
          description: 'End time of the Downtime in the format: yyyy-MM-dd hh:mm a'
      description: Details of Downtime with Status
    LastModified:
      type: object
      properties:
        lastModifiedBy:
          type: string
        lastModifiedAt:
          type: integer
          format: int64
    PageResponseDowntimeListView:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/DowntimeListView'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseDowntimeListView:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseDowntimeListView'
        metaData:
          type: object
        correlationId:
          type: string
    RestResponseNotificationRuleResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/NotificationRuleResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    EnvironmentIdentifierResponse:
      required:
        - identifier
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
    PageResponseEnvironmentIdentifierResponse:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/EnvironmentIdentifierResponse'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseEnvironmentIdentifierResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseEnvironmentIdentifierResponse'
        metaData:
          type: object
        correlationId:
          type: string
    ResponseDTOSLORiskCountResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SLORiskCountResponse'
        metaData:
          type: object
        correlationId:
          type: string
    RiskCount:
      type: object
      properties:
        count:
          type: integer
          format: int32
        displayName:
          type: string
        identifier:
          type: string
    SLORiskCountResponse:
      type: object
      properties:
        totalCount:
          type: integer
          format: int32
        riskCounts:
          type: array
          items:
            $ref: '#/components/schemas/RiskCount'
    CalenderSLOTargetSpec:
      required:
        - spec
      type: object
      allOf:
        - $ref: '#/components/schemas/SLOTargetSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/CalenderSpec'
            type:
              type: string
              enum:
                - Weekly
                - Monthly
                - Quarterly
    CalenderSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    MonthlyCalenderSpec:
      required:
        - dayOfMonth
      type: object
      allOf:
        - $ref: '#/components/schemas/CalenderSpec'
        - type: object
          properties:
            dayOfMonth:
              type: integer
              format: int32
    QuarterlyCalenderSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/CalenderSpec'
        - type: object
          properties:
            quarterStart:
              type: string
              enum:
                - Jan-Apr-Jul-Oct
                - Feb-May-Aug-Nov
                - Mar-Jun-Sep-Dec
    RollingSLOTargetSpec:
      required:
        - periodLength
      type: object
      allOf:
        - $ref: '#/components/schemas/SLOTargetSpec'
        - type: object
          properties:
            periodLength:
              type: string
    SLOTargetFilterDTO:
      required:
        - spec
      type: object
      properties:
        type:
          type: string
          enum:
            - Rolling
            - Calender
        spec:
          $ref: '#/components/schemas/SLOTargetSpec'
    SLOTargetSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    WeeklyCalendarSpec:
      required:
        - dayOfWeek
      type: object
      allOf:
        - $ref: '#/components/schemas/CalenderSpec'
        - type: object
          properties:
            dayOfWeek:
              type: string
              enum:
                - Mon
                - Tue
                - Wed
                - Thu
                - Fri
                - Sat
                - Sun
    PageResponseSLOConsumptionBreakdown:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/SLOConsumptionBreakdown'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseSLOConsumptionBreakdown:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseSLOConsumptionBreakdown'
        metaData:
          type: object
        correlationId:
          type: string
    SLOConsumptionBreakdown:
      required:
        - errorBudgetBurned
        - projectParams
        - sliStatusPercentage
        - sloIdentifier
        - sloName
        - sloTargetPercentage
        - weightagePercentage
      type: object
      properties:
        sloIdentifier:
          type: string
        sloName:
          type: string
        monitoredServiceIdentifier:
          type: string
        serviceName:
          type: string
        environmentIdentifier:
          type: string
        weightagePercentage:
          type: number
          format: double
        sloTargetPercentage:
          type: number
          format: double
        sliStatusPercentage:
          type: number
          format: double
        errorBudgetBurned:
          type: integer
          format: int64
        contributedErrorBudgetBurned:
          type: integer
          format: int32
        projectParams:
          $ref: '#/components/schemas/ProjectParams'
        orgName:
          type: string
        projectName:
          type: string
        sloError:
          $ref: '#/components/schemas/SLOError'
    SLOError:
      required:
        - failed_state
      type: object
      properties:
        failed_state:
          type: boolean
          description: >-
            Failed State of the SLO. If SLO has some failures this field will be
            true.
        error_message:
          type: string
          description: Error Message if there is an SLO failure.
        slo_error_type:
          type: string
          description: Types of SLO Errors.
      description: SLO Error Details.
    BurnRate:
      required:
        - currentRatePercentage
      type: object
      properties:
        currentRatePercentage:
          type: number
          format: double
    Point:
      type: object
      properties:
        timestamp:
          type: integer
          format: int64
        value:
          type: number
          format: double
        enabled:
          type: boolean
    ResponseDTOSLODashboardDetail:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SLODashboardDetail'
        metaData:
          type: object
        correlationId:
          type: string
    SLODashboardDetail:
      type: object
      properties:
        sloDashboardWidget:
          $ref: '#/components/schemas/SLODashboardWidget'
        description:
          type: string
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
        timeRangeFilters:
          type: array
          items:
            $ref: '#/components/schemas/TimeRangeFilter'
    SLODashboardWidget:
      required:
        - burnRate
        - currentPeriodEndTime
        - currentPeriodLengthDays
        - currentPeriodStartTime
        - errorBudgetBurndown
        - errorBudgetRemaining
        - errorBudgetRemainingPercentage
        - errorBudgetRisk
        - sloIdentifier
        - sloPerformanceTrend
        - sloTargetPercentage
        - sloTargetType
        - sloType
        - timeRemainingDays
        - title
        - totalErrorBudget
      type: object
      properties:
        sloIdentifier:
          type: string
        title:
          type: string
        monitoredServiceIdentifier:
          type: string
        monitoredServiceName:
          type: string
        healthSourceIdentifier:
          type: string
        healthSourceName:
          type: string
        serviceIdentifier:
          type: string
        serviceName:
          type: string
        environmentIdentifier:
          type: string
        environmentName:
          type: string
        monitoredServiceDetails:
          type: array
          items:
            $ref: '#/components/schemas/MonitoredServiceDetail'
        tags:
          type: object
          additionalProperties:
            type: string
        evaluationType:
          type: string
          enum:
            - Window
            - Request
            - MetricLess
        sloType:
          type: string
          enum:
            - Simple
            - Composite
        burnRate:
          $ref: '#/components/schemas/BurnRate'
        timeRemainingDays:
          type: integer
          format: int32
        errorBudgetRemainingPercentage:
          type: number
          format: double
        errorBudgetRemaining:
          type: integer
          format: int64
        totalErrorBudget:
          type: integer
          format: int64
        sloTargetType:
          type: string
          enum:
            - Rolling
            - Calender
        currentPeriodLengthDays:
          type: integer
          format: int32
        currentPeriodStartTime:
          type: integer
          format: int64
        currentPeriodEndTime:
          type: integer
          format: int64
        sloTargetPercentage:
          type: number
          format: double
        errorBudgetBurndown:
          type: array
          items:
            $ref: '#/components/schemas/Point'
        sloPerformanceTrend:
          type: array
          items:
            $ref: '#/components/schemas/Point'
        isTotalErrorBudgetApplicable:
          type: boolean
          writeOnly: true
        isRecalculatingSLI:
          type: boolean
          writeOnly: true
        isCalculatingSLI:
          type: boolean
          writeOnly: true
        sloError:
          $ref: '#/components/schemas/SLOError'
        recalculatingSLI:
          type: boolean
        errorBudgetRisk:
          type: string
          enum:
            - EXHAUSTED
            - UNHEALTHY
            - NEED_ATTENTION
            - OBSERVE
            - HEALTHY
        calculatingSLI:
          type: boolean
        totalErrorBudgetApplicable:
          type: boolean
    TimeRangeFilter:
      type: object
      properties:
        displayName:
          type: string
        durationMilliSeconds:
          type: integer
          format: int64
    PageResponseSLOHealthListView:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/SLOHealthListView'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseSLOHealthListView:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseSLOHealthListView'
        metaData:
          type: object
        correlationId:
          type: string
    SLOHealthListView:
      required:
        - burn_rate
        - error_budget_remaining
        - error_budget_remaining_percentage
        - evaluation_type
        - name
        - no_of_active_alerts
        - project_params
        - slo_identifier
        - slo_target_percentage
        - slo_type
        - total_error_budget
      type: object
      properties:
        slo_identifier:
          type: string
          description: Identifier of the SLO.
        name:
          type: string
          description: Name of the SLO.
        org_name:
          type: string
          description: Organization Name to which the SLO belongs.
        project_name:
          type: string
          description: Project Name to which the SLO belongs.
        monitored_service_identifier:
          type: string
          description: Identifier of the Monitored Service to which the SLO is associated.
        monitored_service_name:
          type: string
          description: Name of the Monitored Service to which the SLO is associated.
        service_identifier:
          type: string
          description: Identifier of the Service to which the SLO is associated.
        health_source_identifier:
          type: string
          description: Identifier of the Health Source to which the SLO is associated.
        health_source_name:
          type: string
          description: Identifier of the Health Source to which the SLO is associated.
        service_name:
          type: string
          description: Name of the Service to which the SLO is associated.
        environment_identifier:
          type: string
          description: Identifier of the Environment to which the SLO is associated.
        environment_name:
          type: string
          description: Name of the Environment to which the SLO is associated.
        tags:
          type: array
          description: List of tags for SLO.
          items:
            type: string
            description: List of tags for SLO.
        description:
          type: string
          description: Description for the SLO.
        user_journey_name:
          type: string
          description: Name of the first User Journey for the SLO.
        user_journeys:
          type: array
          items:
            $ref: '#/components/schemas/UserJourney'
        burn_rate:
          type: number
          description: >-
            Burn rate per day of the SLO. The unit is "Minutes" if the
            Evaluation type is Window, for Request based it's "Request".
          format: double
        error_budget_remaining_percentage:
          type: number
          description: Error Budget Remaining Percentage of the SLO.
          format: double
        error_budget_remaining:
          type: integer
          description: >-
            Error Budget Remaining of the SLO. The unit is "Minutes" if the
            Evaluation type is Window, for Request based it's "Request".
          format: int32
        total_error_budget:
          type: integer
          description: >-
            Total Error Budget of the SLO. The unit is "Minutes" if the
            Evaluation type is Window, for Request based it's "Request".
          format: int32
        slo_target_type:
          $ref: '#/components/schemas/SLOTargetType'
        slo_type:
          $ref: '#/components/schemas/ServiceLevelObjectiveType'
        slo_target_percentage:
          type: number
          description: Target Percentage of the SLO defined by the user.
          format: double
        no_of_active_alerts:
          type: integer
          description: Number of Notification Rules defined for the SLO.
          format: int32
        evaluation_type:
          $ref: '#/components/schemas/SLIEvaluationType'
        downtime_status_details:
          $ref: '#/components/schemas/DowntimeStatusDetails'
        project_params:
          $ref: '#/components/schemas/ProjectParams'
        slo_error:
          $ref: '#/components/schemas/SLOError'
        error_budget_risk:
          type: string
          description: >-
            Error Budget Risk for the SLO. - It's Healthy if Error Budget
            Remaining Percentage >= 75. - It's Observe if Error Budget Remaining
            Percentage >= 50 < 75. - It's Need Attention if Error Budget
            Remaining Percentage >= 25 < 50. - It's Unhealthy if Error Budget
            Remaining Percentage >= 0 < 25. - It's Exhausted if Error Budget
            Remaining Percentage < 0. 
      description: Health List View of SLO.
    UserJourneyDTO:
      required:
        - identifier
        - name
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
    SLODashboardApiFilter:
      type: object
      properties:
        userJourneyIdentifiers:
          type: array
          items:
            type: string
        monitoredServiceIdentifier:
          type: string
        targetTypes:
          type: array
          items:
            type: string
            enum:
              - Rolling
              - Calender
        errorBudgetRisks:
          type: array
          items:
            type: string
            enum:
              - EXHAUSTED
              - UNHEALTHY
              - NEED_ATTENTION
              - OBSERVE
              - HEALTHY
        searchFilter:
          type: string
        type:
          type: string
          enum:
            - Simple
            - Composite
        sloTargetFilterDTO:
          $ref: '#/components/schemas/SLOTargetFilterDTO'
        compositeSLOIdentifier:
          type: string
        evaluationType:
          type: string
          enum:
            - Window
            - Request
            - MetricLess
        evaluationTypes:
          type: array
          items:
            type: string
            enum:
              - Window
              - Request
              - MetricLess
        childResource:
          type: boolean
        envIdentifiers:
          type: array
          items:
            type: string
    DataPoints:
      required:
        - timestamp
      type: object
      properties:
        value:
          type: number
          description: Value of the data point.
          format: double
        timestamp:
          type: integer
          description: Timestamp of the data point.
          format: int64
      description: Representation of one data point.
    RestResponseTimeGraphResponse:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/TimeGraphResponse'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    TimeGraphResponse:
      type: object
      properties:
        startTime:
          type: integer
          format: int64
        endTime:
          type: integer
          format: int64
        dataPoints:
          type: array
          items:
            $ref: '#/components/schemas/DataPoints'
    CompositeServiceLevelObjectiveSpec:
      required:
        - serviceLevelObjectivesDetails
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceLevelObjectiveSpec'
        - type: object
          properties:
            serviceLevelObjectivesDetails:
              maxItems: 30
              minItems: 2
              type: array
              items:
                $ref: '#/components/schemas/ServiceLevelObjectiveDetailsDTO'
            evaluationType:
              type: string
              enum:
                - Window
                - Request
                - MetricLess
            sloFormulaType:
              type: string
              enum:
                - WeightedAverage
                - LeastPerformance
    ServiceLevelObjectiveDetailsDTO:
      required:
        - accountId
        - orgIdentifier
        - projectIdentifier
        - serviceLevelObjectiveRef
        - weightagePercentage
      type: object
      properties:
        accountId:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        serviceLevelObjectiveRef:
          type: string
        weightagePercentage:
          maximum: 100
          minimum: 0
          type: number
          format: double
    AbstractServiceLevelObjective:
      required:
        - identifier
        - name
        - sloTarget
        - spec
        - type
        - userJourneyRefs
      type: object
      properties:
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        identifier:
          type: string
        name:
          type: string
        description:
          type: string
        tags:
          type: object
          additionalProperties:
            type: string
        userJourneyRefs:
          type: array
          items:
            type: string
        sloTarget:
          $ref: '#/components/schemas/SLOTargetDTO'
        type:
          type: string
          enum:
            - Simple
            - Composite
        spec:
          $ref: '#/components/schemas/ServiceLevelObjectiveSpec'
        notificationRuleRefs:
          type: array
          items:
            $ref: '#/components/schemas/NotificationRuleRefDTO'
        errorBudgetCalculationPeriod:
          type: integer
          format: int32
        errorBudgetCalculationValidity:
          type: integer
          format: int32
      description: This is the Service Level Objective V2 entity defined in Harness
    MetricLessServiceLevelIndicatorSpec:
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceLevelIndicatorSpec'
    RatioSLIMetricSpec:
      required:
        - eventType
        - metric1
        - metric2
        - thresholdType
        - thresholdValue
      type: object
      allOf:
        - $ref: '#/components/schemas/SLIMetricSpec'
        - type: object
          properties:
            eventType:
              type: string
              enum:
                - Good
                - Bad
            metric1:
              type: string
            metric2:
              type: string
            thresholdValue:
              type: number
              format: double
            thresholdType:
              type: string
              enum:
                - '>'
                - <
                - '>='
                - <=
            considerConsecutiveMinutes:
              maximum: 30
              type: integer
              format: int32
            considerAllConsecutiveMinutesFromStartAsBad:
              type: boolean
    RequestBasedServiceLevelIndicatorSpec:
      required:
        - eventType
        - metric1
        - metric2
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceLevelIndicatorSpec'
        - type: object
          properties:
            eventType:
              type: string
              enum:
                - Good
                - Bad
            metric1:
              type: string
            metric2:
              type: string
    RestResponseServiceLevelObjectiveV2Response:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/ServiceLevelObjectiveV2Response'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    SLIMetricSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    SLOTargetDTO:
      required:
        - sloTargetPercentage
        - spec
      type: object
      properties:
        type:
          type: string
          enum:
            - Rolling
            - Calender
        sloTargetPercentage:
          type: number
          format: double
        spec:
          $ref: '#/components/schemas/SLOTargetSpec'
    ServiceLevelIndicatorDTO:
      required:
        - spec
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        type:
          type: string
          enum:
            - Window
            - Request
            - MetricLess
        spec:
          $ref: '#/components/schemas/ServiceLevelIndicatorSpec'
        healthSourceRef:
          type: string
    ServiceLevelIndicatorSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    ServiceLevelObjectiveSpec:
      required:
        - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    ServiceLevelObjectiveV2Response:
      required:
        - serviceLevelObjectiveV2
      type: object
      properties:
        serviceLevelObjectiveV2:
          $ref: '#/components/schemas/AbstractServiceLevelObjective'
        createdAt:
          type: integer
          format: int64
        lastModifiedAt:
          type: integer
          format: int64
    SimpleServiceLevelObjectiveSpec:
      required:
        - monitoredServiceRef
        - serviceLevelIndicators
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceLevelObjectiveSpec'
        - type: object
          properties:
            monitoredServiceRef:
              type: string
            healthSourceRef:
              type: string
            serviceLevelIndicators:
              type: array
              items:
                $ref: '#/components/schemas/ServiceLevelIndicatorDTO'
    ThresholdSLIMetricSpec:
      required:
        - metric1
        - thresholdType
        - thresholdValue
      type: object
      allOf:
        - $ref: '#/components/schemas/SLIMetricSpec'
        - type: object
          properties:
            metric1:
              type: string
            thresholdValue:
              type: number
              format: double
            thresholdType:
              type: string
              enum:
                - '>'
                - <
                - '>='
                - <=
            considerConsecutiveMinutes:
              maximum: 30
              type: integer
              format: int32
            considerAllConsecutiveMinutesFromStartAsBad:
              type: boolean
    WindowBasedServiceLevelIndicatorSpec:
      required:
        - spec
      type: object
      allOf:
        - $ref: '#/components/schemas/ServiceLevelIndicatorSpec'
        - type: object
          properties:
            spec:
              $ref: '#/components/schemas/SLIMetricSpec'
            sliMissingDataType:
              type: string
              enum:
                - Good
                - Bad
                - Ignore
            type:
              type: string
              enum:
                - Threshold
                - Ratio
    PageResponseServiceLevelObjectiveV2Response:
      type: object
      properties:
        totalPages:
          type: integer
          format: int64
        totalItems:
          type: integer
          format: int64
        pageItemCount:
          type: integer
          format: int64
        pageSize:
          type: integer
          format: int64
        content:
          type: array
          items:
            $ref: '#/components/schemas/ServiceLevelObjectiveV2Response'
        pageIndex:
          type: integer
          format: int64
        empty:
          type: boolean
        pageToken:
          type: string
    ResponseDTOPageResponseServiceLevelObjectiveV2Response:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageResponseServiceLevelObjectiveV2Response'
        metaData:
          type: object
        correlationId:
          type: string
    RestResponseListSLOErrorBudgetReset:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          type: array
          items:
            $ref: '#/components/schemas/SLOErrorBudgetReset'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    SLOErrorBudgetReset:
      type: object
      properties:
        serviceLevelObjectiveIdentifier:
          type: string
        errorBudgetIncrementPercentage:
          type: number
          format: double
        errorBudgetIncrementMinutes:
          type: integer
          format: int32
        remainingErrorBudgetAtReset:
          type: integer
          format: int32
        errorBudgetAtReset:
          type: integer
          format: int32
        reason:
          type: string
        validUntil:
          type: integer
          format: int64
        createdAt:
          type: integer
          format: int64
      description: This is the SLO Error Budget Reset entity defined in Harness
    RestResponseSLOErrorBudgetReset:
      type: object
      properties:
        metaData:
          type: object
          additionalProperties:
            type: object
        resource:
          $ref: '#/components/schemas/SLOErrorBudgetReset'
        responseMessages:
          type: array
          items:
            $ref: '#/components/schemas/CvResponseMessage'
    MetricGraph:
      required:
        - start_time
      type: object
      properties:
        start_time:
          type: integer
          description: Start time of the Graph Values.
          format: int64
        end_time:
          type: integer
          description: End time of the Graph Values.
          format: int64
        data_points:
          type: array
          description: List of the Data points between start and end times.
          items:
            $ref: '#/components/schemas/DataPoints'
        metric_name:
          type: string
          description: 'Name of the Metric. '
        metric_identifier:
          type: string
          description: 'Identifier of the Metric. '
      description: Metric Graph
    DowntimeStatus:
      type: object
      properties:
        status:
          type: string
      description: Enum For Downtime Statuses
    SLIEvaluationType:
      type: object
      properties:
        type:
          type: string
      description: Evaluation Type of SLI
    SLOTargetType:
      type: object
      properties:
        type:
          type: string
      description: Types of SLO Target Period.
    ServiceLevelObjectiveType:
      type: object
      properties:
        type:
          type: string
      description: Types of Service Level Objectives.
    UserJourney:
      type: object
      properties:
        name:
          type: string
          description: Name of the User Journey.
        identifier:
          type: string
          description: Identifier of the User Journey.
      description: User Journey Details.
    ResponseDTOSRMLicenseUsageDTO:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/SRMLicenseUsageDTO'
        metaData:
          type: object
        correlationId:
          type: string
    SRMLicenseUsageDTO:
      type: object
      properties:
        accountIdentifier:
          type: string
        module:
          type: string
        timestamp:
          type: integer
          format: int64
        activeServices:
          $ref: '#/components/schemas/UsageDataDTO'
    ActiveMonitoredService:
      required:
        - identifier
      type: object
      properties:
        identifier:
          type: string
          description: Active Service identifier.
        monitoredServiceCount:
          type: integer
          description: Monitored Service Count.
          format: int64
        name:
          type: string
          description: Active Service name.
        orgName:
          type: string
          description: Organization name.
        envNames:
          type: array
          description: Environment name.
          items:
            type: string
            description: Environment name.
        projectName:
          type: string
          description: Project name.
        accountIdentifier:
          type: string
        module:
          type: string
        timestamp:
          type: integer
          format: int64
      description: >-
        This is details of the Active Service Monitored entity defined in
        Harness.
    PageActiveMonitoredService:
      type: object
      properties:
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        pageable:
          $ref: '#/components/schemas/Pageable'
        numberOfElements:
          type: integer
          format: int32
        last:
          type: boolean
        first:
          type: boolean
        size:
          type: integer
          format: int32
        content:
          type: array
          items:
            $ref: '#/components/schemas/ActiveMonitoredService'
        number:
          type: integer
          format: int32
        sort:
          $ref: '#/components/schemas/Sort'
        empty:
          type: boolean
    ResponseDTOPageActiveMonitoredService:
      type: object
      properties:
        status:
          type: string
          enum:
            - SUCCESS
            - FAILURE
            - ERROR
        data:
          $ref: '#/components/schemas/PageActiveMonitoredService'
        metaData:
          type: object
        correlationId:
          type: string
    ActiveServiceMonitoredFilterParams:
      type: object
      properties:
        orgIdentifier:
          type: string
          description: Organization identifier of the Entity.
        projectIdentifier:
          type: string
          description: Project identifier of the Entity.
        serviceIdentifier:
          type: string
          description: Service identifier of the Entity.
      description: Active Services Monitored Filter Params
    AgentQueryAgentSortByOptions:
      type: string
      enum:
        - SORT_BY_NOT_SET
        - NAME
        - HEALTH_STATUS
        - CONNECTIVITY_STATUS
        - NAMESPACE
        - VERSION
      default: SORT_BY_NOT_SET
    ApplicationQueryApplicationSortByOptions:
      type: string
      enum:
        - SORT_BY_NOT_SET
        - NAME
        - GITOPS_AGENT
        - SOURCE
        - DESTINATION
      default: SORT_BY_NOT_SET
    ApplicationSetGeneratorGetQueryApplicationSetGeneratorType:
      type: string
      enum:
        - GENERATOR_TYPE_NOT_SET
        - LIST
        - CLUSTERS
        - GIT
        - SCM_PROVIDER_GITHUB
        - SCM_PROVIDER_GITLAB
        - SCM_PROVIDER_GITEA
        - SCM_PROVIDER_BITBUCKET
        - SCM_PROVIDER_AZURE
        - SCM_PROVIDER_BITBUCKET_CLOUD
        - SCM_PROVIDER_AWS_CODE_COMMIT
        - DUCK_TYPE
        - PULL_REQUEST_GITHUB
        - PULL_REQUEST_GITLAB
        - PULL_REQUEST_GITEA
        - PULL_REQUEST_BITBUCKET
        - PULL_REQUEST_BITBUCKET_CLOUD
        - PULL_REQUEST_AZURE
        - MATRIX
        - MERGE
        - PLUGIN
      default: GENERATOR_TYPE_NOT_SET
    ApplicationSetGetQueryFetchMode:
      type: string
      enum:
        - NOT_SET
        - LIVE
        - CACHED
      default: NOT_SET
    ApplicationSetQueryApplicationSetSortByOptions:
      type: string
      enum:
        - SORT_BY_NOT_SET
        - NAME
        - GITOPS_AGENT
        - SOURCE
        - DESTINATION
      default: SORT_BY_NOT_SET
    ClusterQueryClusterSortByOptions:
      type: string
      enum:
        - SORT_BY_NOT_SET
        - NAME
        - GITOPS_AGENT
        - URL
        - VERSION
        - CONNECTIVITY_STATUS
      default: SORT_BY_NOT_SET
    OCIRepoTypeResponseOCIRepoTypeEnum:
      type: string
      enum:
        - UNSET
        - AWS
        - GOOGLE
        - GITHUB
        - DOCKERHUB
      default: UNSET
    RepoListReqRepoSortByOptions:
      type: string
      enum:
        - SORT_BY_NOT_SET
        - NAME
        - CONNECTIVITY_STATUS
        - TYPE
        - REPOSITORY
      default: SORT_BY_NOT_SET
    applicationsApplication:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/applicationsApplicationSpec'
        status:
          $ref: '#/components/schemas/applicationsApplicationStatus'
        operation:
          $ref: '#/components/schemas/applicationsOperation'
      title: >-
        Application is a definition of Application resource.

        +genclient

        +genclient:noStatus

        +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

        +kubebuilder:resource:path=applications,shortName=app;apps

        +kubebuilder:printcolumn:name="Sync
        Status",type=string,JSONPath=`.status.sync.status`

        +kubebuilder:printcolumn:name="Health
        Status",type=string,JSONPath=`.status.health.status`

        +kubebuilder:printcolumn:name="Revision",type=string,JSONPath=`.status.sync.revision`,priority=10
    applicationsApplicationBulkRefreshRequest:
      type: object
      properties:
        applicationTargets:
          type: array
          items:
            $ref: '#/components/schemas/applicationsBulkOperationAppTarget'
          title: List of application targets to refresh
        refresh:
          type: string
          title: forces application reconciliation if set to hard
      title: ApplicationBulkRefreshRequest for bulk refreshing multiple applications
    applicationsApplicationBulkRefreshResponse:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationRefreshResponse'
    applicationsApplicationBulkSyncRequest:
      type: object
      properties:
        applicationTargets:
          type: array
          items:
            $ref: '#/components/schemas/applicationsBulkOperationAppTarget'
          title: List of application targets to sync
        dryRun:
          type: boolean
          title: Common sync settings for all applications
        prune:
          type: boolean
        strategy:
          $ref: '#/components/schemas/applicationsSyncStrategy'
        retryStrategy:
          $ref: '#/components/schemas/applicationsRetryStrategy'
        syncOptions:
          $ref: '#/components/schemas/applicationsSyncOptions'
        syncTrackingIds:
          type: object
          additionalProperties:
            type: string
          title: a map of applicationName to syncTrackingId for tracking syncs
      title: >-
        ApplicationBulkSyncRequest for bulk synchronization of multiple
        applications
    applicationsApplicationBulkSyncResponse:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSyncResponse'
    applicationsApplicationCondition:
      type: object
      properties:
        type:
          type: string
          title: Type is an application condition type
        message:
          type: string
          title: >-
            Message contains human-readable message indicating details about
            condition
        lastTransitionTime:
          $ref: '#/components/schemas/v1Time'
        lastTransitionTimeTs:
          type: string
          format: date-time
          title: >-
            LastTransitionTimeTs is the google timestamp variation of
            LastTransitionTime
      title: >-
        ApplicationCondition contains details about an application condition,
        which is usally an error or warning
    applicationsApplicationCreateRequest:
      type: object
      properties:
        application:
          $ref: '#/components/schemas/applicationsApplication'
        upsert:
          type: boolean
        validate:
          type: boolean
        project:
          type: string
        isPLG:
          type: boolean
    applicationsApplicationDeleteRequest:
      type: object
      properties:
        name:
          type: string
        cascade:
          type: boolean
        propagationPolicy:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationDestination:
      type: object
      properties:
        server:
          type: string
          title: >-
            Server specifies the URL of the target cluster and must be set to
            the Kubernetes control plane API
        namespace:
          type: string
          title: >-
            Namespace specifies the target namespace for the application's
            resources.

            The namespace will only be set for namespace-scoped resources that
            have not set a value for .metadata.namespace
        name:
          type: string
          title: >-
            Name is an alternate way of specifying the target cluster by its
            symbolic name
      title: >-
        ApplicationDestination holds information about the application's
        destination
    applicationsApplicationList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplication'
      title: |-
        ApplicationList is list of Application resources
        +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
    applicationsApplicationManifestQuery:
      type: object
      properties:
        name:
          type: string
        revision:
          type: string
        appNamespace:
          type: string
        project:
          type: string
        sourcePositions:
          type: array
          items:
            type: string
            format: int64
        revisions:
          type: array
          items:
            type: string
      title: ManifestQuery is a query for manifest resources
    applicationsApplicationMatchExpression:
      type: object
      properties:
        key:
          type: string
        operator:
          type: string
        values:
          type: array
          items:
            type: string
    applicationsApplicationPatchRequest:
      type: object
      properties:
        name:
          type: string
        patch:
          type: string
        patchType:
          type: string
        appNamespace:
          type: string
        project:
          type: string
      title: ApplicationPatchRequest is a request to patch an application
    applicationsApplicationPodLogsQuery:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        podName:
          type: string
        container:
          type: string
        sinceSeconds:
          type: string
          format: int64
        sinceTime:
          $ref: '#/components/schemas/v1Time'
        tailLines:
          type: string
          format: int64
        follow:
          type: boolean
        untilTime:
          type: string
        filter:
          type: string
        kind:
          type: string
        group:
          type: string
        resourceName:
          type: string
        previous:
          type: boolean
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationPreservedFields:
      type: object
      properties:
        annotations:
          type: array
          items:
            type: string
        labels:
          type: array
          items:
            type: string
    applicationsApplicationQuery:
      type: object
      properties:
        name:
          type: string
          title: the application's name
        refresh:
          type: string
          description: >-
            set to "normal" OR "hard" if an application refresh is required
            before fetching.


            normal refresh only if source has changed(commit, helm chart
            version, etc.)


            hard refresh will invalidate all generated manifest caches and force
            regeneration.
        project:
          type: array
          items:
            type: string
          title: the project names to restrict returned list applications
        resourceVersion:
          type: string
          description: >-
            when specified with a watch call, shows changes that occur after
            that particular version of a resource.
        selector:
          type: string
          title: >-
            the selector to to restrict returned list to applications only with
            matched labels
        repo:
          type: string
          title: the repoURL to restrict returned list applications
        appNamespace:
          type: string
      title: ApplicationQuery is a query for application resources
    applicationsApplicationRefreshResponse:
      type: object
      properties:
        applicationName:
          type: string
        agentIdentifier:
          type: string
        success:
          type: boolean
        error:
          type: string
        applicationResponse:
          $ref: '#/components/schemas/applicationsApplication'
    applicationsApplicationResourceDeleteRequest:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        resourceName:
          type: string
        version:
          type: string
        group:
          type: string
        kind:
          type: string
        force:
          type: boolean
        orphan:
          type: boolean
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationResourceEventsQuery:
      type: object
      properties:
        name:
          type: string
        resourceNamespace:
          type: string
        resourceName:
          type: string
        resourceUID:
          type: string
        appNamespace:
          type: string
        project:
          type: string
      title: ApplicationEventsQuery is a query for application resource events
    applicationsApplicationResourcePatchRequest:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        resourceName:
          type: string
        version:
          type: string
        group:
          type: string
        kind:
          type: string
        patch:
          type: string
        patchType:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationResourceRequest:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        resourceName:
          type: string
        version:
          type: string
        group:
          type: string
        kind:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationResourceResponse:
      type: object
      properties:
        manifest:
          type: string
    applicationsApplicationResponse:
      type: object
    applicationsApplicationRollbackRequest:
      type: object
      properties:
        name:
          type: string
        id:
          type: string
          format: int64
        dryRun:
          type: boolean
        prune:
          type: boolean
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationSet:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/applicationsApplicationSetSpec'
        status:
          $ref: '#/components/schemas/applicationsApplicationSetStatus'
    applicationsApplicationSetApplicationStatus:
      type: object
      properties:
        application:
          type: string
          title: Application contains the name of the Application resource
        lastTransitionTime:
          $ref: '#/components/schemas/v1Time'
        message:
          type: string
          title: >-
            Message contains human-readable message indicating details about the
            status
        status:
          type: string
          title: >-
            Status contains the AppSet's perceived status of the managed
            Application resource: (Waiting, Pending, Progressing, Healthy)
        step:
          type: string
          title: Step tracks which step this Application should be updated in
        targetrevisions:
          type: array
          items:
            type: string
          description: >-
            TargetRevision tracks the desired revisions the Application should
            be synced to.
      title: >-
        ApplicationSetApplicationStatus contains details about each Application
        managed by the ApplicationSet
    applicationsApplicationSetCondition:
      type: object
      properties:
        type:
          type: string
          title: Type is an applicationset condition type
        message:
          type: string
          title: >-
            Message contains human-readable message indicating details about
            condition
        lastTransitionTime:
          $ref: '#/components/schemas/v1Time'
        status:
          type: string
          title: True/False/Unknown
        reason:
          type: string
          title: >-
            Single word camelcase representing the reason for the status eg
            ErrorOccurred
      title: >-
        ApplicationSetCondition contains details about an applicationset
        condition, which is usually an error or warning
    applicationsApplicationSetCreateRequest:
      type: object
      properties:
        applicationset:
          $ref: '#/components/schemas/applicationsApplicationSet'
        upsert:
          type: boolean
        dryRun:
          type: boolean
        yaml:
          type: string
          format: byte
    applicationsApplicationSetGenerateRequest:
      type: object
      properties:
        applicationset:
          $ref: '#/components/schemas/applicationsApplicationSet'
        yaml:
          type: string
          format: byte
          title: >-
            helper field for keeping string representation of marshalled
            ApplicationSetq
      title: >-
        ApplicationSetGenerateRequest  is a query for applicationset generate
        resources
    applicationsApplicationSetGenerateResponse:
      type: object
      properties:
        applications:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplication'
      title: >-
        ApplicationSetGenerateResponse is a response for applicationset generate
        request
    applicationsApplicationSetGenerator:
      type: object
      properties:
        list:
          $ref: '#/components/schemas/applicationsListGenerator'
        clusters:
          $ref: '#/components/schemas/applicationsClusterGenerator'
        git:
          $ref: '#/components/schemas/applicationsGitGenerator'
        scmProvider:
          $ref: '#/components/schemas/applicationsSCMProviderGenerator'
        clusterDecisionResource:
          $ref: '#/components/schemas/applicationsDuckTypeGenerator'
        pullRequest:
          $ref: '#/components/schemas/applicationsPullRequestGenerator'
        matrix:
          $ref: '#/components/schemas/applicationsMatrixGenerator'
        merge:
          $ref: '#/components/schemas/applicationsMergeGenerator'
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        plugin:
          $ref: '#/components/schemas/applicationsPluginGenerator'
      description: >-
        ApplicationSetGenerator represents a generator at the top level of an
        ApplicationSet.
    applicationsApplicationSetNestedGenerator:
      type: object
      properties:
        list:
          $ref: '#/components/schemas/applicationsListGenerator'
        clusters:
          $ref: '#/components/schemas/applicationsClusterGenerator'
        git:
          $ref: '#/components/schemas/applicationsGitGenerator'
        scmProvider:
          $ref: '#/components/schemas/applicationsSCMProviderGenerator'
        clusterDecisionResource:
          $ref: '#/components/schemas/applicationsDuckTypeGenerator'
        pullRequest:
          $ref: '#/components/schemas/applicationsPullRequestGenerator'
        matrix:
          $ref: '#/components/schemas/v1JSON'
        merge:
          $ref: '#/components/schemas/v1JSON'
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        plugin:
          $ref: '#/components/schemas/applicationsPluginGenerator'
      description: >-
        ApplicationSetNestedGenerator represents a generator nested within a
        combination-type generator (MatrixGenerator or

        MergeGenerator).
    applicationsApplicationSetResourceIgnoreDifferences:
      type: object
      properties:
        name:
          type: string
          description: >-
            Name is the name of the application to ignore differences for. If
            not specified, the rule applies to all applications.
        jsonPointers:
          type: array
          items:
            type: string
          description: >-
            JSONPointers is a list of JSON pointers to fields to ignore
            differences for.
        jqPathExpressions:
          type: array
          items:
            type: string
          description: >-
            JQPathExpressions is a list of JQ path expressions to fields to
            ignore differences for.
      description: >-
        ApplicationSetResourceIgnoreDifferences configures how the
        ApplicationSet controller will ignore differences in live

        applications when applying changes from generated applications.
    applicationsApplicationSetResponse:
      type: object
      properties:
        project:
          type: string
        applicationset:
          $ref: '#/components/schemas/applicationsApplicationSet'
    applicationsApplicationSetRolloutStep:
      type: object
      properties:
        matchExpressions:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationMatchExpression'
        maxUpdate:
          $ref: '#/components/schemas/intstrIntOrString'
    applicationsApplicationSetRolloutStrategy:
      type: object
      properties:
        steps:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetRolloutStep'
    applicationsApplicationSetSpec:
      type: object
      properties:
        goTemplate:
          type: boolean
        generators:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetGenerator'
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        syncPolicy:
          $ref: '#/components/schemas/applicationsApplicationSetSyncPolicy'
        strategy:
          $ref: '#/components/schemas/applicationsApplicationSetStrategy'
        preservedFields:
          $ref: '#/components/schemas/applicationsApplicationPreservedFields'
        goTemplateOptions:
          type: array
          items:
            type: string
        applyNestedSelectors:
          type: boolean
          title: >-
            ApplyNestedSelectors enables selectors defined within the generators
            of two level-nested matrix or merge generators
        ignoreApplicationDifferences:
          type: array
          items:
            $ref: >-
              #/components/schemas/applicationsApplicationSetResourceIgnoreDifferences
        templatePatch:
          type: string
      description: ApplicationSetSpec represents a class of application set state.
    applicationsApplicationSetStatus:
      type: object
      properties:
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetCondition'
          title: |-
            INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
            Important: Run "make" to regenerate code after modifying this file
        applicationStatus:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetApplicationStatus'
        resources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceStatus'
          description: >-
            Resources is a list of Applications resources managed by this
            application set.
      title: ApplicationSetStatus defines the observed state of ApplicationSet
    applicationsApplicationSetStrategy:
      type: object
      properties:
        type:
          type: string
        rollingSync:
          $ref: '#/components/schemas/applicationsApplicationSetRolloutStrategy'
      description: >-
        ApplicationSetStrategy configures how generated Applications are updated
        in sequence.
    applicationsApplicationSetSyncPolicy:
      type: object
      properties:
        preserveResourcesOnDeletion:
          type: boolean
          description: >-
            PreserveResourcesOnDeletion will preserve resources on deletion. If
            PreserveResourcesOnDeletion is set to true, these Applications will
            not be deleted.
        applicationsSync:
          type: string
          title: >-
            ApplicationsSync represents the policy applied on the generated
            applications. Possible values are create-only, create-update,
            create-delete, sync

            +kubebuilder:validation:Optional

            +kubebuilder:validation:Enum=create-only;create-update;create-delete;sync
      description: >-
        ApplicationSetSyncPolicy configures how generated Applications will
        relate to their

        ApplicationSet.
    applicationsApplicationSetTemplate:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/applicationsApplicationSetTemplateMeta'
        spec:
          $ref: '#/components/schemas/applicationsApplicationSpec'
      title: ApplicationSetTemplate represents argocd ApplicationSpec
    applicationsApplicationSetTemplateMeta:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        labels:
          type: object
          additionalProperties:
            type: string
        annotations:
          type: object
          additionalProperties:
            type: string
        finalizers:
          type: array
          items:
            type: string
      title: >-
        ApplicationSetTemplateMeta represents the Argo CD application fields
        that may

        be used for Applications generated from the ApplicationSet (based on
        metav1.ObjectMeta)
    applicationsApplicationSetTree:
      type: object
      properties:
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceNode'
          title: >-
            Nodes contains list of nodes which are directly managed by the
            applicationset
      title: |-
        ApplicationSetTree holds nodes which belongs to the application
        Used to build a tree of an ApplicationSet and its children
    applicationsApplicationSetTreeQuery:
      type: object
      properties:
        name:
          type: string
        appsetNamespace:
          type: string
          title: >-
            The application set namespace. Default empty is argocd control plane
            namespace
    applicationsApplicationSource:
      type: object
      properties:
        repoURL:
          type: string
          title: >-
            RepoURL is the URL to the repository (Git or Helm) that contains the
            application manifests
        path:
          type: string
          description: >-
            Path is a directory path within the Git repository, and is only
            valid for applications sourced from Git.
        targetRevision:
          type: string
          description: >-
            TargetRevision defines the revision of the source to sync the
            application to.

            In case of Git, this can be commit, tag, or branch. If omitted, will
            equal to HEAD.

            In case of Helm, this is a semver tag for the Chart's version.
        helm:
          $ref: '#/components/schemas/applicationsApplicationSourceHelm'
        kustomize:
          $ref: '#/components/schemas/applicationsApplicationSourceKustomize'
        ksonnet:
          $ref: '#/components/schemas/applicationsApplicationSourceKsonnet'
        directory:
          $ref: '#/components/schemas/applicationsApplicationSourceDirectory'
        plugin:
          $ref: '#/components/schemas/applicationsApplicationSourcePlugin'
        chart:
          type: string
          description: >-
            Chart is a Helm chart name, and must be specified for applications
            sourced from a Helm repo.
        ref:
          type: string
          description: >-
            Ref is reference to another source within sources field. This field
            will not be used if used with a `source` tag.
        name:
          type: string
          description: >-
            Name is used to refer to a source and is displayed in the UI. It is
            used in multi-source Applications.
      title: >-
        ApplicationSource contains all information about the source of an
        application
    applicationsApplicationSourceDirectory:
      type: object
      properties:
        recurse:
          type: boolean
          title: >-
            Recurse specifies whether to scan a directory recursively for
            manifests
        jsonnet:
          $ref: '#/components/schemas/applicationsApplicationSourceJsonnet'
        exclude:
          type: string
          title: >-
            Exclude contains a glob pattern to match paths against that should
            be explicitly excluded from being used during manifest generation
        include:
          type: string
          title: >-
            Include contains a glob pattern to match paths against that should
            be explicitly included during manifest generation
      title: >-
        ApplicationSourceDirectory holds options for applications of type plain
        YAML or Jsonnet
    applicationsApplicationSourceHelm:
      type: object
      properties:
        valueFiles:
          type: array
          items:
            type: string
          title: >-
            ValuesFiles is a list of Helm value files to use when generating a
            template
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHelmParameter'
          title: >-
            Parameters is a list of Helm parameters which are passed to the helm
            template command upon manifest generation
        releaseName:
          type: string
          title: >-
            ReleaseName is the Helm release name to use. If omitted it will use
            the application name
        values:
          type: string
          title: >-
            Values specifies Helm values to be passed to helm template,
            typically defined as a block
        fileParameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHelmFileParameter'
          title: FileParameters are file parameters to the helm template
        version:
          type: string
          title: >-
            Version is the Helm version to use for templating (either "2" or
            "3")
        passCredentials:
          type: boolean
          title: >-
            PassCredentials pass credentials to all domains (Helm's
            --pass-credentials)
        ignoreMissingValueFiles:
          type: boolean
          title: >-
            IgnoreMissingValueFiles prevents helm template from failing when
            valueFiles do not exist locally by not appending them to helm
            template --values
        skipCrds:
          type: boolean
          title: >-
            SkipCrds skips custom resource definition installation step (Helm's
            --skip-crds)
        valuesObject:
          type: object
          title: >-
            ValuesObject specifies Helm values to be passed to helm template,
            defined as a map. This takes precedence over Values.

            +kubebuilder:pruning:PreserveUnknownFields
        namespace:
          type: string
          description: >-
            Namespace is an optional namespace to template with. If left empty,
            defaults to the app's destination namespace.
        kubeVersion:
          type: string
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
        apiVersions:
          type: array
          items:
            type: string
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
        skipTests:
          type: boolean
          description: >-
            SkipTests skips test manifest installation step (Helm's
            --skip-tests).
        skipSchemaValidation:
          type: boolean
          title: >-
            SkipSchemaValidation skips JSON schema validation (Helm's
            --skip-schema-validation)
      title: ApplicationSourceHelm holds helm specific options
    applicationsApplicationSourceJsonnet:
      type: object
      properties:
        extVars:
          type: array
          items:
            $ref: '#/components/schemas/applicationsJsonnetVar'
          title: ExtVars is a list of Jsonnet External Variables
        tlas:
          type: array
          items:
            $ref: '#/components/schemas/applicationsJsonnetVar'
          title: TLAS is a list of Jsonnet Top-level Arguments
        libs:
          type: array
          items:
            type: string
          title: Additional library search dirs
      title: >-
        ApplicationSourceJsonnet holds options specific to applications of type
        Jsonnet
    applicationsApplicationSourceKsonnet:
      type: object
      properties:
        environment:
          type: string
          title: Environment is a ksonnet application environment name
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsKsonnetParameter'
          title: Parameters are a list of ksonnet component parameter override values
      title: ApplicationSourceKsonnet holds ksonnet specific options
    applicationsApplicationSourceKustomize:
      type: object
      properties:
        namePrefix:
          type: string
          title: NamePrefix is a prefix appended to resources for Kustomize apps
        nameSuffix:
          type: string
          title: NameSuffix is a suffix appended to resources for Kustomize apps
        images:
          type: array
          items:
            type: string
          title: Images is a list of Kustomize image override specifications
        commonLabels:
          type: object
          additionalProperties:
            type: string
          title: >-
            CommonLabels is a list of additional labels to add to rendered
            manifests
        version:
          type: string
          title: >-
            Version controls which version of Kustomize to use for rendering
            manifests
        commonAnnotations:
          type: object
          additionalProperties:
            type: string
          title: >-
            CommonAnnotations is a list of additional annotations to add to
            rendered manifests
        forceCommonLabels:
          type: boolean
          title: >-
            ForceCommonLabels specifies whether to force applying common labels
            to resources for Kustomize apps
        forceCommonAnnotations:
          type: boolean
          title: >-
            ForceCommonAnnotations specifies whether to force applying common
            annotations to resources for Kustomize apps
        namespace:
          type: string
          title: Namespace sets the namespace that Kustomize adds to all resources
        replicas:
          type: array
          items:
            $ref: '#/components/schemas/applicationsKustomizeReplicas'
          title: Replicas is a list of Kustomize Replicas override specifications
        patches:
          type: array
          items:
            $ref: '#/components/schemas/applicationsKustomizePatch'
          title: Patches is a list of Kustomize patches
        components:
          type: array
          items:
            type: string
          title: >-
            Components specifies a list of kustomize components to add to the
            kustomization before building
        labelWithoutSelector:
          type: boolean
          title: >-
            LabelWithoutSelector specifies whether to apply common labels to
            resource selectors or not
        kubeVersion:
          type: string
          description: >-
            KubeVersion specifies the Kubernetes API version to pass to Helm
            when templating manifests. By default, Argo CD

            uses the Kubernetes version of the target cluster.
        apiVersions:
          type: array
          items:
            type: string
          description: >-
            APIVersions specifies the Kubernetes resource API versions to pass
            to Helm when templating manifests. By default,

            Argo CD uses the API versions of the target cluster. The format is
            [group/]version/kind.
      title: >-
        ApplicationSourceKustomize holds options specific to an Application
        source specific to Kustomize
    applicationsApplicationSourcePlugin:
      type: object
      properties:
        name:
          type: string
        env:
          type: array
          items:
            $ref: '#/components/schemas/applicationsEnvEntry'
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSourcePluginParameter'
      title: >-
        ApplicationSourcePlugin holds options specific to config management
        plugins
    applicationsApplicationSourcePluginParameter:
      type: object
      properties:
        name:
          type: string
          description: Name is the name identifying a parameter.
        string:
          type: string
          description: String_ is the value of a string type parameter.
        map:
          $ref: '#/components/schemas/applicationsOptionalMap'
        array:
          $ref: '#/components/schemas/applicationsOptionalArray'
    applicationsApplicationSpec:
      type: object
      properties:
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        destination:
          $ref: '#/components/schemas/applicationsApplicationDestination'
        project:
          type: string
          description: >-
            Project is a reference to the project this application belongs to.

            The empty string means that application belongs to the 'default'
            project.
        syncPolicy:
          $ref: '#/components/schemas/applicationsSyncPolicy'
        ignoreDifferences:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceIgnoreDifferences'
          title: >-
            IgnoreDifferences is a list of resources and their fields which
            should be ignored during comparison
        info:
          type: array
          items:
            $ref: '#/components/schemas/applicationsInfo'
          title: >-
            Info contains a list of information (URLs, email addresses, and
            plain text) that relates to the application
        revisionHistoryLimit:
          type: string
          format: int64
          description: >-
            RevisionHistoryLimit limits the number of items kept in the
            application's revision history, which is used for informational
            purposes as well as for rollbacks to previous versions.

            This should only be changed in exceptional circumstances.

            Setting to zero will store no history. This will reduce storage
            used.

            Increasing will increase the space used to store the history, so we
            do not recommend increasing it.

            Default is 10.
        sources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSource'
          title: >-
            Sources is a reference to the location of the application's
            manifests or chart
      description: >-
        ApplicationSpec represents desired application state. Contains link to
        repository with application definition and additional parameters link
        definition revision.
    applicationsApplicationStatus:
      type: object
      properties:
        resources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceStatus'
          title: >-
            Resources is a list of Kubernetes resources managed by this
            application
        sync:
          $ref: '#/components/schemas/applicationsSyncStatus'
        health:
          $ref: '#/components/schemas/applicationsHealthStatus'
        history:
          type: array
          items:
            $ref: '#/components/schemas/applicationsRevisionHistory'
          title: History contains information about the application's sync history
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationCondition'
          title: Conditions is a list of currently observed application conditions
        reconciledAt:
          $ref: '#/components/schemas/v1Time'
        operationState:
          $ref: '#/components/schemas/applicationsOperationState'
        observedAt:
          $ref: '#/components/schemas/v1Time'
        sourceType:
          type: string
          title: SourceType specifies the type of this application
        summary:
          $ref: '#/components/schemas/applicationsApplicationSummary'
        resourceHealthSource:
          type: string
          title: >-
            ResourceHealthSource indicates where the resource health status is
            stored: inline if not set or appTree
        sourceTypes:
          type: array
          items:
            type: string
          title: >-
            SourceTypes specifies the type of the sources included in the
            application
        controllerNamespace:
          type: string
          title: >-
            ControllerNamespace indicates the namespace in which the application
            controller is located
      title: ApplicationStatus contains status information for the application
    applicationsApplicationSummary:
      type: object
      properties:
        externalURLs:
          type: array
          items:
            type: string
          description: ExternalURLs holds all external URLs of application child resources.
        images:
          type: array
          items:
            type: string
          description: Images holds all images of application child resources.
      title: >-
        ApplicationSummary contains information about URLs and container images
        used by an application
    applicationsApplicationSyncRequest:
      type: object
      properties:
        name:
          type: string
        revision:
          type: string
        dryRun:
          type: boolean
        prune:
          type: boolean
        strategy:
          $ref: '#/components/schemas/applicationsSyncStrategy'
        resources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsSyncOperationResource'
        manifests:
          type: array
          items:
            type: string
        infos:
          type: array
          items:
            $ref: '#/components/schemas/applicationsInfo'
        retryStrategy:
          $ref: '#/components/schemas/applicationsRetryStrategy'
        syncOptions:
          $ref: '#/components/schemas/applicationsSyncOptions'
        appNamespace:
          type: string
        project:
          type: string
        sourcePositions:
          type: array
          items:
            type: string
            format: int64
        revisions:
          type: array
          items:
            type: string
      title: >-
        ApplicationSyncRequest is a request to apply the config state to live
        state
    applicationsApplicationSyncResponse:
      type: object
      properties:
        applicationName:
          type: string
        agentIdentifier:
          type: string
        success:
          type: boolean
        error:
          type: string
        applicationResponse:
          $ref: '#/components/schemas/applicationsApplication'
    applicationsApplicationSyncWindow:
      type: object
      properties:
        kind:
          type: string
        schedule:
          type: string
        duration:
          type: string
        manualSync:
          type: boolean
    applicationsApplicationSyncWindowsQuery:
      type: object
      properties:
        name:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsApplicationSyncWindowsResponse:
      type: object
      properties:
        activeWindows:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSyncWindow'
        assignedWindows:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSyncWindow'
        canSync:
          type: boolean
    applicationsApplicationTree:
      type: object
      properties:
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceNode'
          description: >-
            Nodes contains list of nodes which either directly managed by the
            application and children of directly managed nodes.
        orphanedNodes:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceNode'
          description: >-
            OrphanedNodes contains if or orphaned nodes: nodes which are not
            managed by the app but in the same namespace. List is populated only
            if orphaned resources enabled in app project.
        hosts:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHostInfo'
          title: >-
            Hosts holds list of Kubernetes nodes that run application related
            pods
      title: |-
        ApplicationTree holds nodes which belongs to the application
        TODO: describe purpose of this type
    applicationsApplicationUpdateRequest:
      type: object
      properties:
        application:
          $ref: '#/components/schemas/applicationsApplication'
        validate:
          type: boolean
        project:
          type: string
    applicationsApplicationUpdateSpecRequest:
      type: object
      properties:
        name:
          type: string
        spec:
          $ref: '#/components/schemas/applicationsApplicationSpec'
        validate:
          type: boolean
        appNamespace:
          type: string
        project:
          type: string
      title: ApplicationUpdateSpecRequest is a request to update application spec
    applicationsApplicationWatchEvent:
      type: object
      properties:
        type:
          type: string
        application:
          $ref: '#/components/schemas/applicationsApplication'
      description: ApplicationWatchEvent contains information about application change.
    applicationsBackoff:
      type: object
      properties:
        duration:
          type: string
          title: >-
            Duration is the amount to back off. Default unit is seconds, but
            could also be a duration (e.g. "2m", "1h")
        factor:
          type: string
          format: int64
          title: >-
            Factor is a factor to multiply the base duration after each failed
            retry
        maxDuration:
          type: string
          title: >-
            MaxDuration is the maximum amount of time allowed for the backoff
            strategy
      title: >-
        Backoff is the backoff strategy to use on subsequent retries for failing
        syncs
    applicationsBasicAuthBitbucketServer:
      type: object
      properties:
        username:
          type: string
          title: Username for Basic auth
        passwordRef:
          $ref: '#/components/schemas/applicationsSecretRef'
      description: >-
        BasicAuthBitbucketServer defines the username/(password or personal
        access token) for Basic auth.
    applicationsBearerTokenBitbucket:
      type: object
      properties:
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
      description: >-
        BearerTokenBitbucket defines the Bearer token for BitBucket AppToken
        auth.
    applicationsBearerTokenBitbucketCloud:
      type: object
      properties:
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
      description: >-
        BearerTokenBitbucketCloud defines the Bearer token for BitBucket
        AppToken auth.
    applicationsBulkOperationAppTarget:
      type: object
      properties:
        applicationName:
          type: string
        agentIdentifier:
          type: string
      title: >-
        BulkOperationAppTarget uniquely identifies an application by name and
        agent in a project
    applicationsClusterGenerator:
      type: object
      properties:
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        values:
          type: object
          additionalProperties:
            type: string
          title: >-
            Values contains key/value pairs which are passed directly as
            parameters to the template
        flatList:
          type: boolean
          title: returns the clusters a single 'clusters' value in the template
      description: >-
        ClusterGenerator defines a generator to match against clusters
        registered with ArgoCD.
    applicationsComparedTo:
      type: object
      properties:
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        destination:
          $ref: '#/components/schemas/applicationsApplicationDestination'
        sources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSource'
          title: >-
            Sources is a reference to the application's multiple sources used
            for comparison
        ignoreDifferences:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceIgnoreDifferences'
          title: >-
            IgnoreDifferences is a reference to the application's ignored
            differences used for comparison
      title: >-
        ComparedTo contains application source and target which was used for
        resources comparison
    applicationsConfigMapKeyRef:
      type: object
      properties:
        configMapName:
          type: string
        key:
          type: string
      description: Utility struct for a reference to a configmap key.
    applicationsDuckTypeGenerator:
      type: object
      properties:
        configMapRef:
          type: string
          title: >-
            ConfigMapRef is a ConfigMap with the duck type definitions needed to
            retrieve the data
                         this includes apiVersion(group/version), kind, matchKey and validation settings
            Name is the resource name of the kind, group and version, defined in
            the ConfigMapRef

            RequeueAfterSeconds is how long before the duckType will be
            rechecked for a change
        name:
          type: string
        requeueAfterSeconds:
          type: string
          format: int64
        labelSelector:
          $ref: '#/components/schemas/v1LabelSelector'
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        values:
          type: object
          additionalProperties:
            type: string
          title: >-
            Values contains key/value pairs which are passed directly as
            parameters to the template
      description: >-
        DuckType defines a generator to match against clusters registered with
        ArgoCD.
    applicationsEnvEntry:
      type: object
      properties:
        name:
          type: string
          title: Name is the name of the variable, usually expressed in uppercase
        value:
          type: string
          title: Value is the value of the variable
      title: EnvEntry represents an entry in the application's environment
    applicationsEvent:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        involvedObject:
          $ref: '#/components/schemas/applicationsObjectReference'
        reason:
          type: string
          title: >-
            This should be a short, machine understandable string that gives the
            reason

            for the transition into the object's current status.

            TODO: provide exact specification for format.

            +
        message:
          type: string
          title: |-
            A human-readable description of the status of this operation.
            TODO: decide on maximum length.
            +
        source:
          $ref: '#/components/schemas/applicationsEventSource'
        firstTimestamp:
          $ref: '#/components/schemas/v1Time'
        lastTimestamp:
          $ref: '#/components/schemas/v1Time'
        count:
          type: integer
          format: int32
          title: |-
            The number of times this event has occurred.
            +
        type:
          type: string
          title: >-
            Type of this event (Normal, Warning), new types could be added in
            the future

            +
        eventTime:
          $ref: '#/components/schemas/v1MicroTime'
        series:
          $ref: '#/components/schemas/applicationsEventSeries'
        action:
          type: string
          title: |-
            What action was taken/failed regarding to the Regarding object.
            +
        related:
          $ref: '#/components/schemas/applicationsObjectReference'
        reportingComponent:
          type: string
          title: >-
            Name of the controller that emitted this Event, e.g.
            `kubernetes.io/kubelet`.

            +
        reportingInstance:
          type: string
          title: |-
            ID of the controller instance, e.g. `kubelet-xyzf`.
            +
        firstTimestampTs:
          type: string
          format: date-time
        lastTimestampTs:
          type: string
          format: date-time
    applicationsEventList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/applicationsEvent'
          title: List of events
      description: EventList is a list of events.
    applicationsEventSeries:
      type: object
      properties:
        count:
          type: integer
          format: int32
          title: Number of occurrences in this series up to the last heartbeat time
        lastObservedTime:
          $ref: '#/components/schemas/v1MicroTime'
      description: >-
        EventSeries contain information on series of events, i.e. thing that
        was/is happening

        continuously for some time.
    applicationsEventSource:
      type: object
      properties:
        component:
          type: string
          title: |-
            Component from which the event is generated.
            +
        host:
          type: string
          title: |-
            Node name on which the event is generated.
            +
    applicationsGitDirectoryGeneratorItem:
      type: object
      properties:
        path:
          type: string
        exclude:
          type: boolean
    applicationsGitFileGeneratorItem:
      type: object
      properties:
        path:
          type: string
    applicationsGitGenerator:
      type: object
      properties:
        repoURL:
          type: string
        directories:
          type: array
          items:
            $ref: '#/components/schemas/applicationsGitDirectoryGeneratorItem'
        files:
          type: array
          items:
            $ref: '#/components/schemas/applicationsGitFileGeneratorItem'
        revision:
          type: string
        requeueAfterSeconds:
          type: string
          format: int64
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        pathParamPrefix:
          type: string
        values:
          type: object
          additionalProperties:
            type: string
          title: >-
            Values contains key/value pairs which are passed directly as
            parameters to the template
    applicationsHealthStatus:
      type: object
      properties:
        status:
          type: string
          title: Status holds the status code of the application or resource
        message:
          type: string
          title: >-
            Message is a human-readable informational message describing the
            health status
        lastTransitionTime:
          $ref: '#/components/schemas/v1Time'
      title: >-
        HealthStatus contains information about the currently observed health
        state of an application or resource
    applicationsHelmFileParameter:
      type: object
      properties:
        name:
          type: string
          title: Name is the name of the Helm parameter
        path:
          type: string
          title: >-
            Path is the path to the file containing the values for the Helm
            parameter
      title: >-
        HelmFileParameter is a file parameter that's passed to helm template
        during manifest generation
    applicationsHelmParameter:
      type: object
      properties:
        name:
          type: string
          title: Name is the name of the Helm parameter
        value:
          type: string
          title: Value is the value for the Helm parameter
        forceString:
          type: boolean
          title: >-
            ForceString determines whether to tell Helm to interpret booleans
            and numbers as strings
      title: >-
        HelmParameter is a parameter that's passed to helm template during
        manifest generation
    applicationsHostInfo:
      type: object
      properties:
        name:
          type: string
        resourcesInfo:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHostResourceInfo'
        systemInfo:
          $ref: '#/components/schemas/v1NodeSystemInfo'
      title: |-
        HostInfo holds host name and resources metrics
        TODO: describe purpose of this type
        TODO: describe members of this type
    applicationsHostResourceInfo:
      type: object
      properties:
        resourceName:
          type: string
        requestedByApp:
          type: string
          format: int64
        requestedByNeighbors:
          type: string
          format: int64
        capacity:
          type: string
          format: int64
      title: 'TODO: describe this type'
    applicationsInfo:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    applicationsInfoItem:
      type: object
      properties:
        name:
          type: string
          description: Name is a human readable title for this piece of information.
        value:
          type: string
          description: Value is human readable content.
      title: >-
        InfoItem contains arbitrary, human readable information about an
        application
    applicationsJsonnetVar:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        code:
          type: boolean
      title: >-
        JsonnetVar represents a variable to be passed to jsonnet during manifest
        generation
    applicationsKsonnetParameter:
      type: object
      properties:
        component:
          type: string
        name:
          type: string
        value:
          type: string
      title: KsonnetParameter is a ksonnet component parameter
    applicationsKustomizeGvk:
      type: object
      properties:
        group:
          type: string
        version:
          type: string
        kind:
          type: string
    applicationsKustomizePatch:
      type: object
      properties:
        path:
          type: string
        patch:
          type: string
        target:
          $ref: '#/components/schemas/applicationsKustomizeSelector'
        options:
          type: object
          additionalProperties:
            type: boolean
    applicationsKustomizeReplicas:
      type: object
      properties:
        count:
          type: string
          title: Number of replicas
        name:
          type: string
          title: Name of Deployment or StatefulSet
    applicationsKustomizeResId:
      type: object
      properties:
        gvk:
          $ref: '#/components/schemas/applicationsKustomizeGvk'
        name:
          type: string
        namespace:
          type: string
    applicationsKustomizeSelector:
      type: object
      properties:
        resId:
          $ref: '#/components/schemas/applicationsKustomizeResId'
        annotationSelector:
          type: string
        labelSelector:
          type: string
    applicationsListGenerator:
      type: object
      properties:
        elements:
          type: array
          items:
            $ref: '#/components/schemas/v1JSON'
          title: +kubebuilder:validation:Optional
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        elementsYaml:
          type: string
      title: ListGenerator include items info
    applicationsLogEntriesBatch:
      type: object
      properties:
        entries:
          type: array
          items:
            $ref: '#/components/schemas/applicationsLogEntry'
        count:
          type: integer
          format: int32
        batchIndex:
          type: integer
          format: int32
        last:
          type: boolean
    applicationsLogEntry:
      type: object
      properties:
        content:
          type: string
        timeStamp:
          $ref: '#/components/schemas/v1Time'
        last:
          type: boolean
        timeStampStr:
          type: string
        podName:
          type: string
    applicationsManagedNamespaceMetadata:
      type: object
      properties:
        labels:
          type: object
          additionalProperties:
            type: string
        annotations:
          type: object
          additionalProperties:
            type: string
    applicationsManagedResourcesResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceDiff'
    applicationsMatrixGenerator:
      type: object
      properties:
        generators:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetNestedGenerator'
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
      description: >-
        MatrixGenerator generates the cartesian product of two sets of
        parameters. The parameters are defined by two nested

        generators.
    applicationsMergeGenerator:
      type: object
      properties:
        generators:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetNestedGenerator'
        mergeKeys:
          type: array
          items:
            type: string
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
      description: >-
        MergeGenerator merges the output of two or more generators. Where the
        values for all specified merge keys are equal

        between two sets of generated parameters, the parameter sets will be
        merged with the parameters from the latter

        generator taking precedence. Parameter sets with merge keys not present
        in the base generator's params will be

        ignored.

        For example, if the first generator produced [{a: '1', b: '2'}, {c: '1',
        d: '1'}] and the second generator produced

        [{'a': 'override'}], the united parameters for merge keys = ['a'] would
        be

        [{a: 'override', b: '1'}, {c: '1', d: '1'}].


        MergeGenerator supports template overriding. If a MergeGenerator is one
        of multiple top-level generators, its

        template will be merged with the top-level generator before the
        parameters are applied.
    applicationsObjectReference:
      type: object
      properties:
        kind:
          type: string
          title: >-
            Kind of the referent.

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

            +
        namespace:
          type: string
          title: >-
            Namespace of the referent.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

            +
        name:
          type: string
          title: >-
            Name of the referent.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

            +
        uid:
          type: string
          title: >-
            UID of the referent.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

            +
        apiVersion:
          type: string
          title: |-
            API version of the referent.
            +
        resourceVersion:
          type: string
          title: >-
            Specific resourceVersion to which this reference is made, if any.

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

            +
        fieldPath:
          type: string
          title: >-
            If referring to a piece of an object instead of an entire object,
            this string

            should contain a valid JSON/Go field access statement, such as
            desiredState.manifest.containers[2].

            For example, if the object reference is to a container within a pod,
            this would take on a value like:

            "spec.containers{name}" (where "name" refers to the name of the
            container that triggered

            the event) or if no container name is specified "spec.containers[2]"
            (container with

            index 2 in this pod). This syntax is chosen only to have some
            well-defined way of

            referencing a part of an object.

            TODO: this design is not final and this field is subject to change
            in the future.

            +
    applicationsOperation:
      type: object
      properties:
        sync:
          $ref: '#/components/schemas/applicationsSyncOperation'
        initiatedBy:
          $ref: '#/components/schemas/applicationsOperationInitiator'
        info:
          type: array
          items:
            $ref: '#/components/schemas/applicationsInfo'
          title: Info is a list of informational items for this operation
        retry:
          $ref: '#/components/schemas/applicationsRetryStrategy'
      title: Operation contains information about a requested or running operation
    applicationsOperationInitiator:
      type: object
      properties:
        username:
          type: string
          title: Username contains the name of a user who started operation
        automated:
          type: boolean
          description: >-
            Automated is set to true if operation was initiated automatically by
            the application controller.
      title: >-
        OperationInitiator contains information about the initiator of an
        operation
    applicationsOperationState:
      type: object
      properties:
        operation:
          $ref: '#/components/schemas/applicationsOperation'
        phase:
          type: string
          title: Phase is the current phase of the operation
        message:
          type: string
          description: >-
            Message holds any pertinent messages when attempting to perform
            operation (typically errors).
        syncResult:
          $ref: '#/components/schemas/applicationsSyncOperationResult'
        startedAt:
          $ref: '#/components/schemas/v1Time'
        finishedAt:
          $ref: '#/components/schemas/v1Time'
        retryCount:
          type: string
          format: int64
          title: RetryCount contains time of operation retries
        startedAtTs:
          type: string
          format: date-time
          title: Started at Timestamp
        finishedAtTs:
          type: string
          format: date-time
          title: Finised at Timestamp
      title: OperationState contains information about state of a running operation
    applicationsOperationTerminateRequest:
      type: object
      properties:
        name:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsOperationTerminateResponse:
      type: object
    applicationsOptionalArray:
      type: object
      properties:
        array:
          type: array
          items:
            type: string
          title: |-
            Array is the value of an array type parameter.
            +optional
    applicationsOptionalMap:
      type: object
      properties:
        map:
          type: object
          additionalProperties:
            type: string
          title: |-
            Map is the value of a map type parameter.
            +optional
    applicationsPluginConfigMapRef:
      type: object
      properties:
        name:
          type: string
          title: Name of the ConfigMap
    applicationsPluginGenerator:
      type: object
      properties:
        configMapRef:
          $ref: '#/components/schemas/applicationsPluginConfigMapRef'
        input:
          $ref: '#/components/schemas/applicationsPluginInput'
        requeueAfterSeconds:
          type: string
          format: int64
          description: >-
            RequeueAfterSeconds determines how long the ApplicationSet
            controller will wait before reconciling the ApplicationSet again.
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        values:
          type: object
          additionalProperties:
            type: string
          description: >-
            Values contains key/value pairs which are passed directly as
            parameters to the template. These values will not be

            sent as parameters to the plugin.
      description: PluginGenerator defines connection info specific to Plugin.
    applicationsPluginInput:
      type: object
      properties:
        parameters:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/v1JSON'
          description: >-
            Parameters contains the information to pass to the plugin. It is a
            map. The keys must be strings, and the

            values can be any type.
    applicationsPullRequestGenerator:
      type: object
      properties:
        github:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorGithub'
        gitlab:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorGitLab'
        gitea:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorGitea'
        bitbucketServer:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorBitbucketServer'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsPullRequestGeneratorFilter'
          description: Filters for which pull requests should be considered.
        requeueAfterSeconds:
          type: string
          format: int64
          description: Standard parameters.
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        bitbucket:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorBitbucket'
        azuredevops:
          $ref: '#/components/schemas/applicationsPullRequestGeneratorAzureDevOps'
      description: >-
        PullRequestGenerator defines a generator that scrapes a PullRequest API
        to find candidate pull requests.
    applicationsPullRequestGeneratorAzureDevOps:
      type: object
      properties:
        organization:
          type: string
          description: Azure DevOps org to scan. Required.
        project:
          type: string
          description: Azure DevOps project name to scan. Required.
        repo:
          type: string
          description: Azure DevOps repo name to scan. Required.
        api:
          type: string
          description: >-
            The Azure DevOps API URL to talk to. If blank, use
            https://dev.azure.com/.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        labels:
          type: array
          items:
            type: string
          title: Labels is used to filter the PRs that you want to target
      description: >-
        PullRequestGeneratorAzureDevOps defines connection info specific to
        AzureDevOps.
    applicationsPullRequestGeneratorBitbucket:
      type: object
      properties:
        owner:
          type: string
          description: Workspace to scan. Required.
        repo:
          type: string
          description: Repo name to scan. Required.
        api:
          type: string
          description: >-
            The Bitbucket REST API URL to talk to. If blank, uses
            https://api.bitbucket.org/2.0.
        basicAuth:
          $ref: '#/components/schemas/applicationsBasicAuthBitbucketServer'
        bearerToken:
          $ref: '#/components/schemas/applicationsBearerTokenBitbucketCloud'
      description: >-
        PullRequestGeneratorBitbucket defines connection info specific to
        Bitbucket.
    applicationsPullRequestGeneratorBitbucketServer:
      type: object
      properties:
        project:
          type: string
          description: Project to scan. Required.
        repo:
          type: string
          description: Repo name to scan. Required.
        api:
          type: string
          description: >-
            The Bitbucket REST API URL to talk to e.g.
            https://bitbucket.org/rest Required.
        basicAuth:
          $ref: '#/components/schemas/applicationsBasicAuthBitbucketServer'
        bearerToken:
          $ref: '#/components/schemas/applicationsBearerTokenBitbucket'
        insecure:
          type: boolean
          title: 'Allow self-signed TLS / Certificates; default: false'
        caRef:
          $ref: '#/components/schemas/applicationsConfigMapKeyRef'
      description: >-
        PullRequestGeneratorBitbucketServer defines connection info specific to
        BitbucketServer.
    applicationsPullRequestGeneratorFilter:
      type: object
      properties:
        branchMatch:
          type: string
        targetBranchMatch:
          type: string
      description: >-
        PullRequestGeneratorFilter is a single pull request filter.

        If multiple filter types are set on a single struct, they will be AND'd
        together. All filters must

        pass for a pull request to be included.
    applicationsPullRequestGeneratorGitLab:
      type: object
      properties:
        project:
          type: string
          description: GitLab project to scan. Required.
        api:
          type: string
          description: The GitLab API URL to talk to. If blank, uses https://gitlab.com/.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        labels:
          type: array
          items:
            type: string
          title: Labels is used to filter the MRs that you want to target
        pullRequestState:
          type: string
          title: >-
            PullRequestState is an additional MRs filter to get only those with
            a certain state. Default: "" (all states)
        insecure:
          type: boolean
          title: >-
            Skips validating the SCM provider's TLS certificate - useful for
            self-signed certificates.; default: false
        caRef:
          $ref: '#/components/schemas/applicationsConfigMapKeyRef'
      description: PullRequestGeneratorGitLab defines connection info specific to GitLab.
    applicationsPullRequestGeneratorGitea:
      type: object
      properties:
        owner:
          type: string
          description: Gitea org or user to scan. Required.
        repo:
          type: string
          description: Gitea repo name to scan. Required.
        api:
          type: string
          title: The Gitea API URL to talk to. Required
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        insecure:
          type: boolean
          description: 'Allow insecure tls, for self-signed certificates; default: false.'
      description: PullRequestGeneratorGitea defines connection info specific to Gitea.
    applicationsPullRequestGeneratorGithub:
      type: object
      properties:
        owner:
          type: string
          description: GitHub org or user to scan. Required.
        repo:
          type: string
          description: GitHub repo name to scan. Required.
        api:
          type: string
          description: >-
            The GitHub API URL to talk to. If blank, use
            https://api.github.com/.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        appSecretName:
          type: string
          description: >-
            AppSecretName is a reference to a GitHub App repo-creds secret with
            permission to access pull requests.
        labels:
          type: array
          items:
            type: string
          title: Labels is used to filter the PRs that you want to target
      description: PullRequestGenerator defines connection info specific to GitHub.
    applicationsResourceAction:
      type: object
      properties:
        name:
          type: string
        params:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceActionParam'
        disabled:
          type: boolean
      title: |-
        TODO: describe this type
        TODO: describe members of this type
    applicationsResourceActionParam:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
        type:
          type: string
        default:
          type: string
      title: |-
        TODO: describe this type
        TODO: describe members of this type
    applicationsResourceActionRunRequest:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        resourceName:
          type: string
        version:
          type: string
        group:
          type: string
        kind:
          type: string
        action:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsResourceActionsListResponse:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceAction'
    applicationsResourceDiff:
      type: object
      properties:
        group:
          type: string
        kind:
          type: string
        namespace:
          type: string
        name:
          type: string
        targetState:
          type: string
          title: >-
            TargetState contains the JSON serialized resource manifest defined
            in the Git/Helm
        liveState:
          type: string
          title: TargetState contains the JSON live resource manifest
        diff:
          type: string
          title: >-
            Diff contains the JSON patch between target and live resource

            Deprecated: use NormalizedLiveState and PredictedLiveState to render
            the difference
        hook:
          type: boolean
        normalizedLiveState:
          type: string
          title: >-
            NormalizedLiveState contains JSON serialized live resource state
            with applied normalizations
        predictedLiveState:
          type: string
          title: >-
            PredictedLiveState contains JSON serialized resource state that is
            calculated based on normalized and target resource state
        resourceVersion:
          type: string
        modified:
          type: boolean
      title: |-
        ResourceDiff holds the diff of a live and target resource object
        TODO: describe members of this type
    applicationsResourceIgnoreDifferences:
      type: object
      properties:
        group:
          type: string
        kind:
          type: string
        name:
          type: string
        namespace:
          type: string
        jsonPointers:
          type: array
          items:
            type: string
        jqPathExpressions:
          type: array
          items:
            type: string
        managedFieldsManagers:
          type: array
          items:
            type: string
          title: >-
            ManagedFieldsManagers is a list of trusted managers. Fields mutated
            by those managers will take precedence over the

            desired state defined in the SCM and won't be displayed in diffs
      description: >-
        ResourceIgnoreDifferences contains resource filter and list of json
        paths which should be ignored during comparison with live state.
    applicationsResourceNetworkingInfo:
      type: object
      properties:
        targetLabels:
          type: object
          additionalProperties:
            type: string
        targetRefs:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceRef'
        labels:
          type: object
          additionalProperties:
            type: string
        ingress:
          type: array
          items:
            $ref: '#/components/schemas/v1LoadBalancerIngress'
        externalURLs:
          type: array
          items:
            type: string
          description: >-
            ExternalURLs holds list of URLs which should be available
            externally. List is populated for ingress resources using rules
            hostnames.
      title: |-
        ResourceNetworkingInfo holds networking resource related information
        TODO: describe members of this type
    applicationsResourceNode:
      type: object
      properties:
        resourceRef:
          $ref: '#/components/schemas/applicationsResourceRef'
        parentRefs:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceRef'
        info:
          type: array
          items:
            $ref: '#/components/schemas/applicationsInfoItem'
        networkingInfo:
          $ref: '#/components/schemas/applicationsResourceNetworkingInfo'
        resourceVersion:
          type: string
        images:
          type: array
          items:
            type: string
        health:
          $ref: '#/components/schemas/applicationsHealthStatus'
        createdAt:
          $ref: '#/components/schemas/v1Time'
      title: |-
        ResourceNode contains information about live resource and its children
        TODO: describe members of this type
    applicationsResourceRef:
      type: object
      properties:
        group:
          type: string
        version:
          type: string
        kind:
          type: string
        namespace:
          type: string
        name:
          type: string
        uid:
          type: string
      title: ResourceRef includes fields which uniquely identify a resource
    applicationsResourceResult:
      type: object
      properties:
        group:
          type: string
          title: Group specifies the API group of the resource
        version:
          type: string
          title: Version specifies the API version of the resource
        kind:
          type: string
          title: Kind specifies the API kind of the resource
        namespace:
          type: string
          title: Namespace specifies the target namespace of the resource
        name:
          type: string
          title: Name specifies the name of the resource
        status:
          type: string
          title: >-
            Status holds the final result of the sync. Will be empty if the
            resources is yet to be applied/pruned and is always zero-value for
            hooks
        message:
          type: string
          title: >-
            Message contains an informational or error message for the last sync
            OR operation
        hookType:
          type: string
          title: >-
            HookType specifies the type of the hook. Empty for non-hook
            resources
        hookPhase:
          type: string
          description: >-
            HookPhase contains the state of any operation associated with this
            resource OR hook

            This can also contain values for non-hook resources.
        syncPhase:
          type: string
          title: >-
            SyncPhase indicates the particular phase of the sync that this
            result was acquired in
      title: ResourceResult holds the operation result details of a specific resource
    applicationsResourceStatus:
      type: object
      properties:
        group:
          type: string
        version:
          type: string
        kind:
          type: string
        namespace:
          type: string
        name:
          type: string
        status:
          type: string
        health:
          $ref: '#/components/schemas/applicationsHealthStatus'
        hook:
          type: boolean
        requiresPruning:
          type: boolean
        syncWave:
          type: string
          format: int64
        requiresDeletionConfirmation:
          type: boolean
      title: |-
        ResourceStatus holds the current sync and health status of a resource
        TODO: describe members of this type
    applicationsResourcesQuery:
      type: object
      properties:
        applicationName:
          type: string
        namespace:
          type: string
        name:
          type: string
        version:
          type: string
        group:
          type: string
        kind:
          type: string
        appNamespace:
          type: string
        project:
          type: string
    applicationsRetryStrategy:
      type: object
      properties:
        limit:
          type: string
          format: int64
          description: >-
            Limit is the maximum number of attempts for retrying a failed sync.
            If set to 0, no retries will be performed.
        backoff:
          $ref: '#/components/schemas/applicationsBackoff'
      title: >-
        RetryStrategy contains information about the strategy to apply when a
        sync failed
    applicationsRevisionHistory:
      type: object
      properties:
        revision:
          type: string
          title: Revision holds the revision the sync was performed against
        deployedAt:
          $ref: '#/components/schemas/v1Time'
        id:
          type: string
          format: int64
          title: ID is an auto incrementing identifier of the RevisionHistory
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        deployStartedAt:
          $ref: '#/components/schemas/v1Time'
        deployedAtTs:
          type: string
          format: date-time
        deployStartedAtTs:
          type: string
          format: date-time
        sources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSource'
          title: >-
            Sources is a reference to the application sources used for the sync
            operation
        revisions:
          type: array
          items:
            type: string
          title: >-
            Revisions holds the revision of each source in sources field the
            sync was performed against
        initiatedBy:
          $ref: '#/components/schemas/applicationsOperationInitiator'
      title: RevisionHistory contains history information about a previous sync
    applicationsRevisionMetadataQuery:
      type: object
      properties:
        name:
          type: string
          title: the application's name
        revision:
          type: string
          title: the revision of the app
        appNamespace:
          type: string
          title: the application's namespace
        project:
          type: string
        sourceIndex:
          type: integer
          format: int32
          title: source index (for multi source apps)
        versionId:
          type: integer
          format: int32
          title: versionId from historical data (for multi source apps)
    applicationsSCMProviderGenerator:
      type: object
      properties:
        github:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorGithub'
        gitlab:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorGitlab'
        bitbucket:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorBitbucket'
        bitbucketServer:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorBitbucketServer'
        gitea:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorGitea'
        azureDevOps:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorAzureDevOps'
        filters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsSCMProviderGeneratorFilter'
          description: Filters for which repos should be considered.
        cloneProtocol:
          type: string
          description: >-
            Which protocol to use for the SCM URL. Default is provider-specific
            but ssh if possible. Not all providers

            necessarily support all protocols.
        requeueAfterSeconds:
          type: string
          format: int64
          description: Standard parameters.
        template:
          $ref: '#/components/schemas/applicationsApplicationSetTemplate'
        values:
          type: object
          additionalProperties:
            type: string
          title: >-
            Values contains key/value pairs which are passed directly as
            parameters to the template
        awsCodeCommit:
          $ref: '#/components/schemas/applicationsSCMProviderGeneratorAWSCodeCommit'
      description: >-
        SCMProviderGenerator defines a generator that scrapes a SCMaaS API to
        find candidate repos.
    applicationsSCMProviderGeneratorAWSCodeCommit:
      type: object
      properties:
        tagFilters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsTagFilter'
          title: TagFilters provides the tag filter(s) for repo discovery
        role:
          type: string
          description: >-
            Role provides the AWS IAM role to assume, for cross-account repo
            discovery

            if not provided, AppSet controller will use its pod/node identity to
            discover.
        region:
          type: string
          description: >-
            Region provides the AWS region to discover repos.

            if not provided, AppSet controller will infer the current region
            from environment.
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
      description: >-
        SCMProviderGeneratorAWSCodeCommit defines connection info specific to
        AWS CodeCommit.
    applicationsSCMProviderGeneratorAzureDevOps:
      type: object
      properties:
        organization:
          type: string
          description: Azure Devops organization. Required. E.g. "my-organization".
        api:
          type: string
          description: The URL to Azure DevOps. If blank, use https://dev.azure.com.
        teamProject:
          type: string
          description: Azure Devops team project. Required. E.g. "my-team".
        accessTokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
      description: >-
        SCMProviderGeneratorAzureDevOps defines connection info specific to
        Azure DevOps.
    applicationsSCMProviderGeneratorBitbucket:
      type: object
      properties:
        owner:
          type: string
          description: Bitbucket workspace to scan. Required.
        user:
          type: string
          title: >-
            Bitbucket user to use when authenticating.  Should have a "member"
            role to be able to read all repositories and branches.  Required
        appPasswordRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        allBranches:
          type: boolean
          description: Scan all branches instead of just the main branch.
      description: >-
        SCMProviderGeneratorBitbucket defines connection info specific to
        Bitbucket Cloud (API version 2).
    applicationsSCMProviderGeneratorBitbucketServer:
      type: object
      properties:
        project:
          type: string
          description: Project to scan. Required.
        api:
          type: string
          description: The Bitbucket Server REST API URL to talk to. Required.
        basicAuth:
          $ref: '#/components/schemas/applicationsBasicAuthBitbucketServer'
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
        bearerToken:
          $ref: '#/components/schemas/applicationsBearerTokenBitbucket'
        insecure:
          type: boolean
          title: 'Allow self-signed TLS / Certificates; default: false'
        caRef:
          $ref: '#/components/schemas/applicationsConfigMapKeyRef'
      description: >-
        SCMProviderGeneratorBitbucketServer defines connection info specific to
        Bitbucket Server.
    applicationsSCMProviderGeneratorFilter:
      type: object
      properties:
        repositoryMatch:
          type: string
          description: A regex for repo names.
        pathsExist:
          type: array
          items:
            type: string
          description: An array of paths, all of which must exist.
        pathsDoNotExist:
          type: array
          items:
            type: string
          description: An array of paths, all of which must not exist.
        labelMatch:
          type: string
          description: A regex which must match at least one label.
        branchMatch:
          type: string
          description: A regex which must match the branch name.
      description: >-
        SCMProviderGeneratorFilter is a single repository filter.

        If multiple filter types are set on a single struct, they will be AND'd
        together. All filters must

        pass for a repo to be included.
    applicationsSCMProviderGeneratorGitea:
      type: object
      properties:
        owner:
          type: string
          description: Gitea organization or user to scan. Required.
        api:
          type: string
          description: The Gitea URL to talk to. For example https://gitea.mydomain.com/.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
        insecure:
          type: boolean
          title: 'Allow self-signed TLS / Certificates; default: false'
      description: SCMProviderGeneratorGitea defines a connection info specific to Gitea.
    applicationsSCMProviderGeneratorGithub:
      type: object
      properties:
        organization:
          type: string
          description: GitHub org to scan. Required.
        api:
          type: string
          description: >-
            The GitHub API URL to talk to. If blank, use
            https://api.github.com/.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        appSecretName:
          type: string
          description: AppSecretName is a reference to a GitHub App repo-creds secret.
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
      description: SCMProviderGeneratorGithub defines connection info specific to GitHub.
    applicationsSCMProviderGeneratorGitlab:
      type: object
      properties:
        group:
          type: string
          description: >-
            Gitlab group to scan. Required.  You can use either the project id
            (recommended) or the full namespaced path.
        includeSubgroups:
          type: boolean
          title: >-
            Recurse through subgroups (true) or scan only the base group
            (false).  Defaults to "false"
        api:
          type: string
          description: The Gitlab API URL to talk to.
        tokenRef:
          $ref: '#/components/schemas/applicationsSecretRef'
        allBranches:
          type: boolean
          description: Scan all branches instead of just the default branch.
        insecure:
          type: boolean
          title: >-
            Skips validating the SCM provider's TLS certificate - useful for
            self-signed certificates.; default: false
        includeSharedProjects:
          type: boolean
          title: >-
            When recursing through subgroups, also include shared Projects
            (true) or scan only the subgroups under same path (false).  Defaults
            to "true"
        topic:
          type: string
          description: Filter repos list based on Gitlab Topic.
        caRef:
          $ref: '#/components/schemas/applicationsConfigMapKeyRef'
      description: SCMProviderGeneratorGitlab defines connection info specific to Gitlab.
    applicationsSecretRef:
      type: object
      properties:
        secretName:
          type: string
        key:
          type: string
      description: Utility struct for a reference to a secret key.
    applicationsSyncOperation:
      type: object
      properties:
        revision:
          type: string
          description: >-
            Revision is the revision (Git) or chart version (Helm) which to sync
            the application to

            If omitted, will use the revision specified in app spec.
        prune:
          type: boolean
          title: >-
            Prune specifies to delete resources from the cluster that are no
            longer tracked in git
        dryRun:
          type: boolean
          title: >-
            DryRun specifies to perform a `kubectl apply --dry-run` without
            actually performing the sync
        syncStrategy:
          $ref: '#/components/schemas/applicationsSyncStrategy'
        resources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsSyncOperationResource'
          title: Resources describes which resources shall be part of the sync
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        manifests:
          type: array
          items:
            type: string
          title: >-
            Manifests is an field that overrides sync source with a local
            directory for development
        syncOptions:
          type: array
          items:
            type: string
          title: SyncOptions provide per-sync sync-options, e.g. Validate=false
        sources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSource'
          title: >-
            Sources overrides the source definition set in the application.

            This is typically set in a Rollback operation and is nil during a
            Sync operation
        revisions:
          type: array
          items:
            type: string
          description: >-
            Revisions is the list of revision (Git) or chart version (Helm)
            which to sync each source in sources field for the application to

            If omitted, will use the revision specified in app spec.
        autoHealAttemptsCount:
          type: string
          format: int64
          title: SelfHealAttemptsCount contains the number of auto-heal attempts
      description: SyncOperation contains details about a sync operation.
    applicationsSyncOperationResource:
      type: object
      properties:
        group:
          type: string
        kind:
          type: string
        name:
          type: string
        namespace:
          type: string
      description: SyncOperationResource contains resources to sync.
    applicationsSyncOperationResult:
      type: object
      properties:
        resources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsResourceResult'
          title: >-
            Resources contains a list of sync result items for each individual
            resource in a sync operation
        revision:
          type: string
          title: Revision holds the revision this sync operation was performed to
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        sources:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSource'
          title: >-
            Source records the application source information of the sync, used
            for comparing auto-sync
        revisions:
          type: array
          items:
            type: string
          title: >-
            Revisions holds the revision this sync operation was performed for
            respective indexed source in sources field
        managedNamespaceMetadata:
          $ref: '#/components/schemas/applicationsManagedNamespaceMetadata'
      title: SyncOperationResult represent result of sync operation
    applicationsSyncOptions:
      type: object
      properties:
        items:
          type: array
          items:
            type: string
    applicationsSyncPolicy:
      type: object
      properties:
        automated:
          $ref: '#/components/schemas/applicationsSyncPolicyAutomated'
        syncOptions:
          type: array
          items:
            type: string
          title: Options allow you to specify whole app sync-options
        retry:
          $ref: '#/components/schemas/applicationsRetryStrategy'
        managedNamespaceMetadata:
          $ref: '#/components/schemas/applicationsManagedNamespaceMetadata'
      title: >-
        SyncPolicy controls when a sync will be performed in response to updates
        in git
    applicationsSyncPolicyAutomated:
      type: object
      properties:
        prune:
          type: boolean
          title: >-
            Prune specifies whether to delete resources from the cluster that
            are not found in the sources anymore as part of automated sync
            (default: false)
        selfHeal:
          type: boolean
          title: >-
            SelfHeal specifes whether to revert resources back to their desired
            state upon modification in the cluster (default: false)
        allowEmpty:
          type: boolean
          title: 'AllowEmpty allows apps have zero live resources (default: false)'
      title: SyncPolicyAutomated controls the behavior of an automated sync
    applicationsSyncStatus:
      type: object
      properties:
        status:
          type: string
          title: Status is the sync state of the comparison
        comparedTo:
          $ref: '#/components/schemas/applicationsComparedTo'
        revision:
          type: string
          title: >-
            Revision contains information about the revision the comparison has
            been performed to
        revisions:
          type: array
          items:
            type: string
          title: >-
            Revisions contains information about the revisions of multiple
            sources the comparison has been performed to
      title: >-
        SyncStatus contains information about the currently observed live and
        desired states of an application
    applicationsSyncStrategy:
      type: object
      properties:
        apply:
          $ref: '#/components/schemas/applicationsSyncStrategyApply'
        hook:
          $ref: '#/components/schemas/applicationsSyncStrategyHook'
      title: SyncStrategy controls the manner in which a sync is performed
    applicationsSyncStrategyApply:
      type: object
      properties:
        force:
          type: boolean
          description: >-
            Force indicates whether or not to supply the --force flag to
            `kubectl apply`.

            The --force flag deletes and re-create the resource, when PATCH
            encounters conflict and has

            retried for 5 times.
      title: SyncStrategyApply uses `kubectl apply` to perform the apply
    applicationsSyncStrategyHook:
      type: object
      properties:
        force:
          type: boolean
          title: |-
            Embed SyncStrategyApply type to inherit any `apply` options
            +
      description: |-
        SyncStrategyHook will perform a sync using hooks annotations.
        If no hook annotation is specified falls back to `kubectl apply`.
    applicationsTagFilter:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
    appprojectsAppProject:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/appprojectsAppProjectSpec'
        status:
          $ref: '#/components/schemas/appprojectsAppProjectStatus'
      title: >-
        AppProject provides a logical grouping of applications, providing
        controls for:

        * where the apps may deploy to (cluster whitelist)

        * what may be deployed (repository whitelist, resource
        whitelist/blacklist)

        * who can access these applications (roles, OIDC group claims bindings)

        * and what they can do (RBAC policies)

        * automation access to these roles (JWT tokens)

        +genclient

        +genclient:noStatus

        +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

        +kubebuilder:resource:path=appprojects,shortName=appproj;appprojs
    appprojectsAppProjectList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsAppProject'
      title: |-
        AppProjectList is list of AppProject resources
        +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
    appprojectsAppProjectSpec:
      type: object
      properties:
        sourceRepos:
          type: array
          items:
            type: string
          title: >-
            SourceRepos contains list of repository URLs which can be used for
            deployment
        destinations:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsApplicationDestination'
          title: Destinations contains list of destinations available for deployment
        description:
          type: string
          title: Description contains optional project description
        roles:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsProjectRole'
          title: Roles are user defined RBAC roles associated with this project
        clusterResourceWhitelist:
          type: array
          items:
            $ref: '#/components/schemas/v1GroupKind'
          title: >-
            ClusterResourceWhitelist contains list of whitelisted cluster level
            resources
        namespaceResourceBlacklist:
          type: array
          items:
            $ref: '#/components/schemas/v1GroupKind'
          title: >-
            NamespaceResourceBlacklist contains list of blacklisted namespace
            level resources
        orphanedResources:
          $ref: '#/components/schemas/appprojectsOrphanedResourcesMonitorSettings'
        syncWindows:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsSyncWindow'
          title: SyncWindows controls when syncs can be run for apps in this project
        namespaceResourceWhitelist:
          type: array
          items:
            $ref: '#/components/schemas/v1GroupKind'
          title: >-
            NamespaceResourceWhitelist contains list of whitelisted namespace
            level resources
        signatureKeys:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsSignatureKey'
          title: >-
            SignatureKeys contains a list of PGP key IDs that commits in Git
            must be signed with in order to be allowed for sync
        clusterResourceBlacklist:
          type: array
          items:
            $ref: '#/components/schemas/v1GroupKind'
          title: >-
            ClusterResourceBlacklist contains list of blacklisted cluster level
            resources
        sourceNamespaces:
          type: array
          items:
            type: string
          title: >-
            SourceNamespaces defines the namespaces application resources are
            allowed to be created in
        permitOnlyProjectScopedClusters:
          type: boolean
          title: >-
            PermitOnlyProjectScopedClusters determines whether destinations can
            only reference clusters which are project-scoped
        destinationServiceAccounts:
          type: array
          items:
            $ref: >-
              #/components/schemas/appprojectsApplicationDestinationServiceAccount
          description: >-
            DestinationServiceAccounts holds information about the service
            accounts to be impersonated for the application sync operation for
            each destination.
      title: AppProjectSpec is the specification of an AppProject
    appprojectsAppProjectStatus:
      type: object
      properties:
        jwtTokensByRole:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/appprojectsJWTTokens'
          title: >-
            JWTTokensByRole contains a list of JWT tokens issued for a given
            role
      title: AppProjectStatus contains status information for AppProject CRs
    appprojectsApplicationDestination:
      type: object
      properties:
        server:
          type: string
          title: >-
            Server specifies the URL of the target cluster and must be set to
            the Kubernetes control plane API
        namespace:
          type: string
          title: >-
            Namespace specifies the target namespace for the application's
            resources.

            The namespace will only be set for namespace-scoped resources that
            have not set a value for .metadata.namespace
        name:
          type: string
          title: >-
            Name is an alternate way of specifying the target cluster by its
            symbolic name
      title: >-
        ApplicationDestination holds information about the application's
        destination
    appprojectsApplicationDestinationServiceAccount:
      type: object
      properties:
        server:
          type: string
          description: >-
            Server specifies the URL of the target cluster's Kubernetes control
            plane API.
        namespace:
          type: string
          description: >-
            Namespace specifies the target namespace for the application's
            resources.
        defaultServiceAccount:
          type: string
          title: >-
            DefaultServiceAccount to be used for impersonation during the sync
            operation
      description: >-
        ApplicationDestinationServiceAccount holds information about the service
        account to be impersonated for the application sync operation.
    appprojectsJWTToken:
      type: object
      properties:
        iat:
          type: string
          format: int64
        exp:
          type: string
          format: int64
        id:
          type: string
      title: JWTToken holds the issuedAt and expiresAt values of a token
    appprojectsJWTTokens:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsJWTToken'
      title: JWTTokens represents a list of JWT tokens
    appprojectsOrphanedResourceKey:
      type: object
      properties:
        group:
          type: string
        kind:
          type: string
        name:
          type: string
      title: OrphanedResourceKey is a reference to a resource to be ignored from
    appprojectsOrphanedResourcesMonitorSettings:
      type: object
      properties:
        warn:
          type: boolean
          title: >-
            Warn indicates if warning condition should be created for apps which
            have orphaned resources
        ignore:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsOrphanedResourceKey'
          title: >-
            Ignore contains a list of resources that are to be excluded from
            orphaned resources monitoring
      title: >-
        OrphanedResourcesMonitorSettings holds settings of orphaned resources
        monitoring
    appprojectsProjectRole:
      type: object
      properties:
        name:
          type: string
          title: Name is a name for this role
        description:
          type: string
          title: Description is a description of the role
        policies:
          type: array
          items:
            type: string
          title: >-
            Policies Stores a list of casbin formatted strings that define
            access policies for the role in the project
        jwtTokens:
          type: array
          items:
            $ref: '#/components/schemas/appprojectsJWTToken'
          title: JWTTokens are a list of generated JWT tokens bound to this role
        groups:
          type: array
          items:
            type: string
          title: Groups are a list of OIDC group claims bound to this role
      title: ProjectRole represents a role that has access to a project
    appprojectsSignatureKey:
      type: object
      properties:
        keyID:
          type: string
          title: The ID of the key in hexadecimal notation
      title: >-
        SignatureKey is the specification of a key required to verify commit
        signatures with
    appprojectsSyncWindow:
      type: object
      properties:
        kind:
          type: string
          title: Kind defines if the window allows or blocks syncs
        schedule:
          type: string
          title: Schedule is the time the window will begin, specified in cron format
        duration:
          type: string
          title: Duration is the amount of time the sync window will be open
        applications:
          type: array
          items:
            type: string
          title: >-
            Applications contains a list of applications that the window will
            apply to
        namespaces:
          type: array
          items:
            type: string
          title: >-
            Namespaces contains a list of namespaces that the window will apply
            to
        clusters:
          type: array
          items:
            type: string
          title: Clusters contains a list of clusters that the window will apply to
        manualSync:
          type: boolean
          title: ManualSync enables manual syncs when they would otherwise be blocked
        timeZone:
          type: string
          title: TimeZone of the sync that will be applied to the schedule
      title: >-
        SyncWindow contains the kind, time, duration and attributes that are
        used to assign the syncWindows to apps
    certificatesRepositoryCertificate:
      type: object
      properties:
        serverName:
          type: string
          title: >-
            ServerName specifies the DNS name of the server this certificate is
            intended for
        certType:
          type: string
          title: >-
            CertType specifies the type of the certificate - currently one of
            "https" or "ssh"
        certSubType:
          type: string
          title: CertSubType specifies the sub type of the cert, i.e. "ssh-rsa"
        certData:
          type: string
          format: byte
          title: >-
            CertData contains the actual certificate data, dependent on the
            certificate type
        certInfo:
          type: string
          title: >-
            CertInfo will hold additional certificate info, depdendent on the
            certificate type (e.g. SSH fingerprint, X509 CommonName)
      title: >-
        A RepositoryCertificate is either SSH known hosts entry or TLS
        certificate
    certificatesRepositoryCertificateCreateRequest:
      type: object
      properties:
        certificates:
          $ref: '#/components/schemas/certificatesRepositoryCertificateList'
        upsert:
          type: boolean
          title: Whether to upsert already existing certificates
      title: Request to create a set of certificates
    certificatesRepositoryCertificateList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/certificatesRepositoryCertificate'
          title: List of certificates to be processed
      title: RepositoryCertificateList is a collection of RepositoryCertificates
    certificatesRepositoryCertificateQuery:
      type: object
      properties:
        hostNamePattern:
          type: string
          title: >-
            A file-glob pattern (not regular expression) the host name has to
            match
        certType:
          type: string
          title: The type of the certificate to match (ssh or https)
        certSubType:
          type: string
          title: >-
            The sub type of the certificate to match (protocol dependent,
            usually only used for ssh certs)
    clustersAWSAuthConfig:
      type: object
      properties:
        clusterName:
          type: string
          title: ClusterName contains AWS cluster name
        roleARN:
          type: string
          description: >-
            RoleARN contains optional role ARN. If set then AWS IAM
            Authenticator assume a role to perform cluster operations instead of
            the default AWS credential provider chain.
      title: AWSAuthConfig is an AWS IAM authentication configuration
    clustersCluster:
      type: object
      properties:
        server:
          type: string
          title: Server is the API server URL of the Kubernetes cluster
        name:
          type: string
          title: Name of the cluster. If omitted, will use the server address
        config:
          $ref: '#/components/schemas/clustersClusterConfig'
        connectionState:
          $ref: '#/components/schemas/commonsConnectionState'
        serverVersion:
          type: string
          title: |-
            DEPRECATED: use Info.ServerVersion field instead.
            The server version
        namespaces:
          type: array
          items:
            type: string
          description: >-
            Holds list of namespaces which are accessible in that cluster.
            Cluster level resources will be ignored if namespace list is not
            empty.
        refreshRequestedAt:
          $ref: '#/components/schemas/v1Time'
        info:
          $ref: '#/components/schemas/clustersClusterInfo'
        shard_deprecated:
          type: string
          format: int64
          description: >-
            DEPRECATED: use Shard field instead.

            Shard contains optional shard number. Calculated on the fly by the
            application controller if not specified.
        clusterResources:
          type: boolean
          description: >-
            Indicates if cluster level resources should be managed. This setting
            is used only if cluster is connected in a namespaced mode.
        project:
          type: string
          title: >-
            Reference between project and cluster that allow you automatically
            to be added as item inside Destinations project entity
        labels:
          type: object
          additionalProperties:
            type: string
          title: Labels for cluster secret metadata
        annotations:
          type: object
          additionalProperties:
            type: string
          title: Annotations for cluster secret metadata
        type:
          $ref: '#/components/schemas/clustersClusterType'
        refreshRequestedAtTs:
          type: string
          format: date-time
          title: >-
            refreshRequestedAtTs is the google timestamp variation of
            refreshRequestedAt
        shard:
          type: string
          format: int64
      title: Cluster is the definition of a cluster resource
    clustersClusterCacheInfo:
      type: object
      properties:
        resourcesCount:
          type: string
          format: int64
          title: ResourcesCount holds number of observed Kubernetes resources
        apisCount:
          type: string
          format: int64
          title: APIsCount holds number of observed Kubernetes API count
        lastCacheSyncTime:
          $ref: '#/components/schemas/v1Time'
        lastCacheSyncTimeTs:
          type: string
          format: date-time
          title: >-
            lastCacheSyncTimeTs is the google timestamp variation of
            lastCacheSyncTime
      title: ClusterCacheInfo contains information about the cluster cache
    clustersClusterConfig:
      type: object
      properties:
        username:
          type: string
          title: Server requires Basic authentication
        password:
          type: string
        bearerToken:
          type: string
          description: >-
            Server requires Bearer authentication. This client will not attempt
            to use

            refresh tokens for an OAuth2 flow.

            TODO: demonstrate an OAuth2 compatible client.
        tlsClientConfig:
          $ref: '#/components/schemas/clustersTLSClientConfig'
        awsAuthConfig:
          $ref: '#/components/schemas/clustersAWSAuthConfig'
        execProviderConfig:
          $ref: '#/components/schemas/clustersExecProviderConfig'
        clusterConnectionType:
          type: string
          title: Identifies the authentication method used to connect to the cluster
        roleARN:
          type: string
          description: >-
            RoleARN contains optional role ARN. If set then AWS IAM
            Authenticator assume a role to perform cluster operations instead of
            the default AWS credential provider chain.
        awsClusterName:
          type: string
          description: >-
            AWS Cluster name. If set then AWS CLI EKS token command will be used
            to access cluster.
        disableCompression:
          type: boolean
          description: >-
            DisableCompression bypasses automatic GZip compression requests to
            the server.
        proxyUrl:
          type: string
          title: >-
            ProxyURL is the URL to the proxy to be used for all requests send to
            the server
      description: >-
        ClusterConfig is the configuration attributes. This structure is subset
        of the go-client

        rest.Config with annotations added for marshalling.
    clustersClusterCreateRequest:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/clustersCluster'
        upsert:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
    clustersClusterID:
      type: object
      properties:
        type:
          type: string
          title: >-
            type is the type of the specified cluster identifier ( "server" -
            default, "name" )
        value:
          type: string
          title: value holds the cluster server URL or cluster name
      title: ClusterID holds a cluster server URL or cluster name
    clustersClusterInfo:
      type: object
      properties:
        connectionState:
          $ref: '#/components/schemas/commonsConnectionState'
        serverVersion:
          type: string
          title: >-
            ServerVersion contains information about the Kubernetes version of
            the cluster
        cacheInfo:
          $ref: '#/components/schemas/clustersClusterCacheInfo'
        applicationsCount:
          type: string
          format: int64
          title: >-
            ApplicationsCount is the number of applications managed by Argo CD
            on the cluster
        apiVersions:
          type: array
          items:
            type: string
          title: APIVersions contains list of API versions supported by the cluster
      title: ClusterInfo contains information about the cluster
    clustersClusterList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/clustersCluster'
      description: ClusterList is a collection of Clusters.
    clustersClusterQuery:
      type: object
      properties:
        server:
          type: string
        name:
          type: string
        id:
          $ref: '#/components/schemas/clustersClusterID'
        project:
          type: string
      title: ClusterQuery is a query for cluster resources
    clustersClusterResponse:
      type: object
    clustersClusterType:
      type: string
      enum:
        - CUSTOMER_PROVIDED
        - HARNESS_HOSTED
      default: CUSTOMER_PROVIDED
    clustersClusterUpdateRequest:
      type: object
      properties:
        cluster:
          $ref: '#/components/schemas/clustersCluster'
        updatedFields:
          type: array
          items:
            type: string
        updateMask:
          $ref: '#/components/schemas/protobufFieldMask'
        tags:
          type: object
          additionalProperties:
            type: string
        id:
          $ref: '#/components/schemas/clustersClusterID'
    clustersExecProviderConfig:
      type: object
      properties:
        command:
          type: string
          title: Command to execute
        args:
          type: array
          items:
            type: string
          title: Arguments to pass to the command when executing it
        env:
          type: object
          additionalProperties:
            type: string
          title: >-
            Env defines additional environment variables to expose to the
            process
        apiVersion:
          type: string
          title: Preferred input version of the ExecInfo
        installHint:
          type: string
          title: >-
            This text is shown to the user when the executable doesn't seem to
            be present
      title: >-
        ExecProviderConfig is config used to call an external command to perform
        cluster authentication

        See: https://godoc.org/k8s.io/client-go/tools/clientcmd/api#ExecConfig
    clustersTLSClientConfig:
      type: object
      properties:
        insecure:
          type: boolean
          description: >-
            Insecure specifies that the server should be accessed without
            verifying the TLS certificate. For testing only.
        serverName:
          type: string
          description: >-
            ServerName is passed to the server for SNI and is used in the client
            to check server

            certificates against. If ServerName is empty, the hostname used to
            contact the

            server is used.
        certData:
          type: string
          format: byte
          title: >-
            CertData holds PEM-encoded bytes (typically read from a client
            certificate file).

            CertData takes precedence over CertFile
        keyData:
          type: string
          format: byte
          title: >-
            KeyData holds PEM-encoded bytes (typically read from a client
            certificate key file).

            KeyData takes precedence over KeyFile
        caData:
          type: string
          format: byte
          title: >-
            CAData holds PEM-encoded bytes (typically read from a root
            certificates bundle).

            CAData takes precedence over CAFile
      title: TLSClientConfig contains settings to enable transport layer security
    commonsConnectionState:
      type: object
      properties:
        status:
          type: string
          title: Status contains the current status indicator for the connection
        message:
          type: string
          title: >-
            Message contains human readable information about the connection
            status
        attemptedAt:
          $ref: '#/components/schemas/v1Time'
        attemptedAtTs:
          type: string
          format: date-time
          title: attemptedAtTs is the google timestamp variation of attemptedAt
      title: >-
        ConnectionState contains information about remote resource connection
        state, currently used for clusters and repositories
    gatewayruntimeError:
      type: object
      properties:
        error:
          type: string
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    gitopsservicev1Namespace:
      type: object
      properties:
        name:
          type: string
    gitopsservicev1NamespaceList:
      type: object
      properties:
        namespaces:
          type: array
          items:
            $ref: '#/components/schemas/gitopsservicev1Namespace'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    gpgkeysGnuPGPublicKey:
      type: object
      properties:
        keyID:
          type: string
          title: KeyID specifies the key ID, in hexadecimal string format
        fingerprint:
          type: string
          title: Fingerprint is the fingerprint of the key
        owner:
          type: string
          title: Owner holds the owner identification, e.g. a name and e-mail address
        trust:
          type: string
          title: Trust holds the level of trust assigned to this key
        subType:
          type: string
          title: SubType holds the key's sub type (e.g. rsa4096)
        keyData:
          type: string
          title: KeyData holds the raw key data, in base64 encoded format
      title: GnuPGPublicKey is a representation of a GnuPG public key
    gpgkeysGnuPGPublicKeyCreateRequest:
      type: object
      properties:
        publickey:
          $ref: '#/components/schemas/gpgkeysGnuPGPublicKey'
        upsert:
          type: boolean
          title: Whether to upsert already existing public keys
      title: Request to create one or more public keys on the server
    gpgkeysGnuPGPublicKeyCreateResponse:
      type: object
      properties:
        created:
          $ref: '#/components/schemas/gpgkeysGnuPGPublicKeyList'
        skipped:
          type: array
          items:
            type: string
          title: >-
            List of key IDs that haven been skipped because they already exist
            on the server
      title: Response to a public key creation request
    gpgkeysGnuPGPublicKeyList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/gpgkeysGnuPGPublicKey'
      title: GnuPGPublicKeyList is a collection of GnuPGPublicKey objects
    gpgkeysGnuPGPublicKeyQuery:
      type: object
      properties:
        keyID:
          type: string
          title: The GPG key ID to query for
      title: Message to query the server for configured GPG public keys
    gpgkeysGnuPGPublicKeyResponse:
      type: object
      title: Generic (empty) response for GPG public key CRUD requests
    hrepocredsRepoCreds:
      type: object
      properties:
        url:
          type: string
          title: URL is the URL that this credentials matches to
        username:
          type: string
          title: Username for authenticating at the repo server
        password:
          type: string
          title: Password for authenticating at the repo server
        sshPrivateKey:
          type: string
          title: >-
            SSHPrivateKey contains the private key data for authenticating at
            the repo server using SSH (only Git repos)
        tlsClientCertData:
          type: string
          title: >-
            TLSClientCertData specifies the TLS client cert data for
            authenticating at the repo server
        tlsClientCertKey:
          type: string
          title: >-
            TLSClientCertKey specifies the TLS client cert key for
            authenticating at the repo server
        githubAppPrivateKey:
          type: string
          title: >-
            GithubAppPrivateKey specifies the private key PEM data for
            authentication via GitHub app
        githubAppID:
          type: string
          format: int64
          title: >-
            GithubAppId specifies the Github App ID of the app used to access
            the repo for GitHub app authentication
        githubAppInstallationID:
          type: string
          format: int64
          title: >-
            GithubAppInstallationId specifies the ID of the installed GitHub App
            for GitHub app authentication
        githubAppEnterpriseBaseUrl:
          type: string
          title: >-
            GithubAppEnterpriseBaseURL specifies the GitHub API URL for GitHub
            app authentication. If empty will default to https://api.github.com
        enableOCI:
          type: boolean
          title: >-
            EnableOCI specifies whether helm-oci support should be enabled for
            this repo
        type:
          type: string
          description: >-
            Type specifies the type of the repoCreds. Can be either "git" or
            "helm. "git" is assumed if empty or absent.
        name:
          type: string
          title: Repository human readable name
      title: RepoCreds holds the definition for repository credentials
    hrepocredsRepoCredsCreateRequest:
      type: object
      properties:
        creds:
          $ref: '#/components/schemas/hrepocredsRepoCreds'
        upsert:
          type: boolean
          title: Whether to create in upsert mode
      title: >-
        RepoCreateRequest is a request for creating repository credentials
        config
    hrepocredsRepoCredsQuery:
      type: object
      properties:
        url:
          type: string
          title: Repo URL for query
        repoCredsType:
          type: string
          title: RepoCreds type - git or helm
      title: RepoCredsQuery is a query for RepoCreds resources
    hrepocredsRepoCredsResponse:
      type: object
      title: RepoCredsResponse is a response to most repository credentials requests
    hrepocredsRepoCredsUpdateRequest:
      type: object
      properties:
        creds:
          $ref: '#/components/schemas/hrepocredsRepoCreds'
        updateMask:
          $ref: '#/components/schemas/protobufFieldMask'
      title: >-
        RepoCredsUpdateRequest is a request for updating existing repository
        credentials config
    intstrIntOrString:
      type: object
      properties:
        type:
          type: string
          format: int64
        intVal:
          type: integer
          format: int32
        strVal:
          type: string
      description: |-
        +protobuf=true
        +protobuf.options.(gogoproto.goproto_stringer)=false
        +k8s:openapi-gen=true
      title: |-
        IntOrString is a type that can hold an int32 or a string.  When used in
        JSON or YAML marshalling and unmarshalling, it produces or consumes the
        inner type.  This allows you to have, for example, a JSON field that can
        accept a name or number.
        TODO: Rename to Int32OrString
    projectsEmptyResponse:
      type: object
    projectsProjectCreateRequest:
      type: object
      properties:
        project:
          $ref: '#/components/schemas/appprojectsAppProject'
        upsert:
          type: boolean
      description: ProjectCreateRequest defines project creation parameters.
    projectsProjectQuery:
      type: object
      properties:
        name:
          type: string
      title: ProjectQuery is a query for Project resources
    projectsProjectUpdateRequest:
      type: object
      properties:
        project:
          $ref: '#/components/schemas/appprojectsAppProject'
    protobufAny:
      type: object
      properties:
        type_url:
          type: string
          description: >-
            A URL/resource name that uniquely identifies the type of the
            serialized

            protocol buffer message. This string must contain at least

            one "/" character. The last segment of the URL's path must represent

            the fully qualified name of the type (as in

            `path/google.protobuf.Duration`). The name should be in a canonical
            form

            (e.g., leading "." is not accepted).


            In practice, teams usually precompile into the binary all types that
            they

            expect it to use in the context of Any. However, for URLs which use
            the

            scheme `http`, `https`, or no scheme, one can optionally set up a
            type

            server that maps type URLs to message definitions as follows:


            * If no scheme is provided, `https` is assumed.

            * An HTTP GET on the URL must yield a [google.protobuf.Type][]
              value in binary format, or produce an error.
            * Applications are allowed to cache lookup results based on the
              URL, or have them precompiled into a binary to avoid any
              lookup. Therefore, binary compatibility needs to be preserved
              on changes to types. (Use versioned type names to manage
              breaking changes.)

            Note: this functionality is not currently available in the official

            protobuf release, and it is not used for type URLs beginning with

            type.googleapis.com.


            Schemes other than `http`, `https` (or the empty scheme) might be

            used with implementation specific semantics.
        value:
          type: string
          format: byte
          description: >-
            Must be a valid serialized protocol buffer of the above specified
            type.
      description: >-
        `Any` contains an arbitrary serialized protocol buffer message along
        with a

        URL that describes the type of the serialized message.


        Protobuf library provides support to pack/unpack Any values in the form

        of utility functions or additional generated methods of the Any type.


        Example 1: Pack and unpack a message in C++.

            Foo foo = ...;
            Any any;
            any.PackFrom(foo);
            ...
            if (any.UnpackTo(&foo)) {
              ...
            }

        Example 2: Pack and unpack a message in Java.

            Foo foo = ...;
            Any any = Any.pack(foo);
            ...
            if (any.is(Foo.class)) {
              foo = any.unpack(Foo.class);
            }

        Example 3: Pack and unpack a message in Python.

            foo = Foo(...)
            any = Any()
            any.Pack(foo)
            ...
            if any.Is(Foo.DESCRIPTOR):
              any.Unpack(foo)
              ...

        Example 4: Pack and unpack a message in Go

             foo := &pb.Foo{...}
             any, err := anypb.New(foo)
             if err != nil {
               ...
             }
             ...
             foo := &pb.Foo{}
             if err := any.UnmarshalTo(foo); err != nil {
               ...
             }

        The pack methods provided by protobuf library will by default use

        'type.googleapis.com/full.type.name' as the type URL and the unpack

        methods only use the fully qualified type name after the last '/'

        in the type URL, for example "foo.bar.com/x/y.z" will yield type

        name "y.z".



        JSON


        The JSON representation of an `Any` value uses the regular

        representation of the deserialized, embedded message, with an

        additional field `@type` which contains the type URL. Example:

            package google.profile;
            message Person {
              string first_name = 1;
              string last_name = 2;
            }

            {
              "@type": "type.googleapis.com/google.profile.Person",
              "firstName": <string>,
              "lastName": <string>
            }

        If the embedded message type is well-known and has a custom JSON

        representation, that representation will be embedded adding a field

        `value` which holds the custom JSON in addition to the `@type`

        field. Example (for message [google.protobuf.Duration][]):

            {
              "@type": "type.googleapis.com/google.protobuf.Duration",
              "value": "1.212s"
            }
    protobufFieldMask:
      type: object
      properties:
        paths:
          type: array
          items:
            type: string
          description: The set of field mask paths.
      description: >-
        paths: "f.a"
            paths: "f.b.d"

        Here `f` represents a field in some root message, `a` and `b`

        fields in the message found in `f`, and `d` a field found in the

        message in `f.b`.


        Field masks are used to specify a subset of fields that should be

        returned by a get operation or modified by an update operation.

        Field masks also have a custom JSON encoding (see below).


        # Field Masks in Projections


        When used in the context of a projection, a response message or

        sub-message is filtered by the API to only contain those fields as

        specified in the mask. For example, if the mask in the previous

        example is applied to a response message as follows:

            f {
              a : 22
              b {
                d : 1
                x : 2
              }
              y : 13
            }
            z: 8

        The result will not contain specific values for fields x,y and z

        (their value will be set to the default, and omitted in proto text

        output):


            f {
              a : 22
              b {
                d : 1
              }
            }

        A repeated field is not allowed except at the last position of a

        paths string.


        If a FieldMask object is not present in a get operation, the

        operation applies to all fields (as if a FieldMask of all fields

        had been specified).


        Note that a field mask does not necessarily apply to the

        top-level response message. In case of a REST get operation, the

        field mask applies directly to the response, but in case of a REST

        list operation, the mask instead applies to each individual message

        in the returned resource list. In case of a REST custom method,

        other definitions may be used. Where the mask applies will be

        clearly documented together with its declaration in the API.  In

        any case, the effect on the returned resource/resources is required

        behavior for APIs.


        # Field Masks in Update Operations


        A field mask in update operations specifies which fields of the

        targeted resource are going to be updated. The API is required

        to only change the values of the fields as specified in the mask

        and leave the others untouched. If a resource is passed in to

        describe the updated values, the API ignores the values of all

        fields not covered by the mask.


        If a repeated field is specified for an update operation, new values
        will

        be appended to the existing repeated field in the target resource. Note
        that

        a repeated field is only allowed in the last position of a `paths`
        string.


        If a sub-message is specified in the last position of the field mask for
        an

        update operation, then new value will be merged into the existing
        sub-message

        in the target resource.


        For example, given the target message:

            f {
              b {
                d: 1
                x: 2
              }
              c: [1]
            }

        And an update message:

            f {
              b {
                d: 10
              }
              c: [2]
            }

        then if the field mask is:

         paths: ["f.b", "f.c"]

        then the result will be:

            f {
              b {
                d: 10
                x: 2
              }
              c: [1, 2]
            }

        An implementation may provide options to override this default behavior
        for

        repeated and message fields.


        In order to reset a field's value to the default, the field must

        be in the mask and set to the default value in the provided resource.

        Hence, in order to reset all fields of a resource, provide a default

        instance of the resource and set all fields in the mask, or do

        not provide a mask as described below.


        If a field mask is not present on update, the operation applies to

        all fields (as if a field mask of all fields has been specified).

        Note that in the presence of schema evolution, this may mean that

        fields the client does not know and has therefore not filled into

        the request will be reset to their default. If this is unwanted

        behavior, a specific service may require a client to always specify

        a field mask, producing an error if not.


        As with get operations, the location of the resource which

        describes the updated values in the request message depends on the

        operation kind. In any case, the effect of the field mask is

        required to be honored by the API.


        ## Considerations for HTTP REST


        The HTTP kind of an update operation which uses a field mask must

        be set to PATCH instead of PUT in order to satisfy HTTP semantics

        (PUT must only be used for full updates).


        # JSON Encoding of Field Masks


        In JSON, a field mask is encoded as a single string where paths are

        separated by a comma. Fields name in each path are converted

        to/from lower-camel naming conventions.


        As an example, consider the following message declarations:

            message Profile {
              User user = 1;
              Photo photo = 2;
            }
            message User {
              string display_name = 1;
              string address = 2;
            }

        In proto a field mask for `Profile` may look as such:

            mask {
              paths: "user.display_name"
              paths: "photo"
            }

        In JSON, the same mask is represented as below:

            {
              mask: "user.displayName,photo"
            }

        # Field Masks and Oneof Fields


        Field masks treat fields in oneofs just as regular fields. Consider the

        following message:

            message SampleMessage {
              oneof test_oneof {
                string name = 4;
                SubMessage sub_message = 9;
              }
            }

        The field mask can be:

            mask {
              paths: "name"
            }

        Or:

            mask {
              paths: "sub_message"
            }

        Note that oneof type names ("test_oneof" in this case) cannot be used in

        paths.


        ## Field Mask Verification


        The implementation of any API method which has a FieldMask type field in
        the

        request should verify the included field paths, and return an

        `INVALID_ARGUMENT` error if any path is unmappable.
      title: '`FieldMask` represents a set of symbolic field paths, for example:'
    protobufNullValue:
      type: string
      enum:
        - NULL_VALUE
      default: NULL_VALUE
      description: >-
        `NullValue` is a singleton enumeration to represent the null value for
        the

        `Value` type union.

         The JSON representation for `NullValue` is JSON `null`.

         - NULL_VALUE: Null value.
    reconcilerReconcileCountsResponse:
      type: object
      properties:
        applicationCount:
          type: integer
          format: int32
        clusterCount:
          type: integer
          format: int32
        repositoryCount:
          type: integer
          format: int32
        repositoryCertificateCount:
          type: integer
          format: int32
        gnuPGPublicKeyCount:
          type: integer
          format: int32
        repoCredsCount:
          type: integer
          format: int32
        applicationSetCount:
          type: integer
          format: int32
        applicationPerProjectCount:
          type: object
          additionalProperties:
            type: integer
            format: int32
        applicationSetPerProjectCount:
          type: object
          additionalProperties:
            type: integer
            format: int32
        clusterPerProjectCount:
          type: object
          additionalProperties:
            type: integer
            format: int32
        repositoryPerProjectCount:
          type: object
          additionalProperties:
            type: integer
            format: int32
    repositoriesAWSSecretRef:
      type: object
      properties:
        awsAccessKeyID:
          type: string
        awsSecretAccessKey:
          type: string
        awsSessionToken:
          type: string
    repositoriesAppInfo:
      type: object
      properties:
        type:
          type: string
        path:
          type: string
      title: AppInfo contains application type and app file path
    repositoriesCheckESOResponse:
      type: object
      properties:
        esoPresent:
          type: boolean
    repositoriesDirectoryAppSpec:
      type: object
      title: DirectoryAppSpec contains directory
    repositoriesECRAuthorizationTokenGenerator:
      type: object
      properties:
        region:
          type: string
        secretRef:
          $ref: '#/components/schemas/repositoriesAWSSecretRef'
        jwtAuth:
          $ref: '#/components/schemas/repositoriesServiceAccountSelector'
        role:
          type: string
      description: >-
        ECRAuthorizationTokenSpec represents externalSecret for ECR External
        Secret Operator generator.
    repositoriesESOGeneratorResponse:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/repositoriesESOGeneratorType'
        ecrGen:
          $ref: '#/components/schemas/repositoriesECRAuthorizationTokenGenerator'
        gcrGen:
          $ref: '#/components/schemas/repositoriesGCRAccessTokenGenerator'
    repositoriesESOGeneratorType:
      type: string
      enum:
        - UNSET
        - AWS_ECR
        - GOOGLE_GCR
      default: UNSET
    repositoriesGCRAccessTokenGenerator:
      type: object
      properties:
        projectID:
          type: string
        accessKey:
          type: string
        workloadIdentity:
          $ref: '#/components/schemas/repositoriesGCRWorkloadIdentity'
    repositoriesGCRWorkloadIdentity:
      type: object
      properties:
        serviceAccountRef:
          $ref: '#/components/schemas/repositoriesServiceAccountSelector'
        clusterLocation:
          type: string
        clusterName:
          type: string
        clusterProjectID:
          type: string
    repositoriesHelmAppSpec:
      type: object
      properties:
        name:
          type: string
        valueFiles:
          type: array
          items:
            type: string
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHelmParameter'
          title: the output of `helm inspect values`
        values:
          type: string
          title: the contents of values.yaml
        fileParameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsHelmFileParameter'
          title: helm file parameters
      title: HelmAppSpec contains helm app name  in source repo
    repositoriesHelmChart:
      type: object
      properties:
        name:
          type: string
        versions:
          type: array
          items:
            type: string
    repositoriesHelmChartsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/repositoriesHelmChart'
    repositoriesKsonnetAppSpec:
      type: object
      properties:
        name:
          type: string
        environments:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/repositoriesKsonnetEnvironment'
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/applicationsKsonnetParameter'
      title: |-
        KsonnetAppSpec contains Ksonnet app response
        This roughly reflects: ksonnet/ksonnet/metadata/app/schema.go
    repositoriesKsonnetEnvironment:
      type: object
      properties:
        name:
          type: string
          title: Name is the user defined name of an environment
        k8sVersion:
          type: string
          description: >-
            KubernetesVersion is the kubernetes version the targeted cluster is
            running on.
        destination:
          $ref: '#/components/schemas/repositoriesKsonnetEnvironmentDestination'
    repositoriesKsonnetEnvironmentDestination:
      type: object
      properties:
        server:
          type: string
          description: Server is the Kubernetes server that the cluster is running on.
        namespace:
          type: string
          title: >-
            Namespace is the namespace of the Kubernetes server that targets
            should be deployed to
    repositoriesKustomizeAppSpec:
      type: object
      properties:
        images:
          type: array
          items:
            type: string
          description: images is a list of available images.
      title: KustomizeAppSpec contains kustomize images
    repositoriesManifestResponse:
      type: object
      properties:
        manifests:
          type: array
          items:
            type: string
        namespace:
          type: string
        server:
          type: string
        revision:
          type: string
          title: resolved revision
        sourceType:
          type: string
        verifyResult:
          type: string
          title: >-
            Raw response of git verify-commit operation (always the empty string
            for Helm)
    repositoriesRefs:
      type: object
      properties:
        branches:
          type: array
          items:
            type: string
        tags:
          type: array
          items:
            type: string
      title: A subset of the repository's named refs
    repositoriesRepoAccessQuery:
      type: object
      properties:
        repo:
          type: string
          title: The URL to the repo
        username:
          type: string
          title: Username for accessing repo
        password:
          type: string
          title: Password for accessing repo
        sshPrivateKey:
          type: string
          title: Private key data for accessing SSH repository
        insecure:
          type: boolean
          title: Whether to skip certificate or host key validation
        tlsClientCertData:
          type: string
          title: TLS client cert data for accessing HTTPS repository
        tlsClientCertKey:
          type: string
          title: TLS client cert key for accessing HTTPS repository
        type:
          type: string
          title: The type of the repo
        name:
          type: string
          title: The name of the repo
        enableOci:
          type: boolean
          title: Whether helm-oci support should be enabled for this repo
        githubAppPrivateKey:
          type: string
          title: Github App Private Key PEM data
        githubAppID:
          type: string
          format: int64
          title: Github App ID of the app used to access the repo
        githubAppInstallationID:
          type: string
          format: int64
          title: Github App Installation ID of the installed GitHub App
        githubAppEnterpriseBaseUrl:
          type: string
          title: >-
            Github App Enterprise base url if empty will default to
            https://api.github.com
        proxy:
          type: string
          title: HTTP/HTTPS proxy to access the repository
        project:
          type: string
          title: >-
            Reference between project and repository that allow you
            automatically to be added as item inside SourceRepos project entity
        connectionType:
          type: string
          title: Connection type of the repository
        updateMask:
          $ref: '#/components/schemas/protobufFieldMask'
      title: RepoAccessQuery is a query for checking access to a repo
    repositoriesRepoAppDetailsQuery:
      type: object
      properties:
        source:
          $ref: '#/components/schemas/applicationsApplicationSource'
        appName:
          type: string
        appProject:
          type: string
        sourceIndex:
          type: integer
          format: int32
          title: source index (for multi source apps)
        versionId:
          type: integer
          format: int32
          title: versionId from historical data (for multi source apps)
      title: RepoAppDetailsQuery contains query information for app details request
    repositoriesRepoAppDetailsResponse:
      type: object
      properties:
        type:
          type: string
        ksonnet:
          $ref: '#/components/schemas/repositoriesKsonnetAppSpec'
        helm:
          $ref: '#/components/schemas/repositoriesHelmAppSpec'
        kustomize:
          $ref: '#/components/schemas/repositoriesKustomizeAppSpec'
        directory:
          $ref: '#/components/schemas/repositoriesDirectoryAppSpec'
      title: RepoAppDetailsResponse application details
    repositoriesRepoAppsQuery:
      type: object
      properties:
        repo:
          type: string
        revision:
          type: string
        appName:
          type: string
        appProject:
          type: string
      title: RepoAppsQuery is a query for Repository apps
    repositoriesRepoAppsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/repositoriesAppInfo'
      title: RepoAppsResponse contains applications of specified repository
    repositoriesRepoCreateRequest:
      type: object
      properties:
        repo:
          $ref: '#/components/schemas/repositoriesRepository'
        upsert:
          type: boolean
          title: Whether to create in upsert mode
        credsOnly:
          type: boolean
          title: Whether to operate on credential set instead of repository
        genType:
          $ref: '#/components/schemas/repositoriesESOGeneratorType'
        ecrGen:
          $ref: '#/components/schemas/repositoriesECRAuthorizationTokenGenerator'
        gcrGen:
          $ref: '#/components/schemas/repositoriesGCRAccessTokenGenerator'
        refreshInterval:
          type: string
          description: refreshInterval in format 1s, 1m, 1h...
      title: RepoCreateRequest is a request for creating repository config
    repositoriesRepoQuery:
      type: object
      properties:
        repo:
          type: string
          title: Repo URL for query
        forceRefresh:
          type: boolean
          title: Whether to force a cache refresh on repo's connection state
        project:
          type: string
          title: The associated project project
      title: RepoQuery is a query for Repository resources
    repositoriesRepoResponse:
      type: object
    repositoriesRepoUpdateRequest:
      type: object
      properties:
        repo:
          $ref: '#/components/schemas/repositoriesRepository'
        updateMask:
          $ref: '#/components/schemas/protobufFieldMask'
        genType:
          $ref: '#/components/schemas/repositoriesESOGeneratorType'
        ecrGen:
          $ref: '#/components/schemas/repositoriesECRAuthorizationTokenGenerator'
        gcrGen:
          $ref: '#/components/schemas/repositoriesGCRAccessTokenGenerator'
        refreshInterval:
          type: string
          description: refreshInterval in format 1s, 1m, 1h...
    repositoriesRepository:
      type: object
      properties:
        repo:
          type: string
          title: Repo contains the URL to the remote repository
        username:
          type: string
          title: >-
            Username contains the user name used for authenticating at the
            remote repository
        password:
          type: string
          title: >-
            Password contains the password or PAT used for authenticating at the
            remote repository
        sshPrivateKey:
          type: string
          description: >-
            SSHPrivateKey contains the PEM data for authenticating at the repo
            server. Only used with Git repos.
        connectionState:
          $ref: '#/components/schemas/commonsConnectionState'
        insecureIgnoreHostKey:
          type: boolean
          title: >-
            InsecureIgnoreHostKey should not be used anymore, Insecure is
            favoured

            Used only for Git repos
        insecure:
          type: boolean
          title: >-
            Insecure specifies whether the connection to the repository ignores
            any errors when verifying TLS certificates or SSH host keys
        enableLfs:
          type: boolean
          description: >-
            EnableLFS specifies whether git-lfs support should be enabled for
            this repo. Only valid for Git repositories.
        tlsClientCertData:
          type: string
          title: >-
            TLSClientCertData contains a certificate in PEM format for
            authenticating at the repo server
        tlsClientCertKey:
          type: string
          title: >-
            TLSClientCertKey contains a private key in PEM format for
            authenticating at the repo server
        type:
          type: string
          description: >-
            Type specifies the type of the repo. Can be either "git" or "helm.
            "git" is assumed if empty or absent.
        name:
          type: string
          title: >-
            Name specifies a name to be used for this repo. Only used with Helm
            repos
        inheritedCreds:
          type: boolean
          title: Whether credentials were inherited from a credential set
        enableOCI:
          type: boolean
          title: >-
            EnableOCI specifies whether helm-oci support should be enabled for
            this repo
        githubAppPrivateKey:
          type: string
          title: Github App Private Key PEM data
        githubAppID:
          type: string
          format: int64
          title: >-
            GithubAppId specifies the ID of the GitHub app used to access the
            repo
        githubAppInstallationID:
          type: string
          format: int64
          title: >-
            GithubAppInstallationId specifies the installation ID of the GitHub
            App used to access the repo
        githubAppEnterpriseBaseUrl:
          type: string
          title: >-
            GithubAppEnterpriseBaseURL specifies the base URL of GitHub
            Enterprise installation. If empty will default to
            https://api.github.com
        proxy:
          type: string
          title: Proxy specifies the HTTP/HTTPS proxy used to access the repo
        project:
          type: string
          title: >-
            Reference between project and repository that allow you
            automatically to be added as item inside SourceRepos project entity
        connectionType:
          type: string
          title: >-
            Identifies the authentication method used to connect to the
            repository
        forceHttpBasicAuth:
          type: boolean
          title: >-
            ForceHttpBasicAuth specifies whether Argo CD should attempt to force
            basic auth for HTTP connections
        noProxy:
          type: string
          title: >-
            NoProxy specifies a list of targets where the proxy isn't used,
            applies only in cases where the proxy is applied
      title: Repository is a repository holding application configurations
    repositoriesRepositoryList:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ListMeta'
        items:
          type: array
          items:
            $ref: '#/components/schemas/repositoriesRepository'
      description: RepositoryList is a collection of Repositories.
    repositoriesRevisionMetadata:
      type: object
      properties:
        author:
          type: string
          title: >-
            who authored this revision,

            typically their name and email, e.g. "John Doe
            <john_doe@my-company.com>",

            but might not match this example
        date:
          $ref: '#/components/schemas/v1Time'
        tags:
          type: array
          items:
            type: string
          title: |-
            Tags specifies any tags currently attached to the revision
            Floating tags can move from one revision to another
        message:
          type: string
          title: >-
            Message contains the message associated with the revision, most
            likely the commit message.

            The message is truncated to the first newline or 64 characters
            (which ever comes first)
        signatureInfo:
          type: string
          description: >-
            SignatureInfo contains a hint on the signer if the revision was
            signed with GPG, and signature verification is enabled.
      title: >-
        RevisionMetadata contains metadata for a specific revision in a Git
        repository
    repositoriesServiceAccountSelector:
      type: object
      properties:
        name:
          type: string
        namespace:
          type: string
        audiences:
          type: array
          items:
            type: string
    resourceQuantity:
      type: object
      properties:
        string:
          type: string
      description: "Quantity is a fixed-point representation of a number.\nIt provides convenient marshaling/unmarshaling in JSON and YAML,\nin addition to String() and AsInt64() accessors.\n\nThe serialization format is:\n\n```\n<quantity>        ::= <signedNumber><suffix>\n\n\t(Note that <suffix> may be empty, from the \"\" case in <decimalSI>.)\n\n<digit>           ::= 0 | 1 | ... | 9\n<digits>          ::= <digit> | <digit><digits>\n<number>          ::= <digits> | <digits>.<digits> | <digits>. | .<digits>\n<sign>            ::= \"+\" | \"-\"\n<signedNumber>    ::= <number> | <sign><number>\n<suffix>          ::= <binarySI> | <decimalExponent> | <decimalSI>\n<binarySI>        ::= Ki | Mi | Gi | Ti | Pi | Ei\n\n\t(International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)\n\n<decimalSI>       ::= m | \"\" | k | M | G | T | P | E\n\n\t(Note that 1024 = 1Ki but 1000 = 1k; I didn't choose the capitalization.)\n\n<decimalExponent> ::= \"e\" <signedNumber> | \"E\" <signedNumber>\n```\n\nNo matter which of the three exponent forms is used, no quantity may represent\na number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal\nplaces. Numbers larger or more precise will be capped or rounded up.\n(E.g.: 0.1m will rounded up to 1m.)\nThis may be extended in the future if we require larger or smaller quantities.\n\nWhen a Quantity is parsed from a string, it will remember the type of suffix\nit had, and will use the same type again when it is serialized.\n\nBefore serializing, Quantity will be put in \"canonical form\".\nThis means that Exponent/suffix will be adjusted up or down (with a\ncorresponding increase or decrease in Mantissa) such that:\n\n- No precision is lost\n- No fractional digits will be emitted\n- The exponent (or suffix) is as large as possible.\n\nThe sign will be omitted unless the number is negative.\n\nExamples:\n\n- 1.5 will be serialized as \"1500m\"\n- 1.5Gi will be serialized as \"1536Mi\"\n\nNote that the quantity will NEVER be internally represented by a\nfloating point number. That is the whole point of this exercise.\n\nNon-canonical values will still parse as long as they are well formed,\nbut will be re-emitted in their canonical form. (So always use canonical\nform, or don't diff.)\n\nThis format is intended to make it difficult to use these numbers without\nwriting some sort of special handling code in the hopes that that will\ncause implementors to also use a fixed point implementation.\n\n+protobuf=true\n+protobuf.embed=string\n+protobuf.options.marshal=false\n+protobuf.options.(gogoproto.goproto_stringer)=false\n+k8s:deepcopy-gen=true\n+k8s:openapi-gen=true"
    runtimeStreamError:
      type: object
      properties:
        grpc_code:
          type: integer
          format: int32
        http_code:
          type: integer
          format: int32
        message:
          type: string
        http_status:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    servicev1AppProject:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        name:
          type: string
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
    servicev1AppProjectMapping:
      type: object
      properties:
        appProjMap:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/servicev1Project'
    servicev1Application:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        name:
          type: string
        clusterIdentifier:
          type: string
        repoIdentifier:
          type: string
        app:
          $ref: '#/components/schemas/applicationsApplication'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        stale:
          type: boolean
        skipRepoValidation:
          type: boolean
        repoIdentifiers:
          type: array
          items:
            type: string
        parentAppRef:
          type: string
          description: Reference of owner application (Application Set)
    servicev1ApplicationDeleteRequestOptions:
      type: object
      properties:
        removeExistingFinalizers:
          type: boolean
    servicev1ApplicationPatchRequest:
      type: object
      properties:
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        request:
          $ref: '#/components/schemas/applicationsApplicationPatchRequest'
    servicev1ApplicationQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        filter:
          type: object
          description: >-
            Filters for Application. Eg. "app.status.sync.status": "Synced" or
            "app.status.sync.status": { "$in": ["Synced", "NotSynced"]
        sortBy:
          $ref: '#/components/schemas/ApplicationQueryApplicationSortByOptions'
        sortOrder:
          $ref: '#/components/schemas/v1SortOrderOptions'
        metadataOnly:
          type: boolean
        fields:
          type: array
          items:
            type: string
    servicev1ApplicationSet:
      type: object
      properties:
        identifier:
          type: string
          description: UUID for the Application Set.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        owner:
          type: string
        appset:
          $ref: '#/components/schemas/applicationsApplicationSet'
    servicev1ApplicationSetList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1ApplicationSet'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    servicev1Applicationlist:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1Application'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    servicev1Cluster:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        identifier:
          type: string
        cluster:
          $ref: '#/components/schemas/clustersCluster'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        stale:
          type: boolean
        tags:
          type: object
          additionalProperties:
            type: string
    servicev1ClusterQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        identifier:
          type: string
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        filter:
          type: object
          description: 'Filters for Clusters. Eg. "identifier": { "$in": ["id1", "id2"]'
        sortBy:
          $ref: '#/components/schemas/ClusterQueryClusterSortByOptions'
        sortOrder:
          $ref: '#/components/schemas/v1SortOrderOptions'
    servicev1GnuPGPublicKeyList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1Gnupg'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    servicev1HealthStatus:
      type: string
      enum:
        - HEALTH_STATUS_UNSET
        - HEALTHY
        - UNHEALTHY
      default: HEALTH_STATUS_UNSET
    servicev1Project:
      type: object
      properties:
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
    servicev1ReconcilerFilter:
      type: object
      properties:
        projectNames:
          type: array
          items:
            type: string
    servicev1Repository:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        identifier:
          type: string
        repository:
          $ref: '#/components/schemas/repositoriesRepository'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        stale:
          type: boolean
        repositoryCredentialsId:
          type: string
    servicev1RepositoryCertificate:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        cert:
          $ref: '#/components/schemas/certificatesRepositoryCertificate'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
    servicev1RepositoryCredentials:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        identifier:
          type: string
        repoCreds:
          $ref: '#/components/schemas/hrepocredsRepoCreds'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        stale:
          type: boolean
    servicev1RepositoryCredentialsList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1RepositoryCredentials'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1AWSElasticBlockStoreVolumeSource:
      type: object
      properties:
        volumeID:
          type: string
          title: >-
            volumeID is unique ID of the persistent disk resource in AWS (Amazon
            EBS volume).

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
        fsType:
          type: string
          title: >-
            fsType is the filesystem type of the volume that you want to mount.

            Tip: Ensure that the filesystem type is supported by the host
            operating system.

            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

            TODO: how do we prevent errors in the filesystem from compromising
            the machine

            +optional
        partition:
          type: integer
          format: int32
          title: >-
            partition is the partition in the volume that you want to mount.

            If omitted, the default is to mount by volume name.

            Examples: For volume /dev/sda1, you specify the partition as "1".

            Similarly, the volume partition for /dev/sda is "0" (or you can
            leave the property empty).

            +optional
        readOnly:
          type: boolean
          title: >-
            readOnly value true will force the readOnly setting in VolumeMounts.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore

            +optional
      description: |-
        Represents a Persistent Disk resource in AWS.

        An AWS EBS disk must exist before mounting to a container. The disk
        must also be in the same AWS zone as the kubelet. An AWS EBS disk
        can only be mounted as read/write once. AWS EBS volumes support
        ownership management and SELinux relabeling.
    v1Affinity:
      type: object
      properties:
        nodeAffinity:
          $ref: '#/components/schemas/v1NodeAffinity'
        podAffinity:
          $ref: '#/components/schemas/v1PodAffinity'
        podAntiAffinity:
          $ref: '#/components/schemas/v1PodAntiAffinity'
      description: Affinity is a group of affinity scheduling rules.
    v1Agent:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
          title: The ID of the Harness Account that this gitops-agent belongs to
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
          title: The ID of the Harness Project that this gitops-agent belongs to
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
          title: The ID of the Harness Organization that this gitops-agent belongs to
        identifier:
          type: string
          title: The gitops-server generated ID for this gitops-agent
        name:
          type: string
          title: A human readable name for the gitops-agent
        metadata:
          $ref: '#/components/schemas/v1AgentMetadata'
        description:
          type: string
          title: A human readable description for the gitops-agent
        type:
          $ref: '#/components/schemas/v1AgentType'
        createdAt:
          $ref: '#/components/schemas/v1Time'
        lastModifiedAt:
          $ref: '#/components/schemas/v1Time'
        tags:
          type: object
          additionalProperties:
            type: string
          title: Tags that help organize gitops-agents
        health:
          $ref: '#/components/schemas/v1AgentHealth'
        credentials:
          $ref: '#/components/schemas/v1AgentCredentials'
        version:
          $ref: '#/components/schemas/v1SemanticVersion'
        upgradeAvailable:
          type: boolean
          title: >-
            Indicates whether this agent has an upgrade available (i.e. the
            version of this gitops-agent is not the latest released)
        scope:
          $ref: '#/components/schemas/v1AgentScope'
        disasterRecoveryNode:
          $ref: '#/components/schemas/v1DisasterRecoveryNode'
        isPLG:
          type: boolean
          description: Indicates if the agent is for PLG.
        operator:
          $ref: '#/components/schemas/v1AgentOperator'
        prefixedIdentifier:
          type: string
          description: >-
            The scoped identifier of the agent. This is a combination of the
            account, org, project, and agent identifiers.
      title: A gitops-agent
    v1AgentComponentHealth:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/servicev1HealthStatus'
        k8sError:
          type: string
        message:
          type: string
        version:
          type: string
    v1AgentCredentials:
      type: object
      properties:
        privateKey:
          type: string
        publicKey:
          type: string
    v1AgentHealth:
      type: object
      properties:
        lastHeartbeat:
          type: string
          format: date-time
          title: The last time the agent sent a HeartbeatRequest
        argoRepoServer:
          $ref: '#/components/schemas/v1AgentComponentHealth'
        argoAppController:
          $ref: '#/components/schemas/v1AgentComponentHealth'
        argoRedisServer:
          $ref: '#/components/schemas/v1AgentComponentHealth'
        harnessGitopsAgent:
          $ref: '#/components/schemas/v1AgentComponentHealth'
        connectionStatus:
          $ref: '#/components/schemas/v1ConnectedStatus'
        argoAppSetController:
          $ref: '#/components/schemas/v1AgentComponentHealth'
    v1AgentList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1Agent'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1AgentMetadata:
      type: object
      properties:
        namespace:
          type: string
          title: The k8s namespace that this agent resides in
        highAvailability:
          type: boolean
          title: >-
            Whether or not this deployment should be deployed using
            deploy-ha.yaml
        deployedApplicationCount:
          type: integer
          format: int32
          title: Number of Deployed Applications
        existingInstallation:
          type: boolean
          title: If the agent is running in an existing argo installation
        mappedProjects:
          $ref: '#/components/schemas/servicev1AppProjectMapping'
        infraType:
          $ref: '#/components/schemas/v1ClusterInfraType'
        isNamespaced:
          type: boolean
    v1AgentOperator:
      type: string
      enum:
        - UNKNOWN
        - ARGO
        - FLAMINGO
      default: UNKNOWN
    v1AgentQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        identifier:
          type: string
        name:
          type: string
        type:
          $ref: '#/components/schemas/v1AgentType'
        tags:
          type: array
          items:
            type: string
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        scope:
          $ref: '#/components/schemas/v1AgentScope'
        filter:
          type: object
          description: Filters for Agents.
        drIdentifier:
          type: string
        sortBy:
          $ref: '#/components/schemas/AgentQueryAgentSortByOptions'
        sortOrder:
          $ref: '#/components/schemas/v1SortOrderOptions'
        metadataOnly:
          type: boolean
        ignoreScope:
          type: boolean
        connectedStatus:
          $ref: '#/components/schemas/v1ConnectedStatus'
        healthStatus:
          $ref: '#/components/schemas/servicev1HealthStatus'
        withCredentials:
          type: boolean
          description: >-
            Applicable when trying to retrieve an agent. Set to true to include
            the credentials for the agent in the response. (Private key may not
            be included in response if agent is already connected to harness).
            NOTE: Setting this to true requires the user to have edit
            permissions on Agent.
        includeSecondary:
          type: boolean
        mappedProjects:
          $ref: '#/components/schemas/servicev1AppProjectMapping'
    v1AgentScaleRequest:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        identifier:
          type: string
        type:
          type: string
        replicas:
          type: integer
          format: int32
    v1AgentScope:
      type: string
      enum:
        - AGENT_SCOPE_UNSET
        - ACCOUNT
        - ORG
        - PROJECT
      default: AGENT_SCOPE_UNSET
    v1AgentSetPrimaryNodeRequest:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        disasterRecoveryIdentifier:
          type: string
          description: Disaster Recovery Identifier for entity.
        disableSyncWindows:
          type: boolean
          description: Disable sync windows for the new primary agent.
    v1AgentType:
      type: string
      enum:
        - AGENT_TYPE_UNSET
        - CONNECTED_ARGO_PROVIDER
        - MANAGED_ARGO_PROVIDER
        - HOSTED_ARGO_PROVIDER
      default: AGENT_TYPE_UNSET
      description: >-
        AgentType is the type of agent. CONNECTED_ARGO_PROVIDER is deprecated
        and will be removed in a future release.


        Please use type "MANAGED_ARGO_PROVIDER" to create your agents.


        "MANAGED_ARGO_PROVIDER" agents are user managed agents and
        "HOSTED_ARGO_PROVIDER" agents are Harness managed agents(these cannot be
        created by users directly).
    v1AgentYamlQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        namespace:
          type: string
        disasterRecoveryIdentifier:
          type: string
          description: Disaster Recovery Identifier for entity.
        skipCrds:
          type: boolean
        caData:
          type: string
          description: Certificate chain for the agent, must be base64 encoded.
        proxy:
          $ref: '#/components/schemas/v1Proxy'
        privateKey:
          type: string
        argocdSettings:
          $ref: '#/components/schemas/v1ArgoCDSettings'
    v1AnalysisRunArgument:
      type: object
      properties:
        name:
          type: string
          title: Name argument name
        value:
          type: string
          title: >-
            Value a hardcoded value for the argument. This field is a one of
            field with valueFrom
        valueFrom:
          $ref: '#/components/schemas/v1ArgumentValueFrom'
      title: AnalysisRunArgument argument to add to analysisRun
    v1AnalysisRunMetadata:
      type: object
      properties:
        labels:
          type: object
          additionalProperties:
            type: string
          title: |-
            Labels Additional labels to add to the AnalysisRun
            +optional
        annotations:
          type: object
          additionalProperties:
            type: string
          title: |-
            Annotations additional annotations to add to the AnalysisRun
            +optional
      title: AnalysisRunMetadata extra labels to add to the AnalysisRun
    v1AppArmorProfile:
      type: object
      properties:
        type:
          type: string
          title: |-
            type indicates which kind of AppArmor profile will be applied.
            Valid options are:
              Localhost - a profile pre-loaded on the node.
              RuntimeDefault - the container runtime's default profile.
              Unconfined - no AppArmor enforcement.
            +unionDiscriminator
        localhostProfile:
          type: string
          title: >-
            localhostProfile indicates a profile loaded on the node that should
            be used.

            The profile must be preconfigured on the node to work.

            Must match the loaded name of the profile.

            Must be set if and only if type is "Localhost".

            +optional
      title: |-
        AppArmorProfile defines a pod or container's AppArmor settings.
        +union
    v1AppProjectMappingCreateRequestV2:
      type: object
      properties:
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        argoProjectName:
          type: string
    v1AppProjectMappingList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1AppProject'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1AppProjectMappingQueryV2:
      type: object
      properties:
        identifier:
          type: string
          description: app project mapping identifier.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        argoProjectName:
          type: string
    v1AppProjectMappingV2:
      type: object
      properties:
        identifier:
          type: string
        ArgoProjectName:
          type: string
        projectIdentifier:
          type: string
        orgIdentifier:
          type: string
        accountIdentifier:
          type: string
        agentIdentifier:
          type: string
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
    v1AppProjectMappingV2List:
      type: object
      properties:
        appProjectMappings:
          type: array
          items:
            $ref: '#/components/schemas/v1AppProjectMappingV2'
    v1ApplicationAttributes:
      type: object
      properties:
        applicationIdentifier:
          type: string
        attributes:
          type: object
          additionalProperties:
            type: string
    v1ApplicationAttributesList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1ApplicationAttributes'
    v1ApplicationSetGeneratorList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/applicationsApplicationSetGenerator'
    v1ApplicationSetQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        filter:
          type: object
          description: >-
            Filters for ApplicationSet. Eg. "app.status.sync.status": "Synced"
            or "app.status.sync.status": { "$in": ["Synced", "NotSynced"]
        sortBy:
          $ref: '#/components/schemas/ApplicationSetQueryApplicationSetSortByOptions'
        sortOrder:
          $ref: '#/components/schemas/v1SortOrderOptions'
        metadataOnly:
          type: boolean
        fields:
          type: array
          items:
            type: string
    v1ApplicationStatusCounts:
      type: object
      properties:
        total:
          type: integer
          format: int32
        healthStatusCounts:
          $ref: '#/components/schemas/v1HealthStatusCounts'
        syncStatusCounts:
          $ref: '#/components/schemas/v1SyncStatusCounts'
    v1ApplicationSyncStatus:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        applicationName:
          type: string
        syncStatus:
          $ref: '#/components/schemas/applicationsSyncStatus'
        createdAt:
          type: string
          format: int64
        lastModifiedAt:
          type: string
          format: int64
        operationState:
          $ref: '#/components/schemas/applicationsOperationState'
        reqIdentifier:
          type: string
        lastKnownRevisionId:
          type: string
          format: int64
        syncedBy:
          $ref: '#/components/schemas/v1User'
        autoSyncCount:
          type: integer
          format: int32
        serviceRef:
          type: string
        envRef:
          type: string
    v1ApplicationSyncStatusQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        applicationName:
          type: string
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        endTime:
          type: integer
          format: int32
        startTime:
          type: integer
          format: int32
        operationPhase:
          type: array
          items:
            $ref: '#/components/schemas/v1OperationPhase'
        serviceRef:
          type: string
        envRef:
          type: string
    v1ApplicationSyncStatuslist:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1ApplicationSyncStatus'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1ArgoCDSettings:
      type: object
      properties:
        enableHelmPathTraversal:
          type: boolean
          description: >-
            Controls the Environment variable
            HELM_SECRETS_VALUES_ALLOW_PATH_TRAVERSAL to allow or deny
            dot-dot-slash values file paths. Disabled by default for security
            reasons. This config is pushed as an env variable to the
            repo-server.
        forceEnableInCluster:
          type: boolean
          description: >-
            For a Namespaced gitops agent, incluster is disabled by default.
            (controlled through variable `cluster.inclusterEnabled` in argocd-cm
            configmap. NOTE that you will have to manually restrict your
            namespaced agent's scope to its own cluster since this essentially
            makes the namespaced agent have access to incluster completely
            including creating clusterroles.
    v1ArgumentValueFrom:
      type: object
      properties:
        podTemplateHashValue:
          type: string
          title: >-
            PodTemplateHashValue gets the value from one of the children
            ReplicaSet's Pod Template Hash
        fieldRef:
          $ref: '#/components/schemas/v1FieldRef'
      title: >-
        ArgumentValueFrom defines references to fields within resources to grab
        for the value (i.e. Pod Template Hash)
    v1AzureDiskVolumeSource:
      type: object
      properties:
        diskName:
          type: string
          title: diskName is the Name of the data disk in the blob storage
        diskURI:
          type: string
          title: diskURI is the URI of data disk in the blob storage
        cachingMode:
          type: string
          title: |-
            cachingMode is the Host Caching mode: None, Read Only, Read Write.
            +optional
            +default=ref(AzureDataDiskCachingReadWrite)
        fsType:
          type: string
          title: >-
            fsType is Filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            +optional

            +default="ext4"
        readOnly:
          type: boolean
          title: |-
            readOnly Defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            +optional
            +default=false
        kind:
          type: string
          title: >-
            kind expected values are Shared: multiple blob disks per storage
            account  Dedicated: single blob disk per storage account  Managed:
            azure managed data disk (only in managed availability set). defaults
            to shared

            +default=ref(AzureSharedBlobDisk)
      description: >-
        AzureDisk represents an Azure Data Disk mount on the host and bind mount
        to the pod.
    v1AzureFileVolumeSource:
      type: object
      properties:
        secretName:
          type: string
          title: >-
            secretName is the  name of secret that contains Azure Storage
            Account Name and Key
        shareName:
          type: string
          title: shareName is the azure share Name
        readOnly:
          type: boolean
          title: |-
            readOnly defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            +optional
      description: >-
        AzureFile represents an Azure File Service mount on the host and bind
        mount to the pod.
    v1CSIVolumeSource:
      type: object
      properties:
        driver:
          type: string
          description: >-
            driver is the name of the CSI driver that handles this volume.

            Consult with your admin for the correct name as registered in the
            cluster.
        readOnly:
          type: boolean
          title: |-
            readOnly specifies a read-only configuration for the volume.
            Defaults to false (read/write).
            +optional
        fsType:
          type: string
          title: >-
            fsType to mount. Ex. "ext4", "xfs", "ntfs".

            If not provided, the empty value is passed to the associated CSI
            driver

            which will determine the default filesystem to apply.

            +optional
        volumeAttributes:
          type: object
          additionalProperties:
            type: string
          title: >-
            volumeAttributes stores driver-specific properties that are passed
            to the CSI

            driver. Consult your driver's documentation for supported values.

            +optional
        nodePublishSecretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
      title: >-
        Represents a source location of a volume to mount, managed by an
        external CSI driver
    v1CanaryStep:
      type: object
      properties:
        setWeight:
          type: integer
          format: int32
          title: SetWeight sets what percentage of the newRS should receive
        pause:
          $ref: '#/components/schemas/v1RolloutPause'
        experiment:
          $ref: '#/components/schemas/v1RolloutExperimentStep'
        analysis:
          $ref: '#/components/schemas/v1RolloutAnalysis'
        setCanaryScale:
          $ref: '#/components/schemas/v1SetCanaryScale'
        setHeaderRoute:
          $ref: '#/components/schemas/v1SetHeaderRoute'
        setMirrorRoute:
          $ref: '#/components/schemas/v1SetMirrorRoute'
      description: CanaryStep defines a step of a canary deployment.
    v1Capabilities:
      type: object
      properties:
        add:
          type: array
          items:
            type: string
          title: |-
            Added capabilities
            +optional
            +listType=atomic
        drop:
          type: array
          items:
            type: string
          title: |-
            Removed capabilities
            +optional
            +listType=atomic
      description: Adds and removes POSIX capabilities from running containers.
    v1CephFSVolumeSource:
      type: object
      properties:
        monitors:
          type: array
          items:
            type: string
          title: >-
            monitors is Required: Monitors is a collection of Ceph monitors

            More info:
            https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

            +listType=atomic
        path:
          type: string
          title: >-
            path is Optional: Used as the mounted root, rather than the full
            Ceph tree, default is /

            +optional
        user:
          type: string
          title: >-
            user is optional: User is the rados user name, default is admin

            More info:
            https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

            +optional
        secretFile:
          type: string
          title: >-
            secretFile is Optional: SecretFile is the path to key ring for User,
            default is /etc/ceph/user.secret

            More info:
            https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

            +optional
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
        readOnly:
          type: boolean
          title: >-
            readOnly is Optional: Defaults to false (read/write). ReadOnly here
            will force

            the ReadOnly setting in VolumeMounts.

            More info:
            https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it

            +optional
      description: >-
        Represents a Ceph Filesystem mount that lasts the lifetime of a pod

        Cephfs volumes do not support ownership management or SELinux
        relabeling.
    v1Certificatelist:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1RepositoryCertificate'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1CinderVolumeSource:
      type: object
      properties:
        volumeID:
          type: string
          title: |-
            volumeID used to identify the volume in cinder.
            More info: https://examples.k8s.io/mysql-cinder-pd/README.md
        fsType:
          type: string
          title: >-
            fsType is the filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            More info: https://examples.k8s.io/mysql-cinder-pd/README.md

            +optional
        readOnly:
          type: boolean
          title: |-
            readOnly defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            More info: https://examples.k8s.io/mysql-cinder-pd/README.md
            +optional
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
      description: |-
        Represents a cinder volume resource in Openstack.
        A Cinder volume must exist before mounting to a container.
        The volume must also be in the same region as the kubelet.
        Cinder volumes support ownership management and SELinux relabeling.
    v1CloudWatchMetric:
      type: object
      properties:
        interval:
          type: string
        metricDataQueries:
          type: array
          items:
            $ref: '#/components/schemas/v1CloudWatchMetricDataQuery'
      title: CloudWatchMetric defines the cloudwatch query to perform canary analysis
    v1CloudWatchMetricDataQuery:
      type: object
      properties:
        id:
          type: string
        expression:
          type: string
        label:
          type: string
        metricStat:
          $ref: '#/components/schemas/v1CloudWatchMetricStat'
        period:
          $ref: '#/components/schemas/intstrIntOrString'
        returnData:
          type: boolean
      title: CloudWatchMetricDataQuery defines the cloudwatch query
    v1CloudWatchMetricStat:
      type: object
      properties:
        metric:
          $ref: '#/components/schemas/v1CloudWatchMetricStatMetric'
        period:
          $ref: '#/components/schemas/intstrIntOrString'
        stat:
          type: string
        unit:
          type: string
    v1CloudWatchMetricStatMetric:
      type: object
      properties:
        dimensions:
          type: array
          items:
            $ref: '#/components/schemas/v1CloudWatchMetricStatMetricDimension'
        metricName:
          type: string
        namespace:
          type: string
    v1CloudWatchMetricStatMetricDimension:
      type: object
      properties:
        name:
          type: string
        value:
          type: string
    v1ClusterInfraType:
      type: string
      enum:
        - UNSET
        - OPENSHIFT
      default: UNSET
      title: Agent destination cluster type
    v1ClusterTrustBundleProjection:
      type: object
      properties:
        name:
          type: string
          title: >-
            Select a single ClusterTrustBundle by object name. 
            Mutually-exclusive

            with signerName and labelSelector.

            +optional
        signerName:
          type: string
          title: |-
            Select all ClusterTrustBundles that match this signer name.
            Mutually-exclusive with name.  The contents of all selected
            ClusterTrustBundles will be unified and deduplicated.
            +optional
        labelSelector:
          $ref: '#/components/schemas/v1LabelSelector'
        optional:
          type: boolean
          title: >-
            If true, don't block pod startup if the referenced
            ClusterTrustBundle(s)

            aren't available.  If using name, then the named ClusterTrustBundle
            is

            allowed not to exist.  If using signerName, then the combination of

            signerName and labelSelector is allowed to match zero

            ClusterTrustBundles.

            +optional
        path:
          type: string
          description: Relative path from the volume root to write the bundle.
      description: |-
        ClusterTrustBundleProjection describes how to select a set of
        ClusterTrustBundle objects and project their contents into the pod
        filesystem.
    v1Clusterlist:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1Cluster'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1ConfigMapEnvSource:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        optional:
          type: boolean
          title: |-
            Specify whether the ConfigMap must be defined
            +optional
      description: |-
        ConfigMapEnvSource selects a ConfigMap to populate the environment
        variables with.

        The contents of the target ConfigMap's Data field will represent the
        key-value pairs as environment variables.
    v1ConfigMapKeySelector:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        key:
          type: string
          description: The key to select.
        optional:
          type: boolean
          title: |-
            Specify whether the ConfigMap or its key must be defined
            +optional
      title: |-
        Selects a key from a ConfigMap.
        +structType=atomic
    v1ConfigMapProjection:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1KeyToPath'
          title: >-
            items if unspecified, each key-value pair in the Data field of the
            referenced

            ConfigMap will be projected into the volume as a file whose name is
            the

            key and content is the value. If specified, the listed keys will be

            projected into the specified paths, and unlisted keys will not be

            present. If a key is specified which is not present in the
            ConfigMap,

            the volume setup will error unless it is marked optional. Paths must
            be

            relative and may not contain the '..' path or start with '..'.

            +optional

            +listType=atomic
        optional:
          type: boolean
          title: |-
            optional specify whether the ConfigMap or its keys must be defined
            +optional
      description: >-
        Adapts a ConfigMap into a projected volume.


        The contents of the target ConfigMap's Data field will be presented in a

        projected volume as files using the keys in the Data field as the file
        names,

        unless the items element is populated with specific mappings of keys to
        paths.

        Note that this is identical to a configmap volume source without the
        default

        mode.
    v1ConfigMapVolumeSource:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1KeyToPath'
          title: >-
            items if unspecified, each key-value pair in the Data field of the
            referenced

            ConfigMap will be projected into the volume as a file whose name is
            the

            key and content is the value. If specified, the listed keys will be

            projected into the specified paths, and unlisted keys will not be

            present. If a key is specified which is not present in the
            ConfigMap,

            the volume setup will error unless it is marked optional. Paths must
            be

            relative and may not contain the '..' path or start with '..'.

            +optional

            +listType=atomic
        defaultMode:
          type: integer
          format: int32
          title: >-
            defaultMode is optional: mode bits used to set permissions on
            created files by default.

            Must be an octal value between 0000 and 0777 or a decimal value
            between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values for mode bits.

            Defaults to 0644.

            Directories within the path are not affected by this setting.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
        optional:
          type: boolean
          title: |-
            optional specify whether the ConfigMap or its keys must be defined
            +optional
      description: >-
        Adapts a ConfigMap into a volume.


        The contents of the target ConfigMap's Data field will be presented in a

        volume as files using the keys in the Data field as the file names,
        unless

        the items element is populated with specific mappings of keys to paths.

        ConfigMap volumes support ownership management and SELinux relabeling.
    v1ConnectedStatus:
      type: string
      enum:
        - CONNECTED_STATUS_UNSET
        - CONNECTED
        - DISCONNECTED
      default: CONNECTED_STATUS_UNSET
    v1Container:
      type: object
      properties:
        name:
          type: string
          description: |-
            Name of the container specified as a DNS_LABEL.
            Each container in a pod must have a unique name (DNS_LABEL).
            Cannot be updated.
        image:
          type: string
          title: >-
            Container image name.

            More info: https://kubernetes.io/docs/concepts/containers/images

            This field is optional to allow higher level config management to
            default or override

            container images in workload controllers like Deployments and
            StatefulSets.

            +optional
        command:
          type: array
          items:
            type: string
          title: >-
            Entrypoint array. Not executed within a shell.

            The container image's ENTRYPOINT is used if this is not provided.

            Variable references $(VAR_NAME) are expanded using the container's
            environment. If a variable

            cannot be resolved, the reference in the input string will be
            unchanged. Double $$ are reduced

            to a single $, which allows for escaping the $(VAR_NAME) syntax:
            i.e. "$$(VAR_NAME)" will

            produce the string literal "$(VAR_NAME)". Escaped references will
            never be expanded, regardless

            of whether the variable exists or not. Cannot be updated.

            More info:
            https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

            +optional

            +listType=atomic
        args:
          type: array
          items:
            type: string
          title: >-
            Arguments to the entrypoint.

            The container image's CMD is used if this is not provided.

            Variable references $(VAR_NAME) are expanded using the container's
            environment. If a variable

            cannot be resolved, the reference in the input string will be
            unchanged. Double $$ are reduced

            to a single $, which allows for escaping the $(VAR_NAME) syntax:
            i.e. "$$(VAR_NAME)" will

            produce the string literal "$(VAR_NAME)". Escaped references will
            never be expanded, regardless

            of whether the variable exists or not. Cannot be updated.

            More info:
            https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

            +optional

            +listType=atomic
        workingDir:
          type: string
          title: >-
            Container's working directory.

            If not specified, the container runtime's default will be used,
            which

            might be configured in the container image.

            Cannot be updated.

            +optional
        ports:
          type: array
          items:
            $ref: '#/components/schemas/v1ContainerPort'
          title: >-
            List of ports to expose from the container. Not specifying a port
            here

            DOES NOT prevent that port from being exposed. Any port which is

            listening on the default "0.0.0.0" address inside a container will
            be

            accessible from the network.

            Modifying this array with strategic merge patch may corrupt the
            data.

            For more information See
            https://github.com/kubernetes/kubernetes/issues/108255.

            Cannot be updated.

            +optional

            +patchMergeKey=containerPort

            +patchStrategy=merge

            +listType=map

            +listMapKey=containerPort

            +listMapKey=protocol
        envFrom:
          type: array
          items:
            $ref: '#/components/schemas/v1EnvFromSource'
          title: >-
            List of sources to populate environment variables in the container.

            The keys defined within a source must be a C_IDENTIFIER. All invalid
            keys

            will be reported as an event when the container is starting. When a
            key exists in multiple

            sources, the value associated with the last source will take
            precedence.

            Values defined by an Env with a duplicate key will take precedence.

            Cannot be updated.

            +optional

            +listType=atomic
        env:
          type: array
          items:
            $ref: '#/components/schemas/v1EnvVar'
          title: |-
            List of environment variables to set in the container.
            Cannot be updated.
            +optional
            +patchMergeKey=name
            +patchStrategy=merge
            +listType=map
            +listMapKey=name
        resources:
          $ref: '#/components/schemas/v1ResourceRequirements'
        resizePolicy:
          type: array
          items:
            $ref: '#/components/schemas/v1ContainerResizePolicy'
          title: |-
            Resources resize policy for the container.
            +featureGate=InPlacePodVerticalScaling
            +optional
            +listType=atomic
        restartPolicy:
          type: string
          title: >-
            RestartPolicy defines the restart behavior of individual containers
            in a pod.

            This field may only be set for init containers, and the only allowed
            value is "Always".

            For non-init containers or when this field is not specified,

            the restart behavior is defined by the Pod's restart policy and the
            container type.

            Setting the RestartPolicy as "Always" for the init container will
            have the following effect:

            this init container will be continually restarted on

            exit until all regular containers have terminated. Once all regular

            containers have completed, all init containers with restartPolicy
            "Always"

            will be shut down. This lifecycle differs from normal init
            containers and

            is often referred to as a "sidecar" container. Although this init

            container still starts in the init container sequence, it does not
            wait

            for the container to complete before proceeding to the next init

            container. Instead, the next init container starts immediately after
            this

            init container is started, or after any startupProbe has
            successfully

            completed.

            +featureGate=SidecarContainers

            +optional
        volumeMounts:
          type: array
          items:
            $ref: '#/components/schemas/v1VolumeMount'
          title: |-
            Pod volumes to mount into the container's filesystem.
            Cannot be updated.
            +optional
            +patchMergeKey=mountPath
            +patchStrategy=merge
            +listType=map
            +listMapKey=mountPath
        volumeDevices:
          type: array
          items:
            $ref: '#/components/schemas/v1VolumeDevice'
          title: >-
            volumeDevices is the list of block devices to be used by the
            container.

            +patchMergeKey=devicePath

            +patchStrategy=merge

            +listType=map

            +listMapKey=devicePath

            +optional
        livenessProbe:
          $ref: '#/components/schemas/v1Probe'
        readinessProbe:
          $ref: '#/components/schemas/v1Probe'
        startupProbe:
          $ref: '#/components/schemas/v1Probe'
        lifecycle:
          $ref: '#/components/schemas/v1Lifecycle'
        terminationMessagePath:
          type: string
          title: >-
            Optional: Path at which the file to which the container's
            termination message

            will be written is mounted into the container's filesystem.

            Message written is intended to be brief final status, such as an
            assertion failure message.

            Will be truncated by the node if greater than 4096 bytes. The total
            message length across

            all containers will be limited to 12kb.

            Defaults to /dev/termination-log.

            Cannot be updated.

            +optional
        terminationMessagePolicy:
          type: string
          title: >-
            Indicate how the termination message should be populated. File will
            use the contents of

            terminationMessagePath to populate the container status message on
            both success and failure.

            FallbackToLogsOnError will use the last chunk of container log
            output if the termination

            message file is empty and the container exited with an error.

            The log output is limited to 2048 bytes or 80 lines, whichever is
            smaller.

            Defaults to File.

            Cannot be updated.

            +optional
        imagePullPolicy:
          type: string
          title: >-
            Image pull policy.

            One of Always, Never, IfNotPresent.

            Defaults to Always if :latest tag is specified, or IfNotPresent
            otherwise.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/containers/images#updating-images

            +optional
        securityContext:
          $ref: '#/components/schemas/v1SecurityContext'
        stdin:
          type: boolean
          title: >-
            Whether this container should allocate a buffer for stdin in the
            container runtime. If this

            is not set, reads from stdin in the container will always result in
            EOF.

            Default is false.

            +optional
        stdinOnce:
          type: boolean
          title: >-
            Whether the container runtime should close the stdin channel after
            it has been opened by

            a single attach. When stdin is true the stdin stream will remain
            open across multiple attach

            sessions. If stdinOnce is set to true, stdin is opened on container
            start, is empty until the

            first client attaches to stdin, and then remains open and accepts
            data until the client disconnects,

            at which time stdin is closed and remains closed until the container
            is restarted. If this

            flag is false, a container processes that reads from stdin will
            never receive an EOF.

            Default is false

            +optional
        tty:
          type: boolean
          title: >-
            Whether this container should allocate a TTY for itself, also
            requires 'stdin' to be true.

            Default is false.

            +optional
      description: A single application container that you want to run within a pod.
    v1ContainerPort:
      type: object
      properties:
        name:
          type: string
          title: >-
            If specified, this must be an IANA_SVC_NAME and unique within the
            pod. Each

            named port in a pod must have a unique name. Name for the port that
            can be

            referred to by services.

            +optional
        hostPort:
          type: integer
          format: int32
          title: |-
            Number of port to expose on the host.
            If specified, this must be a valid port number, 0 < x < 65536.
            If HostNetwork is specified, this must match ContainerPort.
            Most containers do not need this.
            +optional
        containerPort:
          type: integer
          format: int32
          description: |-
            Number of port to expose on the pod's IP address.
            This must be a valid port number, 0 < x < 65536.
        protocol:
          type: string
          title: |-
            Protocol for port. Must be UDP, TCP, or SCTP.
            Defaults to "TCP".
            +optional
            +default="TCP"
        hostIP:
          type: string
          title: |-
            What host IP to bind the external port to.
            +optional
      description: ContainerPort represents a network port in a single container.
    v1ContainerResizePolicy:
      type: object
      properties:
        resourceName:
          type: string
          description: |-
            Name of the resource to which this resource resize policy applies.
            Supported values: cpu, memory.
        restartPolicy:
          type: string
          description: |-
            Restart policy to apply when specified resource is resized.
            If not specified, it defaults to NotRequired.
      description: >-
        ContainerResizePolicy represents resource resize policy for the
        container.
    v1DashboardOverview:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        applicationStatusCounts:
          $ref: '#/components/schemas/v1ApplicationStatusCounts'
        repositoryCount:
          type: integer
          format: int32
        applicationCount:
          type: integer
          format: int32
        clusterCount:
          type: integer
          format: int32
    v1DatadogMetric:
      type: object
      properties:
        interval:
          type: string
        query:
          type: string
        apiVersion:
          type: string
          description: >-
            ApiVersion refers to the Datadog API version being used (default:
            v1). v1 will eventually be deprecated.
    v1DeploymentsDetails:
      type: object
      properties:
        startedAt:
          type: string
        rollback:
          type: integer
          format: int32
        deploy:
          type: integer
          format: int32
        redeploy:
          type: integer
          format: int32
        succeeded:
          type: integer
          format: int32
        error:
          type: integer
          format: int32
        terminating:
          type: integer
          format: int32
        failed:
          type: integer
          format: int32
        running:
          type: integer
          format: int32
        totalDeployments:
          type: integer
          format: int32
        failureRate:
          type: number
          format: double
    v1DisasterRecoveryNode:
      type: object
      properties:
        identifier:
          type: string
        name:
          type: string
        type:
          $ref: '#/components/schemas/v1DisasterRecoveryType'
    v1DisasterRecoveryType:
      type: string
      enum:
        - UNKNOWN_TYPE
        - PRIMARY
        - SECONDARY
      default: UNKNOWN_TYPE
    v1DownloadResponse:
      type: object
      properties:
        chunk:
          type: string
          format: byte
    v1DownwardAPIProjection:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1DownwardAPIVolumeFile'
          title: |-
            Items is a list of DownwardAPIVolume file
            +optional
            +listType=atomic
      description: >-
        Represents downward API info for projecting into a projected volume.

        Note that this is identical to a downwardAPI volume source without the
        default

        mode.
    v1DownwardAPIVolumeFile:
      type: object
      properties:
        path:
          type: string
          title: >-
            Required: Path is  the relative path name of the file to be created.
            Must not be absolute or contain the '..' path. Must be utf-8
            encoded. The first item of the relative path must not start with
            '..'
        fieldRef:
          $ref: '#/components/schemas/v1ObjectFieldSelector'
        resourceFieldRef:
          $ref: '#/components/schemas/v1ResourceFieldSelector'
        mode:
          type: integer
          format: int32
          title: >-
            Optional: mode bits used to set permissions on this file, must be an
            octal value

            between 0000 and 0777 or a decimal value between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values for mode bits.

            If not specified, the volume defaultMode will be used.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
      title: >-
        DownwardAPIVolumeFile represents information to create the file
        containing the pod field
    v1DownwardAPIVolumeSource:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1DownwardAPIVolumeFile'
          title: |-
            Items is a list of downward API volume file
            +optional
            +listType=atomic
        defaultMode:
          type: integer
          format: int32
          title: >-
            Optional: mode bits to use on created files by default. Must be a

            Optional: mode bits used to set permissions on created files by
            default.

            Must be an octal value between 0000 and 0777 or a decimal value
            between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values for mode bits.

            Defaults to 0644.

            Directories within the path are not affected by this setting.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
      description: >-
        DownwardAPIVolumeSource represents a volume containing downward API
        info.

        Downward API volumes support ownership management and SELinux
        relabeling.
    v1DryRun:
      type: object
      properties:
        metricName:
          type: string
          description: >-
            Name of the metric which needs to be evaluated in the Dry-Run mode.
            Wildcard '*' is supported and denotes all

            the available metrics.
      description: DryRun defines the settings for running the analysis in Dry-Run mode.
    v1Empty:
      type: object
    v1EmptyDirVolumeSource:
      type: object
      properties:
        medium:
          type: string
          title: >-
            medium represents what type of storage medium should back this
            directory.

            The default is "" which means to use the node's default medium.

            Must be an empty string (default) or Memory.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#emptydir

            +optional
        sizeLimit:
          $ref: '#/components/schemas/resourceQuantity'
      description: >-
        Represents an empty directory for a pod.

        Empty directory volumes support ownership management and SELinux
        relabeling.
    v1Enabled:
      type: object
      properties:
        enabled:
          type: boolean
    v1EnvFromSource:
      type: object
      properties:
        prefix:
          type: string
          title: >-
            An optional identifier to prepend to each key in the ConfigMap. Must
            be a C_IDENTIFIER.

            +optional
        configMapRef:
          $ref: '#/components/schemas/v1ConfigMapEnvSource'
        secretRef:
          $ref: '#/components/schemas/v1SecretEnvSource'
      title: EnvFromSource represents the source of a set of ConfigMaps
    v1EnvVar:
      type: object
      properties:
        name:
          type: string
          description: Name of the environment variable. Must be a C_IDENTIFIER.
        value:
          type: string
          title: >-
            Variable references $(VAR_NAME) are expanded

            using the previously defined environment variables in the container
            and

            any service environment variables. If a variable cannot be resolved,

            the reference in the input string will be unchanged. Double $$ are
            reduced

            to a single $, which allows for escaping the $(VAR_NAME) syntax:
            i.e.

            "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)".

            Escaped references will never be expanded, regardless of whether the
            variable

            exists or not.

            Defaults to "".

            +optional
        valueFrom:
          $ref: '#/components/schemas/v1EnvVarSource'
      description: EnvVar represents an environment variable present in a Container.
    v1EnvVarSource:
      type: object
      properties:
        fieldRef:
          $ref: '#/components/schemas/v1ObjectFieldSelector'
        resourceFieldRef:
          $ref: '#/components/schemas/v1ResourceFieldSelector'
        configMapKeyRef:
          $ref: '#/components/schemas/v1ConfigMapKeySelector'
        secretKeyRef:
          $ref: '#/components/schemas/v1SecretKeySelector'
      description: EnvVarSource represents a source for the value of an EnvVar.
    v1EphemeralContainer:
      type: object
      properties:
        ephemeralContainerCommon:
          $ref: '#/components/schemas/v1EphemeralContainerCommon'
        targetContainerName:
          type: string
          description: >-
            If set, the name of the container from PodSpec that this ephemeral
            container targets.

            The ephemeral container will be run in the namespaces (IPC, PID,
            etc) of this container.

            If not set then the ephemeral container uses the namespaces
            configured in the Pod spec.


            The container runtime must implement support for this feature. If
            the runtime does not

            support namespace targeting then the result of setting this field is
            undefined.

            +optional
      description: >-
        An EphemeralContainer is a temporary container that you may add to an
        existing Pod for

        user-initiated activities such as debugging. Ephemeral containers have
        no resource or

        scheduling guarantees, and they will not be restarted when they exit or
        when a Pod is

        removed or restarted. The kubelet may evict a Pod if an ephemeral
        container causes the

        Pod to exceed its resource allocation.


        To add an ephemeral container, use the ephemeralcontainers subresource
        of an existing

        Pod. Ephemeral containers may not be removed or restarted.
    v1EphemeralContainerCommon:
      type: object
      properties:
        name:
          type: string
          description: >-
            Name of the ephemeral container specified as a DNS_LABEL.

            This name must be unique among all containers, init containers and
            ephemeral containers.
        image:
          type: string
          title: |-
            Container image name.
            More info: https://kubernetes.io/docs/concepts/containers/images
        command:
          type: array
          items:
            type: string
          title: >-
            Entrypoint array. Not executed within a shell.

            The image's ENTRYPOINT is used if this is not provided.

            Variable references $(VAR_NAME) are expanded using the container's
            environment. If a variable

            cannot be resolved, the reference in the input string will be
            unchanged. Double $$ are reduced

            to a single $, which allows for escaping the $(VAR_NAME) syntax:
            i.e. "$$(VAR_NAME)" will

            produce the string literal "$(VAR_NAME)". Escaped references will
            never be expanded, regardless

            of whether the variable exists or not. Cannot be updated.

            More info:
            https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

            +optional

            +listType=atomic
        args:
          type: array
          items:
            type: string
          title: >-
            Arguments to the entrypoint.

            The image's CMD is used if this is not provided.

            Variable references $(VAR_NAME) are expanded using the container's
            environment. If a variable

            cannot be resolved, the reference in the input string will be
            unchanged. Double $$ are reduced

            to a single $, which allows for escaping the $(VAR_NAME) syntax:
            i.e. "$$(VAR_NAME)" will

            produce the string literal "$(VAR_NAME)". Escaped references will
            never be expanded, regardless

            of whether the variable exists or not. Cannot be updated.

            More info:
            https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

            +optional

            +listType=atomic
        workingDir:
          type: string
          title: >-
            Container's working directory.

            If not specified, the container runtime's default will be used,
            which

            might be configured in the container image.

            Cannot be updated.

            +optional
        ports:
          type: array
          items:
            $ref: '#/components/schemas/v1ContainerPort'
          title: |-
            Ports are not allowed for ephemeral containers.
            +optional
            +patchMergeKey=containerPort
            +patchStrategy=merge
            +listType=map
            +listMapKey=containerPort
            +listMapKey=protocol
        envFrom:
          type: array
          items:
            $ref: '#/components/schemas/v1EnvFromSource'
          title: >-
            List of sources to populate environment variables in the container.

            The keys defined within a source must be a C_IDENTIFIER. All invalid
            keys

            will be reported as an event when the container is starting. When a
            key exists in multiple

            sources, the value associated with the last source will take
            precedence.

            Values defined by an Env with a duplicate key will take precedence.

            Cannot be updated.

            +optional

            +listType=atomic
        env:
          type: array
          items:
            $ref: '#/components/schemas/v1EnvVar'
          title: |-
            List of environment variables to set in the container.
            Cannot be updated.
            +optional
            +patchMergeKey=name
            +patchStrategy=merge
            +listType=map
            +listMapKey=name
        resources:
          $ref: '#/components/schemas/v1ResourceRequirements'
        resizePolicy:
          type: array
          items:
            $ref: '#/components/schemas/v1ContainerResizePolicy'
          title: |-
            Resources resize policy for the container.
            +featureGate=InPlacePodVerticalScaling
            +optional
            +listType=atomic
        restartPolicy:
          type: string
          title: >-
            Restart policy for the container to manage the restart behavior of
            each

            container within a pod.

            This may only be set for init containers. You cannot set this field
            on

            ephemeral containers.

            +featureGate=SidecarContainers

            +optional
        volumeMounts:
          type: array
          items:
            $ref: '#/components/schemas/v1VolumeMount'
          title: >-
            Pod volumes to mount into the container's filesystem. Subpath mounts
            are not allowed for ephemeral containers.

            Cannot be updated.

            +optional

            +patchMergeKey=mountPath

            +patchStrategy=merge

            +listType=map

            +listMapKey=mountPath
        volumeDevices:
          type: array
          items:
            $ref: '#/components/schemas/v1VolumeDevice'
          title: >-
            volumeDevices is the list of block devices to be used by the
            container.

            +patchMergeKey=devicePath

            +patchStrategy=merge

            +listType=map

            +listMapKey=devicePath

            +optional
        livenessProbe:
          $ref: '#/components/schemas/v1Probe'
        readinessProbe:
          $ref: '#/components/schemas/v1Probe'
        startupProbe:
          $ref: '#/components/schemas/v1Probe'
        lifecycle:
          $ref: '#/components/schemas/v1Lifecycle'
        terminationMessagePath:
          type: string
          title: >-
            Optional: Path at which the file to which the container's
            termination message

            will be written is mounted into the container's filesystem.

            Message written is intended to be brief final status, such as an
            assertion failure message.

            Will be truncated by the node if greater than 4096 bytes. The total
            message length across

            all containers will be limited to 12kb.

            Defaults to /dev/termination-log.

            Cannot be updated.

            +optional
        terminationMessagePolicy:
          type: string
          title: >-
            Indicate how the termination message should be populated. File will
            use the contents of

            terminationMessagePath to populate the container status message on
            both success and failure.

            FallbackToLogsOnError will use the last chunk of container log
            output if the termination

            message file is empty and the container exited with an error.

            The log output is limited to 2048 bytes or 80 lines, whichever is
            smaller.

            Defaults to File.

            Cannot be updated.

            +optional
        imagePullPolicy:
          type: string
          title: >-
            Image pull policy.

            One of Always, Never, IfNotPresent.

            Defaults to Always if :latest tag is specified, or IfNotPresent
            otherwise.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/containers/images#updating-images

            +optional
        securityContext:
          $ref: '#/components/schemas/v1SecurityContext'
        stdin:
          type: boolean
          title: >-
            Whether this container should allocate a buffer for stdin in the
            container runtime. If this

            is not set, reads from stdin in the container will always result in
            EOF.

            Default is false.

            +optional
        stdinOnce:
          type: boolean
          title: >-
            Whether the container runtime should close the stdin channel after
            it has been opened by

            a single attach. When stdin is true the stdin stream will remain
            open across multiple attach

            sessions. If stdinOnce is set to true, stdin is opened on container
            start, is empty until the

            first client attaches to stdin, and then remains open and accepts
            data until the client disconnects,

            at which time stdin is closed and remains closed until the container
            is restarted. If this

            flag is false, a container processes that reads from stdin will
            never receive an EOF.

            Default is false

            +optional
        tty:
          type: boolean
          title: >-
            Whether this container should allocate a TTY for itself, also
            requires 'stdin' to be true.

            Default is false.

            +optional
      description: >-
        EphemeralContainerCommon is a copy of all fields in Container to be
        inlined in

        EphemeralContainer. This separate type allows easy conversion from
        EphemeralContainer

        to Container and allows separate documentation for the fields of
        EphemeralContainer.

        When a new field is added to Container it must be added here as well.
    v1EphemeralVolumeSource:
      type: object
      properties:
        volumeClaimTemplate:
          $ref: '#/components/schemas/v1PersistentVolumeClaimTemplate'
      description: >-
        Represents an ephemeral volume that is handled by a normal storage
        driver.
    v1ExecAction:
      type: object
      properties:
        command:
          type: array
          items:
            type: string
          title: >-
            Command is the command line to execute inside the container, the
            working directory for the

            command  is root ('/') in the container's filesystem. The command is
            simply exec'd, it is

            not run inside a shell, so traditional shell instructions ('|', etc)
            won't work. To use

            a shell, you need to explicitly call out to that shell.

            Exit status of 0 is treated as live/healthy and non-zero is
            unhealthy.

            +optional

            +listType=atomic
      description: ExecAction describes a "run in container" action.
    v1FCVolumeSource:
      type: object
      properties:
        targetWWNs:
          type: array
          items:
            type: string
          title: |-
            targetWWNs is Optional: FC target worldwide names (WWNs)
            +optional
            +listType=atomic
        lun:
          type: integer
          format: int32
          title: |-
            lun is Optional: FC target lun number
            +optional
        fsType:
          type: string
          title: >-
            fsType is the filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            TODO: how do we prevent errors in the filesystem from compromising
            the machine

            +optional
        readOnly:
          type: boolean
          title: >-
            readOnly is Optional: Defaults to false (read/write). ReadOnly here
            will force

            the ReadOnly setting in VolumeMounts.

            +optional
        wwids:
          type: array
          items:
            type: string
          title: >-
            wwids Optional: FC volume world wide identifiers (wwids)

            Either wwids or combination of targetWWNs and lun must be set, but
            not both simultaneously.

            +optional

            +listType=atomic
      description: >-
        Represents a Fibre Channel volume.

        Fibre Channel volumes can only be mounted as read/write once.

        Fibre Channel volumes support ownership management and SELinux
        relabeling.
    v1FieldRef:
      type: object
      properties:
        fieldPath:
          type: string
          title: 'Required: Path of the field to select in the specified API version'
    v1FieldsV1:
      type: object
      properties:
        Raw:
          type: string
          format: byte
          description: Raw is the underlying serialization of this object.
      description: >-
        FieldsV1 stores a set of fields in a data structure like a Trie, in JSON
        format.


        Each key is either a '.' representing the field itself, and will always
        map to an empty set,

        or a string representing a sub-field or item. The string will follow one
        of these four formats:

        'f:<name>', where <name> is the name of a field in a struct, or key in a
        map

        'v:<value>', where <value> is the exact json formatted value of a list
        item

        'i:<index>', where <index> is position of a item in a list

        'k:<keys>', where <keys> is a map of  a list item's key fields to their
        unique values

        If a key maps to an empty Fields value, the field that key represents is
        part of the set.


        The exact format is defined in sigs.k8s.io/structured-merge-diff

        +protobuf.options.(gogoproto.goproto_stringer)=false
    v1Filter:
      type: object
      properties:
        identifier:
          type: string
          description: Identifier for the filter.
        name:
          type: string
          description: Name for the filter.
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
        orgIdentifier:
          type: string
          description: Organization Identifier for the filter.
        projectIdentifier:
          type: string
          description: Project Identifier for the filter.
        filterVisibility:
          $ref: '#/components/schemas/v1FilterVisibility'
        filterProperties:
          type: object
          description: Filter properties
        filterType:
          $ref: '#/components/schemas/v1FilterType'
    v1FilterList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1Filter'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1FilterType:
      type: string
      enum:
        - FILTER_TYPE_UNSET
        - APPLICATION
        - AGENT
        - CLUSTER
        - REPO
      default: FILTER_TYPE_UNSET
    v1FilterVisibility:
      type: string
      enum:
        - FilterVisibilityUnset
        - EveryOne
        - OnlyCreator
      default: FilterVisibilityUnset
    v1FlexVolumeSource:
      type: object
      properties:
        driver:
          type: string
          description: driver is the name of the driver to use for this volume.
        fsType:
          type: string
          title: >-
            fsType is the filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". The default filesystem depends on
            FlexVolume script.

            +optional
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
        readOnly:
          type: boolean
          title: >-
            readOnly is Optional: defaults to false (read/write). ReadOnly here
            will force

            the ReadOnly setting in VolumeMounts.

            +optional
        options:
          type: object
          additionalProperties:
            type: string
          title: |-
            options is Optional: this field holds extra command options if any.
            +optional
      description: |-
        FlexVolume represents a generic volume resource that is
        provisioned/attached using an exec based plugin.
    v1FlockerVolumeSource:
      type: object
      properties:
        datasetName:
          type: string
          title: >-
            datasetName is Name of the dataset stored as metadata -> name on the
            dataset for Flocker

            should be considered as deprecated

            +optional
        datasetUUID:
          type: string
          title: >-
            datasetUUID is the UUID of the dataset. This is unique identifier of
            a Flocker dataset

            +optional
      description: >-
        Represents a Flocker volume mounted by the Flocker agent.

        One and only one of datasetName and datasetUUID should be set.

        Flocker volumes do not support ownership management or SELinux
        relabeling.
    v1GCEPersistentDiskVolumeSource:
      type: object
      properties:
        pdName:
          type: string
          title: >-
            pdName is unique name of the PD resource in GCE. Used to identify
            the disk in GCE.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
        fsType:
          type: string
          title: >-
            fsType is filesystem type of the volume that you want to mount.

            Tip: Ensure that the filesystem type is supported by the host
            operating system.

            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

            TODO: how do we prevent errors in the filesystem from compromising
            the machine

            +optional
        partition:
          type: integer
          format: int32
          title: >-
            partition is the partition in the volume that you want to mount.

            If omitted, the default is to mount by volume name.

            Examples: For volume /dev/sda1, you specify the partition as "1".

            Similarly, the volume partition for /dev/sda is "0" (or you can
            leave the property empty).

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

            +optional
        readOnly:
          type: boolean
          title: >-
            readOnly here will force the ReadOnly setting in VolumeMounts.

            Defaults to false.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk

            +optional
      description: |-
        Represents a Persistent Disk resource in Google Compute Engine.

        A GCE PD must exist before mounting to a container. The disk must
        also be in the same GCE project and zone as the kubelet. A GCE PD
        can only be mounted as read/write once or read-only many times. GCE
        PDs support ownership management and SELinux relabeling.
    v1GRPCAction:
      type: object
      properties:
        port:
          type: integer
          format: int32
          description: >-
            Port number of the gRPC service. Number must be in the range 1 to
            65535.
        service:
          type: string
          description: >-
            Service is the name of the service to place in the gRPC
            HealthCheckRequest

            (see
            https://github.com/grpc/grpc/blob/master/doc/health-checking.md).


            If this is not specified, the default behavior is defined by gRPC.

            +optional

            +default=""
      description: GRPCAction specifies an action involving a GRPC service.
    v1GitRepoVolumeSource:
      type: object
      properties:
        repository:
          type: string
          title: repository is the URL
        revision:
          type: string
          title: |-
            revision is the commit hash for the specified revision.
            +optional
        directory:
          type: string
          title: >-
            directory is the target directory name.

            Must not contain or start with '..'.  If '.' is supplied, the volume
            directory will be the

            git repository.  Otherwise, if specified, the volume will contain
            the git repository in

            the subdirectory with the given name.

            +optional
      description: >-
        Represents a volume that is populated with the contents of a git
        repository.

        Git repo volumes do not support ownership management.

        Git repo volumes support SELinux relabeling.


        DEPRECATED: GitRepo is deprecated. To provision a container with a git
        repo, mount an

        EmptyDir into an InitContainer that clones the repo using git, then
        mount the EmptyDir

        into the Pod's container.
    v1GlusterfsVolumeSource:
      type: object
      properties:
        endpoints:
          type: string
          title: >-
            endpoints is the endpoint name that details Glusterfs topology.

            More info:
            https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
        path:
          type: string
          title: >-
            path is the Glusterfs volume path.

            More info:
            https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
        readOnly:
          type: boolean
          title: >-
            readOnly here will force the Glusterfs volume to be mounted with
            read-only permissions.

            Defaults to false.

            More info:
            https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod

            +optional
      description: >-
        Represents a Glusterfs mount that lasts the lifetime of a pod.

        Glusterfs volumes do not support ownership management or SELinux
        relabeling.
    v1Gnupg:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        gnuPGPublicKey:
          $ref: '#/components/schemas/gpgkeysGnuPGPublicKey'
        createdAt:
          type: string
          format: date-time
        lastModifiedAt:
          type: string
          format: date-time
    v1GraphiteMetric:
      type: object
      properties:
        address:
          type: string
          title: Address is the HTTP address and port of the Graphite server
        query:
          type: string
          title: Query is a raw Graphite query to perform
      title: GraphiteMetric defines the Graphite query to perform canary analysis
    v1GroupKind:
      type: object
      properties:
        group:
          type: string
        kind:
          type: string
      description: +protobuf.options.(gogoproto.goproto_stringer)=false
      title: >-
        GroupKind specifies a Group and a Kind, but does not force a version. 
        This is useful for identifying

        concepts during lookup stages without having partially valid types
    v1HTTPGetAction:
      type: object
      properties:
        path:
          type: string
          title: |-
            Path to access on the HTTP server.
            +optional
        port:
          $ref: '#/components/schemas/intstrIntOrString'
        host:
          type: string
          title: >-
            Host name to connect to, defaults to the pod IP. You probably want
            to set

            "Host" in httpHeaders instead.

            +optional
        scheme:
          type: string
          title: |-
            Scheme to use for connecting to the host.
            Defaults to HTTP.
            +optional
        httpHeaders:
          type: array
          items:
            $ref: '#/components/schemas/v1HTTPHeader'
          title: |-
            Custom headers to set in the request. HTTP allows repeated headers.
            +optional
            +listType=atomic
      description: HTTPGetAction describes an action based on HTTP Get requests.
    v1HTTPHeader:
      type: object
      properties:
        name:
          type: string
          description: >-
            The header field name.

            This will be canonicalized upon output, so case-variant names will
            be understood as the same header.
        value:
          type: string
          title: The header field value
      title: HTTPHeader describes a custom header to be used in HTTP probes
    v1HeaderRoutingMatch:
      type: object
      properties:
        headerName:
          type: string
          title: HeaderName the name of the request header
        headerValue:
          $ref: '#/components/schemas/v1StringMatch'
    v1HealthStatusCounts:
      type: object
      properties:
        healthy:
          type: integer
          format: int32
        degraded:
          type: integer
          format: int32
        progressing:
          type: integer
          format: int32
        suspended:
          type: integer
          format: int32
        missing:
          type: integer
          format: int32
        unknown:
          type: integer
          format: int32
    v1HostAlias:
      type: object
      properties:
        ip:
          type: string
          title: |-
            IP address of the host file entry.
            +required
        hostnames:
          type: array
          items:
            type: string
          title: |-
            Hostnames for the above IP address.
            +listType=atomic
      description: >-
        HostAlias holds the mapping between IP and hostnames that will be
        injected as an entry in the

        pod's hosts file.
    v1HostPathVolumeSource:
      type: object
      properties:
        path:
          type: string
          title: >-
            path of the directory on the host.

            If the path is a symlink, it will follow the link to the real path.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#hostpath
        type:
          type: string
          title: >-
            type for HostPath Volume

            Defaults to ""

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#hostpath

            +optional
      description: >-
        Represents a host path mapped into a pod.

        Host path volumes do not support ownership management or SELinux
        relabeling.
    v1ISCSIVolumeSource:
      type: object
      properties:
        targetPortal:
          type: string
          description: >-
            targetPortal is iSCSI Target Portal. The Portal is either an IP or
            ip_addr:port if the port

            is other than default (typically TCP ports 860 and 3260).
        iqn:
          type: string
          description: iqn is the target iSCSI Qualified Name.
        lun:
          type: integer
          format: int32
          description: lun represents iSCSI Target Lun number.
        iscsiInterface:
          type: string
          title: |-
            iscsiInterface is the interface Name that uses an iSCSI transport.
            Defaults to 'default' (tcp).
            +optional
            +default="default"
        fsType:
          type: string
          title: >-
            fsType is the filesystem type of the volume that you want to mount.

            Tip: Ensure that the filesystem type is supported by the host
            operating system.

            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi

            TODO: how do we prevent errors in the filesystem from compromising
            the machine

            +optional
        readOnly:
          type: boolean
          title: |-
            readOnly here will force the ReadOnly setting in VolumeMounts.
            Defaults to false.
            +optional
        portals:
          type: array
          items:
            type: string
          title: >-
            portals is the iSCSI Target Portal List. The portal is either an IP
            or ip_addr:port if the port

            is other than default (typically TCP ports 860 and 3260).

            +optional

            +listType=atomic
        chapAuthDiscovery:
          type: boolean
          title: >-
            chapAuthDiscovery defines whether support iSCSI Discovery CHAP
            authentication

            +optional
        chapAuthSession:
          type: boolean
          title: >-
            chapAuthSession defines whether support iSCSI Session CHAP
            authentication

            +optional
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
        initiatorName:
          type: string
          title: >-
            initiatorName is the custom iSCSI Initiator Name.

            If initiatorName is specified with iscsiInterface simultaneously,
            new iSCSI interface

            <target portal>:<volume name> will be created for the connection.

            +optional
      description: |-
        Represents an ISCSI disk.
        ISCSI volumes can only be mounted as read/write once.
        ISCSI volumes support ownership management and SELinux relabeling.
    v1ImageVolumeSource:
      type: object
      properties:
        reference:
          type: string
          title: >-
            Required: Image or artifact reference to be used.

            Behaves in the same way as pod.spec.containers[*].image.

            Pull secrets will be assembled in the same way as for the container
            image by looking up node credentials, SA image pull secrets, and pod
            spec image pull secrets.

            More info: https://kubernetes.io/docs/concepts/containers/images

            This field is optional to allow higher level config management to
            default or override

            container images in workload controllers like Deployments and
            StatefulSets.

            +optional
        pullPolicy:
          type: string
          title: >-
            Policy for pulling OCI objects. Possible values are:

            Always: the kubelet always attempts to pull the reference. Container
            creation will fail If the pull fails.

            Never: the kubelet never pulls the reference and only uses a local
            image or artifact. Container creation will fail if the reference
            isn't present.

            IfNotPresent: the kubelet pulls if the reference isn't already
            present on disk. Container creation will fail if the reference isn't
            present and the pull fails.

            Defaults to Always if :latest tag is specified, or IfNotPresent
            otherwise.

            +optional
      description: ImageVolumeSource represents a image volume resource.
    v1InfluxdbMetric:
      type: object
      properties:
        profile:
          type: string
          title: >-
            Profile is the name of the secret holding InfluxDB account
            configuration
        query:
          type: string
          title: Query is a raw InfluxDB flux query to perform
      title: >-
        InfluxdbMetric defines the InfluxDB Flux query to perform canary
        analysis
    v1JSON:
      type: object
      properties:
        raw:
          type: string
          format: byte
      description: >-
        JSON represents any valid JSON value.

        These types are supported: bool, int64, float64, string, []interface{},
        map[string]interface{} and nil.
    v1JobMetric:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/v1JobSpec'
      title: JobMetric defines a job to run which acts as a metric
    v1JobSpec:
      type: object
      properties:
        parallelism:
          type: integer
          format: int32
          title: >-
            Specifies the maximum desired number of pods the job should

            run at any given time. The actual number of pods running in steady
            state will

            be less than this number when ((.spec.completions -
            .status.successful) < .spec.parallelism),

            i.e. when the work left to do is less than max parallelism.

            More info:
            https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/

            +optional
        completions:
          type: integer
          format: int32
          title: >-
            Specifies the desired number of successfully finished pods the

            job should be run with.  Setting to null means that the success of
            any

            pod signals the success of all pods, and allows parallelism to have
            any positive

            value.  Setting to 1 means that parallelism is limited to 1 and the
            success of that

            pod signals the success of the job.

            More info:
            https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/

            +optional
        activeDeadlineSeconds:
          type: string
          format: int64
          title: >-
            Specifies the duration in seconds relative to the startTime that the
            job

            may be continuously active before the system tries to terminate it;
            value

            must be positive integer. If a Job is suspended (at creation or
            through an

            update), this timer will effectively be stopped and reset when the
            Job is

            resumed again.

            +optional
        podFailurePolicy:
          $ref: '#/components/schemas/v1PodFailurePolicy'
        successPolicy:
          $ref: '#/components/schemas/v1SuccessPolicy'
        backoffLimit:
          type: integer
          format: int32
          title: |-
            Specifies the number of retries before marking this job failed.
            Defaults to 6
            +optional
        backoffLimitPerIndex:
          type: integer
          format: int32
          title: >-
            Specifies the limit for the number of retries within an

            index before marking this index as failed. When enabled the number
            of

            failures per index is kept in the pod's

            batch.kubernetes.io/job-index-failure-count annotation. It can only

            be set when Job's completionMode=Indexed, and the Pod's restart

            policy is Never. The field is immutable.

            This field is beta-level. It can be used when the
            `JobBackoffLimitPerIndex`

            feature gate is enabled (enabled by default).

            +optional
        maxFailedIndexes:
          type: integer
          format: int32
          title: >-
            Specifies the maximal number of failed indexes before marking the
            Job as

            failed, when backoffLimitPerIndex is set. Once the number of failed

            indexes exceeds this number the entire Job is marked as Failed and
            its

            execution is terminated. When left as null the job continues
            execution of

            all of its indexes and is marked with the `Complete` Job condition.

            It can only be specified when backoffLimitPerIndex is set.

            It can be null or up to completions. It is required and must be

            less than or equal to 10^4 when is completions greater than 10^5.

            This field is beta-level. It can be used when the
            `JobBackoffLimitPerIndex`

            feature gate is enabled (enabled by default).

            +optional
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        manualSelector:
          type: boolean
          title: >-
            manualSelector controls generation of pod labels and pod selectors.

            Leave `manualSelector` unset unless you are certain what you are
            doing.

            When false or unset, the system pick labels unique to this job

            and appends those labels to the pod template.  When true,

            the user is responsible for picking unique labels and specifying

            the selector.  Failure to pick a unique label may cause this

            and other jobs to not function correctly.  However, You may see

            `manualSelector=true` in jobs that were created with the old
            `extensions/v1beta1`

            API.

            More info:
            https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/#specifying-your-own-pod-selector

            +optional
        template:
          $ref: '#/components/schemas/v1PodTemplateSpec'
        ttlSecondsAfterFinished:
          type: integer
          format: int32
          title: >-
            ttlSecondsAfterFinished limits the lifetime of a Job that has
            finished

            execution (either Complete or Failed). If this field is set,

            ttlSecondsAfterFinished after the Job finishes, it is eligible to be

            automatically deleted. When the Job is being deleted, its lifecycle

            guarantees (e.g. finalizers) will be honored. If this field is
            unset,

            the Job won't be automatically deleted. If this field is set to
            zero,

            the Job becomes eligible to be deleted immediately after it
            finishes.

            +optional
        completionMode:
          type: string
          description: >-
            completionMode specifies how Pod completions are tracked. It can be

            `NonIndexed` (default) or `Indexed`.


            `NonIndexed` means that the Job is considered complete when there
            have

            been .spec.completions successfully completed Pods. Each Pod
            completion is

            homologous to each other.


            `Indexed` means that the Pods of a

            Job get an associated completion index from 0 to (.spec.completions
            - 1),

            available in the annotation
            batch.kubernetes.io/job-completion-index.

            The Job is considered complete when there is one successfully
            completed Pod

            for each index.

            When value is `Indexed`, .spec.completions must be specified and

            `.spec.parallelism` must be less than or equal to 10^5.

            In addition, The Pod name takes the form

            `$(job-name)-$(index)-$(random-string)`,

            the Pod hostname takes the form `$(job-name)-$(index)`.


            More completion modes can be added in the future.

            If the Job controller observes a mode that it doesn't recognize,
            which

            is possible during upgrades due to version skew, the controller

            skips updates for the Job.

            +optional
        suspend:
          type: boolean
          description: >-
            suspend specifies whether the Job controller should create Pods or
            not. If

            a Job is created with suspend set to true, no Pods are created by
            the Job

            controller. If a Job is suspended after creation (i.e. the flag goes
            from

            false to true), the Job controller will delete all active Pods
            associated

            with this Job. Users must design their workload to gracefully handle
            this.

            Suspending a Job will reset the StartTime field of the Job,
            effectively

            resetting the ActiveDeadlineSeconds timer too. Defaults to false.


            +optional
        podReplacementPolicy:
          type: string
          description: >-
            podReplacementPolicy specifies when to create replacement Pods.

            Possible values are:

            - TerminatingOrFailed means that we recreate pods
              when they are terminating (has a metadata.deletionTimestamp) or failed.
            - Failed means to wait until a previously created Pod is fully
            terminated (has phase
              Failed or Succeeded) before creating a replacement Pod.

            When using podFailurePolicy, Failed is the the only allowed value.

            TerminatingOrFailed and Failed are allowed values when
            podFailurePolicy is not in use.

            This is an beta field. To use this, enable the
            JobPodReplacementPolicy feature toggle.

            This is on by default.

            +optional
        managedBy:
          type: string
          description: >-
            ManagedBy field indicates the controller that manages a Job. The k8s
            Job

            controller reconciles jobs which don't have this field at all or the
            field

            value is the reserved string `kubernetes.io/job-controller`, but
            skips

            reconciling Jobs with a custom value for this field.

            The value must be a valid domain-prefixed path (e.g. acme.io/foo) -

            all characters before the first "/" must be a valid subdomain as
            defined

            by RFC 1123. All characters trailing the first "/" must be valid
            HTTP Path

            characters as defined by RFC 3986. The value cannot exceed 63
            characters.

            This field is immutable.


            This field is beta-level. The job controller accepts setting the
            field

            when the feature gate JobManagedBy is enabled (enabled by default).

            +optional
      description: JobSpec describes how the job execution will look like.
    v1KayentaMetric:
      type: object
      properties:
        address:
          type: string
        application:
          type: string
        canaryConfigName:
          type: string
        metricsAccountName:
          type: string
        configurationAccountName:
          type: string
        storageAccountName:
          type: string
        threshold:
          $ref: '#/components/schemas/v1KayentaThreshold'
        scopes:
          type: array
          items:
            $ref: '#/components/schemas/v1KayentaScope'
    v1KayentaScope:
      type: object
      properties:
        name:
          type: string
        controlScope:
          $ref: '#/components/schemas/v1ScopeDetail'
        experimentScope:
          $ref: '#/components/schemas/v1ScopeDetail'
    v1KayentaThreshold:
      type: object
      properties:
        pass:
          type: string
          format: int64
        marginal:
          type: string
          format: int64
    v1KeyToPath:
      type: object
      properties:
        key:
          type: string
          description: key is the key to project.
        path:
          type: string
          description: |-
            path is the relative path of the file to map the key to.
            May not be an absolute path.
            May not contain the path element '..'.
            May not start with the string '..'.
        mode:
          type: integer
          format: int32
          title: >-
            mode is Optional: mode bits used to set permissions on this file.

            Must be an octal value between 0000 and 0777 or a decimal value
            between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values for mode bits.

            If not specified, the volume defaultMode will be used.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
      description: Maps a string key to a path within a volume.
    v1LabelSelector:
      type: object
      properties:
        matchLabels:
          type: object
          additionalProperties:
            type: string
          title: >-
            matchLabels is a map of {key,value} pairs. A single {key,value} in
            the matchLabels

            map is equivalent to an element of matchExpressions, whose key field
            is "key", the

            operator is "In", and the values array contains only "value". The
            requirements are ANDed.

            +optional
        matchExpressions:
          type: array
          items:
            $ref: '#/components/schemas/v1LabelSelectorRequirement'
          title: >-
            matchExpressions is a list of label selector requirements. The
            requirements are ANDed.

            +optional

            +listType=atomic
      title: >-
        A label selector is a label query over a set of resources. The result of
        matchLabels and

        matchExpressions are ANDed. An empty label selector matches all objects.
        A null

        label selector matches no objects.

        +structType=atomic
    v1LabelSelectorRequirement:
      type: object
      properties:
        key:
          type: string
          description: key is the label key that the selector applies to.
        operator:
          type: string
          description: |-
            operator represents a key's relationship to a set of values.
            Valid operators are In, NotIn, Exists and DoesNotExist.
        values:
          type: array
          items:
            type: string
          title: >-
            values is an array of string values. If the operator is In or NotIn,

            the values array must be non-empty. If the operator is Exists or
            DoesNotExist,

            the values array must be empty. This array is replaced during a
            strategic

            merge patch.

            +optional

            +listType=atomic
      description: >-
        A label selector requirement is a selector that contains values, a key,
        and an operator that

        relates the key and values.
    v1LegacyApplicationSetList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1LegacyApplicationSetListItem'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1LegacyApplicationSetListItem:
      type: object
      properties:
        name:
          type: string
      description: Application set name, retrieved from application collection.
    v1Lifecycle:
      type: object
      properties:
        postStart:
          $ref: '#/components/schemas/v1LifecycleHandler'
        preStop:
          $ref: '#/components/schemas/v1LifecycleHandler'
      description: >-
        Lifecycle describes actions that the management system should take in
        response to container lifecycle

        events. For the PostStart and PreStop lifecycle handlers, management of
        the container blocks

        until the action is complete, unless the container process fails, in
        which case the handler is aborted.
    v1LifecycleHandler:
      type: object
      properties:
        exec:
          $ref: '#/components/schemas/v1ExecAction'
        httpGet:
          $ref: '#/components/schemas/v1HTTPGetAction'
        tcpSocket:
          $ref: '#/components/schemas/v1TCPSocketAction'
        sleep:
          $ref: '#/components/schemas/v1SleepAction'
      description: >-
        LifecycleHandler defines a specific action that should be taken in a
        lifecycle

        hook. One and only one of the fields, except TCPSocket must be
        specified.
    v1ListMeta:
      type: object
      properties:
        selfLink:
          type: string
          title: >-
            Deprecated: selfLink is a legacy read-only field that is no longer
            populated by the system.

            +optional
        resourceVersion:
          type: string
          title: >-
            String that identifies the server's internal version of this object
            that

            can be used by clients to determine when objects have changed.

            Value must be treated as opaque by clients and passed unmodified
            back to the server.

            Populated by the system.

            Read-only.

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

            +optional
        continue:
          type: string
          description: >-
            continue may be set if the user set a limit on the number of items
            returned, and indicates that

            the server has more data available. The value is opaque and may be
            used to issue another request

            to the endpoint that served this list to retrieve the next set of
            available objects. Continuing a

            consistent list may not be possible if the server configuration has
            changed or more than a few

            minutes have passed. The resourceVersion field returned when using
            this continue value will be

            identical to the value in the first response, unless you have
            received this token from an error

            message.
        remainingItemCount:
          type: string
          format: int64
          title: >-
            remainingItemCount is the number of subsequent items in the list
            which are not included in this

            list response. If the list request contained label or field
            selectors, then the number of

            remaining items is unknown and the field will be left unset and
            omitted during serialization.

            If the list is complete (either because it is not chunking or
            because this is the last chunk),

            then there are no more remaining items and this field will be left
            unset and omitted during

            serialization.

            Servers older than v1.15 do not set this field.

            The intended use of the remainingItemCount is *estimating* the size
            of a collection. Clients

            should not rely on the remainingItemCount to be set or to be exact.

            +optional
      description: >-
        ListMeta describes metadata that synthetic resources must have,
        including lists and

        various status objects. A resource may have only one of {ObjectMeta,
        ListMeta}.
    v1LoadBalancerIngress:
      type: object
      properties:
        ip:
          type: string
          title: |-
            IP is set for load-balancer ingress points that are IP based
            (typically GCE or OpenStack load-balancers)
            +optional
        hostname:
          type: string
          title: |-
            Hostname is set for load-balancer ingress points that are DNS based
            (typically AWS load-balancers)
            +optional
        ipMode:
          type: string
          title: >-
            IPMode specifies how the load-balancer IP behaves, and may only be
            specified when the ip field is specified.

            Setting this to "VIP" indicates that traffic is delivered to the
            node with

            the destination set to the load-balancer's IP and port.

            Setting this to "Proxy" indicates that traffic is delivered to the
            node or pod with

            the destination set to the node's IP and node port or the pod's IP
            and port.

            Service implementations may use this information to adjust traffic
            routing.

            +optional
        ports:
          type: array
          items:
            $ref: '#/components/schemas/v1PortStatus'
          title: >-
            Ports is a list of records of service ports

            If used, every port defined in the service should have an entry in
            it

            +listType=atomic

            +optional
      description: >-
        LoadBalancerIngress represents the status of a load-balancer ingress
        point:

        traffic intended for the service should be sent to an ingress point.
    v1LocalObjectReference:
      type: object
      properties:
        name:
          type: string
          description: >-
            Name of the referent.

            This field is effectively required, but due to backwards
            compatibility is

            allowed to be empty. Instances of this type with an empty value here
            are

            almost certainly wrong.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

            +optional

            +default=""

            +kubebuilder:default=""

            TODO: Drop `kubebuilder:default` when controller-gen doesn't need it
            https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
      description: >-
        LocalObjectReference contains enough information to let you locate the

        referenced object inside the same namespace.

        ---

        New uses of this type are discouraged because of difficulty describing
        its usage when embedded in APIs.
         1. Invalid usage help.  It is impossible to add specific help for individual usage.  In most embedded usages, there are particular
            restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted".
            Those cannot be well described when embedded.
         2. Inconsistent validation.  Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen.
         3. We cannot easily change it.  Because this type is embedded in many locations, updates to this type
            will affect numerous schemas.  Don't make new APIs embed an underspecified API type they do not control.

        Instead of using this type, create a locally provided and used type that
        is well-focused on your reference.

        For example, ServiceReferences for admission registration:
        https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533
        .

        +structType=atomic
    v1ManagedFieldsEntry:
      type: object
      properties:
        manager:
          type: string
          description: Manager is an identifier of the workflow managing these fields.
        operation:
          type: string
          description: >-
            Operation is the type of operation which lead to this
            ManagedFieldsEntry being created.

            The only valid values for this field are 'Apply' and 'Update'.
        apiVersion:
          type: string
          description: |-
            APIVersion defines the version of this resource that this field set
            applies to. The format is "group/version" just like the top-level
            APIVersion field. It is necessary to track the version of a field
            set because it cannot be automatically converted.
        time:
          $ref: '#/components/schemas/v1Time'
        fieldsType:
          type: string
          title: >-
            FieldsType is the discriminator for the different fields format and
            version.

            There is currently only one possible value: "FieldsV1"
        fieldsV1:
          $ref: '#/components/schemas/v1FieldsV1'
        subresource:
          type: string
          description: >-
            Subresource is the name of the subresource used to update that
            object, or

            empty string if the object was updated through the main resource.
            The

            value of this field is used to distinguish between managers, even if
            they

            share the same name. For example, a status update will be distinct
            from a

            regular update using the same manager name.

            Note that the APIVersion field is not related to the Subresource
            field and

            it always corresponds to the version of the main resource.
      description: >-
        ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of
        the resource

        that the fieldset applies to.
    v1MeasurementRetention:
      type: object
      properties:
        metricName:
          type: string
          description: >-
            MetricName is the name of the metric on which this retention policy
            should be applied.
        limit:
          type: integer
          format: int32
          description: >-
            Limit is the maximum number of measurements to be retained for this
            given metric.
      description: >-
        MeasurementRetention defines the settings for retaining the number of
        measurements during the analysis.
    v1Metric:
      type: object
      properties:
        name:
          type: string
          title: Name is the name of the metric
        interval:
          type: string
          title: >-
            Interval defines an interval string (e.g. 30s, 5m, 1h) between each
            measurement.

            If omitted, will perform a single measurement
        initialDelay:
          type: string
          title: >-
            InitialDelay how long the AnalysisRun should wait before starting
            this metric
        count:
          $ref: '#/components/schemas/intstrIntOrString'
        successCondition:
          type: string
          title: >-
            SuccessCondition is an expression which determines if a measurement
            is considered successful

            Expression is a goevaluate expression. The keyword `result` is a
            variable reference to the

            value of measurement. Results can be both structured data or
            primitive.

            Examples:
              result > 10
              (result.requests_made * result.requests_succeeded / 100) >= 90
        failureCondition:
          type: string
          title: >-
            FailureCondition is an expression which determines if a measurement
            is considered failed

            If both success and failure conditions are specified, and the
            measurement does not fall into

            either condition, the measurement is considered Inconclusive
        failureLimit:
          $ref: '#/components/schemas/intstrIntOrString'
        inconclusiveLimit:
          $ref: '#/components/schemas/intstrIntOrString'
        consecutiveErrorLimit:
          $ref: '#/components/schemas/intstrIntOrString'
        provider:
          $ref: '#/components/schemas/v1MetricProvider'
      title: Metric defines a metric in which to perform analysis
    v1MetricProvider:
      type: object
      properties:
        prometheus:
          $ref: '#/components/schemas/v1PrometheusMetric'
        kayenta:
          $ref: '#/components/schemas/v1KayentaMetric'
        web:
          $ref: '#/components/schemas/v1WebMetric'
        datadog:
          $ref: '#/components/schemas/v1DatadogMetric'
        wavefront:
          $ref: '#/components/schemas/v1WavefrontMetric'
        newRelic:
          $ref: '#/components/schemas/v1NewRelicMetric'
        job:
          $ref: '#/components/schemas/v1JobMetric'
        cloudWatch:
          $ref: '#/components/schemas/v1CloudWatchMetric'
        graphite:
          $ref: '#/components/schemas/v1GraphiteMetric'
        influxdb:
          $ref: '#/components/schemas/v1InfluxdbMetric'
        skywalking:
          $ref: '#/components/schemas/v1SkyWalkingMetric'
        plugin:
          type: object
          additionalProperties:
            type: string
            format: byte
          title: |-
            +kubebuilder:validation:Schemaless
            +kubebuilder:pruning:PreserveUnknownFields
            +kubebuilder:validation:Type=object
            Plugin specifies the hashicorp go-plugin metric to query
      title: |-
        MetricProvider which external system to use to verify the analysis
        Only one of the fields in this struct should be non-nil
    v1MicroTime:
      type: object
      properties:
        seconds:
          type: string
          format: int64
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
        nanos:
          type: integer
          format: int32
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
      description: |-
        MicroTime is version of Time with microsecond level precision.

        +protobuf.options.marshal=false
        +protobuf.as=Timestamp
        +protobuf.options.(gogoproto.goproto_stringer)=false
    v1NFSVolumeSource:
      type: object
      properties:
        server:
          type: string
          title: |-
            server is the hostname or IP address of the NFS server.
            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
        path:
          type: string
          title: |-
            path that is exported by the NFS server.
            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs
        readOnly:
          type: boolean
          title: >-
            readOnly here will force the NFS export to be mounted with read-only
            permissions.

            Defaults to false.

            More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs

            +optional
      description: |-
        Represents an NFS mount that lasts the lifetime of a pod.
        NFS volumes do not support ownership management or SELinux relabeling.
    v1NewRelicMetric:
      type: object
      properties:
        profile:
          type: string
          title: Profile is the name of the secret holding NR account configuration
        query:
          type: string
          title: Query is a raw newrelic NRQL query to perform
      title: NewRelicMetric defines the newrelic query to perform canary analysis
    v1NodeAffinity:
      type: object
      properties:
        requiredDuringSchedulingIgnoredDuringExecution:
          $ref: '#/components/schemas/v1NodeSelector'
        preferredDuringSchedulingIgnoredDuringExecution:
          type: array
          items:
            $ref: '#/components/schemas/v1PreferredSchedulingTerm'
          title: >-
            The scheduler will prefer to schedule pods to nodes that satisfy

            the affinity expressions specified by this field, but it may choose

            a node that violates one or more of the expressions. The node that
            is

            most preferred is the one with the greatest sum of weights, i.e.

            for each node that meets all of the scheduling requirements
            (resource

            request, requiredDuringScheduling affinity expressions, etc.),

            compute a sum by iterating through the elements of this field and
            adding

            "weight" to the sum if the node matches the corresponding
            matchExpressions; the

            node(s) with the highest sum are the most preferred.

            +optional

            +listType=atomic
      description: Node affinity is a group of node affinity scheduling rules.
    v1NodeSelector:
      type: object
      properties:
        nodeSelectorTerms:
          type: array
          items:
            $ref: '#/components/schemas/v1NodeSelectorTerm'
          title: |-
            Required. A list of node selector terms. The terms are ORed.
            +listType=atomic
      title: >-
        A node selector represents the union of the results of one or more label
        queries

        over a set of nodes; that is, it represents the OR of the selectors
        represented

        by the node selector terms.

        +structType=atomic
    v1NodeSelectorRequirement:
      type: object
      properties:
        key:
          type: string
          description: The label key that the selector applies to.
        operator:
          type: string
          description: |-
            Represents a key's relationship to a set of values.
            Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
        values:
          type: array
          items:
            type: string
          title: >-
            An array of string values. If the operator is In or NotIn,

            the values array must be non-empty. If the operator is Exists or
            DoesNotExist,

            the values array must be empty. If the operator is Gt or Lt, the
            values

            array must have a single element, which will be interpreted as an
            integer.

            This array is replaced during a strategic merge patch.

            +optional

            +listType=atomic
      description: >-
        A node selector requirement is a selector that contains values, a key,
        and an operator

        that relates the key and values.
    v1NodeSelectorTerm:
      type: object
      properties:
        matchExpressions:
          type: array
          items:
            $ref: '#/components/schemas/v1NodeSelectorRequirement'
          title: |-
            A list of node selector requirements by node's labels.
            +optional
            +listType=atomic
        matchFields:
          type: array
          items:
            $ref: '#/components/schemas/v1NodeSelectorRequirement'
          title: |-
            A list of node selector requirements by node's fields.
            +optional
            +listType=atomic
      title: >-
        A null or empty node selector term matches no objects. The requirements
        of

        them are ANDed.

        The TopologySelectorTerm type implements a subset of the
        NodeSelectorTerm.

        +structType=atomic
    v1NodeSystemInfo:
      type: object
      properties:
        machineID:
          type: string
          title: |-
            MachineID reported by the node. For unique machine identification
            in the cluster this field is preferred. Learn more from man(5)
            machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html
        systemUUID:
          type: string
          title: >-
            SystemUUID reported by the node. For unique machine identification

            MachineID is preferred. This field is specific to Red Hat hosts

            https://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid
        bootID:
          type: string
          description: Boot ID reported by the node.
        kernelVersion:
          type: string
          description: >-
            Kernel Version reported by the node from 'uname -r' (e.g.
            3.16.0-0.bpo.4-amd64).
        osImage:
          type: string
          description: >-
            OS Image reported by the node from /etc/os-release (e.g. Debian
            GNU/Linux 7 (wheezy)).
        containerRuntimeVersion:
          type: string
          description: >-
            ContainerRuntime Version reported by the node through runtime remote
            API (e.g. containerd://1.4.2).
        kubeletVersion:
          type: string
          description: Kubelet Version reported by the node.
        kubeProxyVersion:
          type: string
          description: 'Deprecated: KubeProxy Version reported by the node.'
        operatingSystem:
          type: string
          title: The Operating System reported by the node
        architecture:
          type: string
          title: The Architecture reported by the node
      description: NodeSystemInfo is a set of ids/uuids to uniquely identify the node.
    v1OCIRepoType:
      type: object
      properties:
        repoURL:
          type: string
          description: OCI Repository URL.
    v1OCIRepoTypeResponse:
      type: object
      properties:
        ociRepoType:
          $ref: '#/components/schemas/OCIRepoTypeResponseOCIRepoTypeEnum'
    v1ObjectFieldSelector:
      type: object
      properties:
        apiVersion:
          type: string
          title: >-
            Version of the schema the FieldPath is written in terms of, defaults
            to "v1".

            +optional
        fieldPath:
          type: string
          description: Path of the field to select in the specified API version.
      title: |-
        ObjectFieldSelector selects an APIVersioned field of an object.
        +structType=atomic
    v1ObjectMeta:
      type: object
      properties:
        name:
          type: string
          title: >-
            Name must be unique within a namespace. Is required when creating
            resources, although

            some resources may allow a client to request the generation of an
            appropriate name

            automatically. Name is primarily intended for creation idempotence
            and configuration

            definition.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names

            +optional
        generateName:
          type: string
          description: >-
            GenerateName is an optional prefix, used by the server, to generate
            a unique

            name ONLY IF the Name field has not been provided.

            If this field is used, the name returned to the client will be
            different

            than the name passed. This value will also be combined with a unique
            suffix.

            The provided value has the same validation rules as the Name field,

            and may be truncated by the length of the suffix required to make
            the value

            unique on the server.


            If this field is specified and the generated name exists, the server
            will return a 409.


            Applied only if Name is not specified.

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency

            +optional
        namespace:
          type: string
          description: >-
            Namespace defines the space within which each name must be unique.
            An empty namespace is

            equivalent to the "default" namespace, but "default" is the
            canonical representation.

            Not all objects are required to be scoped to a namespace - the value
            of this field for

            those objects will be empty.


            Must be a DNS_LABEL.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces

            +optional
        selfLink:
          type: string
          title: >-
            Deprecated: selfLink is a legacy read-only field that is no longer
            populated by the system.

            +optional
        uid:
          type: string
          description: >-
            UID is the unique in time and space value for this object. It is
            typically generated by

            the server on successful creation of a resource and is not allowed
            to change on PUT

            operations.


            Populated by the system.

            Read-only.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids

            +optional
        resourceVersion:
          type: string
          description: >-
            An opaque value that represents the internal version of this object
            that can

            be used by clients to determine when objects have changed. May be
            used for optimistic

            concurrency, change detection, and the watch operation on a resource
            or set of resources.

            Clients must treat these values as opaque and passed unmodified back
            to the server.

            They may only be valid for a particular resource or set of
            resources.


            Populated by the system.

            Read-only.

            Value must be treated as opaque by clients and .

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency

            +optional
        generation:
          type: string
          format: int64
          title: >-
            A sequence number representing a specific generation of the desired
            state.

            Populated by the system. Read-only.

            +optional
        creationTimestamp:
          $ref: '#/components/schemas/v1Time'
        deletionTimestamp:
          $ref: '#/components/schemas/v1Time'
        deletionGracePeriodSeconds:
          type: string
          format: int64
          title: >-
            Number of seconds allowed for this object to gracefully terminate
            before

            it will be removed from the system. Only set when deletionTimestamp
            is also set.

            May only be shortened.

            Read-only.

            +optional
        labels:
          type: object
          additionalProperties:
            type: string
          title: >-
            Map of string keys and values that can be used to organize and
            categorize

            (scope and select) objects. May match selectors of replication
            controllers

            and services.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/labels

            +optional
        annotations:
          type: object
          additionalProperties:
            type: string
          title: >-
            Annotations is an unstructured key value map stored with a resource
            that may be

            set by external tools to store and retrieve arbitrary metadata. They
            are not

            queryable and should be preserved when modifying objects.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations

            +optional
        ownerReferences:
          type: array
          items:
            $ref: '#/components/schemas/v1OwnerReference'
          title: >-
            List of objects depended by this object. If ALL objects in the list
            have

            been deleted, this object will be garbage collected. If this object
            is managed by a controller,

            then an entry in this list will point to this controller, with the
            controller field set to true.

            There cannot be more than one managing controller.

            +optional

            +patchMergeKey=uid

            +patchStrategy=merge

            +listType=map

            +listMapKey=uid
        finalizers:
          type: array
          items:
            type: string
          title: >-
            Must be empty before the object is deleted from the registry. Each
            entry

            is an identifier for the responsible component that will remove the
            entry

            from the list. If the deletionTimestamp of the object is non-nil,
            entries

            in this list can only be removed.

            Finalizers may be processed and removed in any order.  Order is NOT
            enforced

            because it introduces significant risk of stuck finalizers.

            finalizers is a shared field, any actor with permission can reorder
            it.

            If the finalizer list is processed in order, then this can lead to a
            situation

            in which the component responsible for the first finalizer in the
            list is

            waiting for a signal (field value, external system, or other)
            produced by a

            component responsible for a finalizer later in the list, resulting
            in a deadlock.

            Without enforced ordering finalizers are free to order amongst
            themselves and

            are not vulnerable to ordering changes in the list.

            +optional

            +patchStrategy=merge

            +listType=set
        managedFields:
          type: array
          items:
            $ref: '#/components/schemas/v1ManagedFieldsEntry'
          description: |-
            ManagedFields maps workflow-id and version to the set of fields
            that are managed by that workflow. This is mostly for internal
            housekeeping, and users typically shouldn't need to set or
            understand this field. A workflow can be the user's name, a
            controller's name, or the name of a specific apply path like
            "ci-cd". The set of fields is always in the version that the
            workflow used when modifying the object.

            +optional
            +listType=atomic
      description: >-
        ObjectMeta is metadata that all persisted resources must have, which
        includes all objects

        users must create.
    v1OperationPhase:
      type: string
      enum:
        - OPERATION_PHASE_UNSET
        - RUNNING
        - FAILED
        - SUCCEEDED
      default: OPERATION_PHASE_UNSET
    v1OwnerReference:
      type: object
      properties:
        apiVersion:
          type: string
          description: API version of the referent.
        kind:
          type: string
          title: >-
            Kind of the referent.

            More info:
            https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
        name:
          type: string
          title: >-
            Name of the referent.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
        uid:
          type: string
          title: >-
            UID of the referent.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids
        controller:
          type: boolean
          title: |-
            If true, this reference points to the managing controller.
            +optional
        blockOwnerDeletion:
          type: boolean
          title: >-
            If true, AND if the owner has the "foregroundDeletion" finalizer,
            then

            the owner cannot be deleted from the key-value store until this

            reference is removed.

            See
            https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion

            for how the garbage collector interacts with this field and enforces
            the foreground deletion.

            Defaults to false.

            To set this field, a user needs "delete" permission of the owner,

            otherwise 422 (Unprocessable Entity) will be returned.

            +optional
      title: >-
        OwnerReference contains enough information to let you identify an owning

        object. An owning object must be in the same namespace as the dependent,
        or

        be cluster-scoped, so there is no namespace field.

        +structType=atomic
    v1PersistentVolumeClaimSpec:
      type: object
      properties:
        accessModes:
          type: array
          items:
            type: string
          title: >-
            accessModes contains the desired access modes the volume should
            have.

            More info:
            https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1

            +optional

            +listType=atomic
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        resources:
          $ref: '#/components/schemas/v1VolumeResourceRequirements'
        volumeName:
          type: string
          title: >-
            volumeName is the binding reference to the PersistentVolume backing
            this claim.

            +optional
        storageClassName:
          type: string
          title: >-
            storageClassName is the name of the StorageClass required by the
            claim.

            More info:
            https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1

            +optional
        volumeMode:
          type: string
          title: |-
            volumeMode defines what type of volume is required by the claim.
            Value of Filesystem is implied when not included in claim spec.
            +optional
        dataSource:
          $ref: '#/components/schemas/v1TypedLocalObjectReference'
        dataSourceRef:
          $ref: '#/components/schemas/v1TypedObjectReference'
        volumeAttributesClassName:
          type: string
          title: >-
            volumeAttributesClassName may be used to set the
            VolumeAttributesClass used by this claim.

            If specified, the CSI driver will create or update the volume with
            the attributes defined

            in the corresponding VolumeAttributesClass. This has a different
            purpose than storageClassName,

            it can be changed after the claim is created. An empty string value
            means that no VolumeAttributesClass

            will be applied to the claim but it's not allowed to reset this
            field to empty string once it is set.

            If unspecified and the PersistentVolumeClaim is unbound, the default
            VolumeAttributesClass

            will be set by the persistentvolume controller if it exists.

            If the resource referred to by volumeAttributesClass does not exist,
            this PersistentVolumeClaim will be

            set to a Pending state, as reflected by the modifyVolumeStatus
            field, until such as a resource

            exists.

            More info:
            https://kubernetes.io/docs/concepts/storage/volume-attributes-classes/

            (Beta) Using this field requires the VolumeAttributesClass feature
            gate to be enabled (off by default).

            +featureGate=VolumeAttributesClass

            +optional
      title: >-
        PersistentVolumeClaimSpec describes the common attributes of storage
        devices

        and allows a Source for provider-specific attributes
    v1PersistentVolumeClaimTemplate:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/v1PersistentVolumeClaimSpec'
      description: |-
        PersistentVolumeClaimTemplate is used to produce
        PersistentVolumeClaim objects as part of an EphemeralVolumeSource.
    v1PersistentVolumeClaimVolumeSource:
      type: object
      properties:
        claimName:
          type: string
          title: >-
            claimName is the name of a PersistentVolumeClaim in the same
            namespace as the pod using this volume.

            More info:
            https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
        readOnly:
          type: boolean
          title: |-
            readOnly Will force the ReadOnly setting in VolumeMounts.
            Default false.
            +optional
      description: >-
        PersistentVolumeClaimVolumeSource references the user's PVC in the same
        namespace.

        This volume finds the bound PV and mounts that volume for the pod. A

        PersistentVolumeClaimVolumeSource is, essentially, a wrapper around
        another

        type of volume that is owned by someone else (the system).
    v1PhotonPersistentDiskVolumeSource:
      type: object
      properties:
        pdID:
          type: string
          title: pdID is the ID that identifies Photon Controller persistent disk
        fsType:
          type: string
          description: >-
            fsType is the filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.
      description: Represents a Photon Controller persistent disk resource.
    v1PodAffinity:
      type: object
      properties:
        requiredDuringSchedulingIgnoredDuringExecution:
          type: array
          items:
            $ref: '#/components/schemas/v1PodAffinityTerm'
          title: >-
            If the affinity requirements specified by this field are not met at

            scheduling time, the pod will not be scheduled onto the node.

            If the affinity requirements specified by this field cease to be met

            at some point during pod execution (e.g. due to a pod label update),
            the

            system may or may not try to eventually evict the pod from its node.

            When there are multiple elements, the lists of nodes corresponding
            to each

            podAffinityTerm are intersected, i.e. all terms must be satisfied.

            +optional

            +listType=atomic
        preferredDuringSchedulingIgnoredDuringExecution:
          type: array
          items:
            $ref: '#/components/schemas/v1WeightedPodAffinityTerm'
          title: >-
            The scheduler will prefer to schedule pods to nodes that satisfy

            the affinity expressions specified by this field, but it may choose

            a node that violates one or more of the expressions. The node that
            is

            most preferred is the one with the greatest sum of weights, i.e.

            for each node that meets all of the scheduling requirements
            (resource

            request, requiredDuringScheduling affinity expressions, etc.),

            compute a sum by iterating through the elements of this field and
            adding

            "weight" to the sum if the node has pods which matches the
            corresponding podAffinityTerm; the

            node(s) with the highest sum are the most preferred.

            +optional

            +listType=atomic
      description: Pod affinity is a group of inter pod affinity scheduling rules.
    v1PodAffinityTerm:
      type: object
      properties:
        labelSelector:
          $ref: '#/components/schemas/v1LabelSelector'
        namespaces:
          type: array
          items:
            type: string
          title: >-
            namespaces specifies a static list of namespace names that the term
            applies to.

            The term is applied to the union of the namespaces listed in this
            field

            and the ones selected by namespaceSelector.

            null or empty namespaces list and null namespaceSelector means "this
            pod's namespace".

            +optional

            +listType=atomic
        topologyKey:
          type: string
          description: >-
            This pod should be co-located (affinity) or not co-located
            (anti-affinity) with the pods matching

            the labelSelector in the specified namespaces, where co-located is
            defined as running on a node

            whose value of the label with key topologyKey matches that of any
            node on which any of the

            selected pods is running.

            Empty topologyKey is not allowed.
        namespaceSelector:
          $ref: '#/components/schemas/v1LabelSelector'
        matchLabelKeys:
          type: array
          items:
            type: string
          description: >-
            MatchLabelKeys is a set of pod label keys to select which pods will

            be taken into consideration. The keys are used to lookup values from
            the

            incoming pod labels, those key-value labels are merged with
            `labelSelector` as `key in (value)`

            to select the group of existing pods which pods will be taken into
            consideration

            for the incoming pod's pod (anti) affinity. Keys that don't exist in
            the incoming

            pod labels will be ignored. The default value is empty.

            The same key is forbidden to exist in both matchLabelKeys and
            labelSelector.

            Also, matchLabelKeys cannot be set when labelSelector isn't set.

            This is a beta field and requires enabling
            MatchLabelKeysInPodAffinity feature gate (enabled by default).


            +listType=atomic

            +optional
        mismatchLabelKeys:
          type: array
          items:
            type: string
          description: >-
            MismatchLabelKeys is a set of pod label keys to select which pods
            will

            be taken into consideration. The keys are used to lookup values from
            the

            incoming pod labels, those key-value labels are merged with
            `labelSelector` as `key notin (value)`

            to select the group of existing pods which pods will be taken into
            consideration

            for the incoming pod's pod (anti) affinity. Keys that don't exist in
            the incoming

            pod labels will be ignored. The default value is empty.

            The same key is forbidden to exist in both mismatchLabelKeys and
            labelSelector.

            Also, mismatchLabelKeys cannot be set when labelSelector isn't set.

            This is a beta field and requires enabling
            MatchLabelKeysInPodAffinity feature gate (enabled by default).


            +listType=atomic

            +optional
      title: |-
        Defines a set of pods (namely those matching the labelSelector
        relative to the given namespace(s)) that this pod should be
        co-located (affinity) or not co-located (anti-affinity) with,
        where co-located is defined as running on a node whose value of
        the label with key <topologyKey> matches that of any node on which
        a pod of the set of pods is running
    v1PodAntiAffinity:
      type: object
      properties:
        requiredDuringSchedulingIgnoredDuringExecution:
          type: array
          items:
            $ref: '#/components/schemas/v1PodAffinityTerm'
          title: >-
            If the anti-affinity requirements specified by this field are not
            met at

            scheduling time, the pod will not be scheduled onto the node.

            If the anti-affinity requirements specified by this field cease to
            be met

            at some point during pod execution (e.g. due to a pod label update),
            the

            system may or may not try to eventually evict the pod from its node.

            When there are multiple elements, the lists of nodes corresponding
            to each

            podAffinityTerm are intersected, i.e. all terms must be satisfied.

            +optional

            +listType=atomic
        preferredDuringSchedulingIgnoredDuringExecution:
          type: array
          items:
            $ref: '#/components/schemas/v1WeightedPodAffinityTerm'
          title: >-
            The scheduler will prefer to schedule pods to nodes that satisfy

            the anti-affinity expressions specified by this field, but it may
            choose

            a node that violates one or more of the expressions. The node that
            is

            most preferred is the one with the greatest sum of weights, i.e.

            for each node that meets all of the scheduling requirements
            (resource

            request, requiredDuringScheduling anti-affinity expressions, etc.),

            compute a sum by iterating through the elements of this field and
            adding

            "weight" to the sum if the node has pods which matches the
            corresponding podAffinityTerm; the

            node(s) with the highest sum are the most preferred.

            +optional

            +listType=atomic
      description: >-
        Pod anti affinity is a group of inter pod anti affinity scheduling
        rules.
    v1PodDNSConfig:
      type: object
      properties:
        nameservers:
          type: array
          items:
            type: string
          title: >-
            A list of DNS name server IP addresses.

            This will be appended to the base nameservers generated from
            DNSPolicy.

            Duplicated nameservers will be removed.

            +optional

            +listType=atomic
        searches:
          type: array
          items:
            type: string
          title: >-
            A list of DNS search domains for host-name lookup.

            This will be appended to the base search paths generated from
            DNSPolicy.

            Duplicated search paths will be removed.

            +optional

            +listType=atomic
        options:
          type: array
          items:
            $ref: '#/components/schemas/v1PodDNSConfigOption'
          title: >-
            A list of DNS resolver options.

            This will be merged with the base options generated from DNSPolicy.

            Duplicated entries will be removed. Resolution options given in
            Options

            will override those that appear in the base DNSPolicy.

            +optional

            +listType=atomic
      description: |-
        PodDNSConfig defines the DNS parameters of a pod in addition to
        those generated from DNSPolicy.
    v1PodDNSConfigOption:
      type: object
      properties:
        name:
          type: string
          description: |-
            Name is this DNS resolver option's name.
            Required.
        value:
          type: string
          title: |-
            Value is this DNS resolver option's value.
            +optional
      description: PodDNSConfigOption defines DNS resolver options of a pod.
    v1PodFailurePolicy:
      type: object
      properties:
        rules:
          type: array
          items:
            $ref: '#/components/schemas/v1PodFailurePolicyRule'
          title: >-
            A list of pod failure policy rules. The rules are evaluated in
            order.

            Once a rule matches a Pod failure, the remaining of the rules are
            ignored.

            When no rule matches the Pod failure, the default handling applies -
            the

            counter of pod failures is incremented and it is checked against

            the backoffLimit. At most 20 elements are allowed.

            +listType=atomic
      description: PodFailurePolicy describes how failed pods influence the backoffLimit.
    v1PodFailurePolicyOnExitCodesRequirement:
      type: object
      properties:
        containerName:
          type: string
          title: |-
            Restricts the check for exit codes to the container with the
            specified name. When null, the rule applies to all containers.
            When specified, it should match one the container or initContainer
            names in the pod template.
            +optional
        operator:
          type: string
          description: >-
            - In: the requirement is satisfied if at least one container exit
            code
              (might be multiple if there are multiple containers not restricted
              by the 'containerName' field) is in the set of specified values.
            - NotIn: the requirement is satisfied if at least one container exit
            code
              (might be multiple if there are multiple containers not restricted
              by the 'containerName' field) is not in the set of specified values.
            Additional values are considered to be added in the future. Clients
            should

            react to an unknown operator by assuming the requirement is not
            satisfied.
          title: >-
            Represents the relationship between the container exit code(s) and
            the

            specified values. Containers completed with success (exit code 0)
            are

            excluded from the requirement check. Possible values are:
        values:
          type: array
          items:
            type: integer
            format: int32
          title: >-
            Specifies the set of values. Each returned container exit code
            (might be

            multiple in case of multiple containers) is checked against this set
            of

            values with respect to the operator. The list of values must be
            ordered

            and must not contain duplicates. Value '0' cannot be used for the In
            operator.

            At least one element is required. At most 255 elements are allowed.

            +listType=set
      description: >-
        PodFailurePolicyOnExitCodesRequirement describes the requirement for
        handling

        a failed pod based on its container exit codes. In particular, it
        lookups the

        .state.terminated.exitCode for each app container and init container
        status,

        represented by the .status.containerStatuses and
        .status.initContainerStatuses

        fields in the Pod status, respectively. Containers completed with
        success

        (exit code 0) are excluded from the requirement check.
    v1PodFailurePolicyOnPodConditionsPattern:
      type: object
      properties:
        type:
          type: string
          description: |-
            Specifies the required Pod condition type. To match a pod condition
            it is required that specified type equals the pod condition type.
        status:
          type: string
          description: >-
            Specifies the required Pod condition status. To match a pod
            condition

            it is required that the specified status equals the pod condition
            status.

            Defaults to True.
      description: |-
        PodFailurePolicyOnPodConditionsPattern describes a pattern for matching
        an actual pod condition type.
    v1PodFailurePolicyRule:
      type: object
      properties:
        action:
          type: string
          description: >-
            - FailJob: indicates that the pod's job is marked as Failed and all
              running pods are terminated.
            - FailIndex: indicates that the pod's index is marked as Failed and
            will
              not be restarted.
              This value is beta-level. It can be used when the
              `JobBackoffLimitPerIndex` feature gate is enabled (enabled by default).
            - Ignore: indicates that the counter towards the .backoffLimit is
            not
              incremented and a replacement pod is created.
            - Count: indicates that the pod is handled in the default way - the
              counter towards the .backoffLimit is incremented.
            Additional values are considered to be added in the future. Clients
            should

            react to an unknown action by skipping the rule.
          title: >-
            Specifies the action taken on a pod failure when the requirements
            are satisfied.

            Possible values are:
        onExitCodes:
          $ref: '#/components/schemas/v1PodFailurePolicyOnExitCodesRequirement'
        onPodConditions:
          type: array
          items:
            $ref: '#/components/schemas/v1PodFailurePolicyOnPodConditionsPattern'
          title: >-
            Represents the requirement on the pod conditions. The requirement is
            represented

            as a list of pod condition patterns. The requirement is satisfied if
            at

            least one pattern matches an actual pod condition. At most 20
            elements are allowed.

            +listType=atomic

            +optional
      description: >-
        PodFailurePolicyRule describes how a pod failure is handled when the
        requirements are met.

        One of onExitCodes and onPodConditions, but not both, can be used in
        each rule.
    v1PodOS:
      type: object
      properties:
        name:
          type: string
          title: >-
            Name is the name of the operating system. The currently supported
            values are linux and windows.

            Additional value may be defined in future and can be one of:

            https://github.com/opencontainers/runtime-spec/blob/master/config.md#platform-specific-configuration

            Clients should expect to handle additional values and treat
            unrecognized values in this field as os: null
      description: PodOS defines the OS parameters of a pod.
    v1PodReadinessGate:
      type: object
      properties:
        conditionType:
          type: string
          description: >-
            ConditionType refers to a condition in the pod's condition list with
            matching type.
      title: PodReadinessGate contains the reference to a pod condition
    v1PodResourceClaim:
      type: object
      properties:
        name:
          type: string
          description: |-
            Name uniquely identifies this resource claim inside the pod.
            This must be a DNS_LABEL.
        resourceClaimName:
          type: string
          description: |-
            ResourceClaimName is the name of a ResourceClaim object in the same
            namespace as this pod.

            Exactly one of ResourceClaimName and ResourceClaimTemplateName must
            be set.
        resourceClaimTemplateName:
          type: string
          description: >-
            ResourceClaimTemplateName is the name of a ResourceClaimTemplate

            object in the same namespace as this pod.


            The template will be used to create a new ResourceClaim, which will

            be bound to this pod. When this pod is deleted, the ResourceClaim

            will also be deleted. The pod name and resource name, along with a

            generated component, will be used to form a unique name for the

            ResourceClaim, which will be recorded in
            pod.status.resourceClaimStatuses.


            This field is immutable and no changes will be made to the

            corresponding ResourceClaim by the control plane after creating the

            ResourceClaim.


            Exactly one of ResourceClaimName and ResourceClaimTemplateName must

            be set.
      description: >-
        PodResourceClaim references exactly one ResourceClaim, either directly

        or by naming a ResourceClaimTemplate which is then turned into a
        ResourceClaim

        for the pod.


        It adds a name to it that uniquely identifies the ResourceClaim inside
        the Pod.

        Containers that need access to the ResourceClaim reference it with this
        name.
    v1PodSchedulingGate:
      type: object
      properties:
        name:
          type: string
          description: |-
            Name of the scheduling gate.
            Each scheduling gate must have a unique name field.
      description: PodSchedulingGate is associated to a Pod to guard its scheduling.
    v1PodSecurityContext:
      type: object
      properties:
        seLinuxOptions:
          $ref: '#/components/schemas/v1SELinuxOptions'
        windowsOptions:
          $ref: '#/components/schemas/v1WindowsSecurityContextOptions'
        runAsUser:
          type: string
          format: int64
          title: >-
            The UID to run the entrypoint of the container process.

            Defaults to user specified in image metadata if unspecified.

            May also be set in SecurityContext.  If set in both SecurityContext
            and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence

            for that container.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        runAsGroup:
          type: string
          format: int64
          title: >-
            The GID to run the entrypoint of the container process.

            Uses runtime default if unset.

            May also be set in SecurityContext.  If set in both SecurityContext
            and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence

            for that container.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        runAsNonRoot:
          type: boolean
          title: >-
            Indicates that the container must run as a non-root user.

            If true, the Kubelet will validate the image at runtime to ensure
            that it

            does not run as UID 0 (root) and fail to start the container if it
            does.

            If unset or false, no such validation will be performed.

            May also be set in SecurityContext.  If set in both SecurityContext
            and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence.

            +optional
        supplementalGroups:
          type: array
          items:
            type: string
            format: int64
          title: >-
            A list of groups applied to the first process run in each container,
            in

            addition to the container's primary GID and fsGroup (if specified). 
            If

            the SupplementalGroupsPolicy feature is enabled, the

            supplementalGroupsPolicy field determines whether these are in
            addition

            to or instead of any group memberships defined in the container
            image.

            If unspecified, no additional groups are added, though group
            memberships

            defined in the container image may still be used, depending on the

            supplementalGroupsPolicy field.

            Note that this field cannot be set when spec.os.name is windows.

            +optional

            +listType=atomic
        supplementalGroupsPolicy:
          type: string
          title: >-
            Defines how supplemental groups of the first container processes are
            calculated.

            Valid values are "Merge" and "Strict". If not specified, "Merge" is
            used.

            (Alpha) Using the field requires the SupplementalGroupsPolicy
            feature gate to be enabled

            and the container runtime must implement support for this feature.

            Note that this field cannot be set when spec.os.name is windows.

            TODO: update the default value to "Merge" when spec.os.name is not
            windows in v1.34

            +featureGate=SupplementalGroupsPolicy

            +optional
        fsGroup:
          type: string
          format: int64
          description: >-
            1. The owning GID will be the FSGroup

            2. The setgid bit is set (new files created in the volume will be
            owned by FSGroup)

            3. The permission bits are OR'd with rw-rw----


            If unset, the Kubelet will not modify the ownership and permissions
            of any volume.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
          title: >-
            A special supplemental group that applies to all containers in a
            pod.

            Some volume types allow the Kubelet to change the ownership of that
            volume

            to be owned by the pod:
        sysctls:
          type: array
          items:
            $ref: '#/components/schemas/v1Sysctl'
          title: >-
            Sysctls hold a list of namespaced sysctls used for the pod. Pods
            with unsupported

            sysctls (by the container runtime) might fail to launch.

            Note that this field cannot be set when spec.os.name is windows.

            +optional

            +listType=atomic
        fsGroupChangePolicy:
          type: string
          title: >-
            fsGroupChangePolicy defines behavior of changing ownership and
            permission of the volume

            before being exposed inside Pod. This field will only apply to

            volume types which support fsGroup based ownership(and permissions).

            It will have no effect on ephemeral volume types such as: secret,
            configmaps

            and emptydir.

            Valid values are "OnRootMismatch" and "Always". If not specified,
            "Always" is used.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        seccompProfile:
          $ref: '#/components/schemas/v1SeccompProfile'
        appArmorProfile:
          $ref: '#/components/schemas/v1AppArmorProfile'
        seLinuxChangePolicy:
          type: string
          description: >-
            seLinuxChangePolicy defines how the container's SELinux label is
            applied to all volumes used by the Pod.

            It has no effect on nodes that do not support SELinux or to volumes
            does not support SELinux.

            Valid values are "MountOption" and "Recursive".


            "Recursive" means relabeling of all files on all Pod volumes by the
            container runtime.

            This may be slow for large volumes, but allows mixing privileged and
            unprivileged Pods sharing the same volume on the same node.


            "MountOption" mounts all eligible Pod volumes with `-o context`
            mount option.

            This requires all Pods that share the same volume to use the same
            SELinux label.

            It is not possible to share the same volume among privileged and
            unprivileged Pods.

            Eligible volumes are in-tree FibreChannel and iSCSI volumes, and all
            CSI volumes

            whose CSI driver announces SELinux support by setting
            spec.seLinuxMount: true in their

            CSIDriver instance. Other volumes are always re-labelled
            recursively.

            "MountOption" value is allowed only when SELinuxMount feature gate
            is enabled.


            If not specified and SELinuxMount feature gate is enabled,
            "MountOption" is used.

            If not specified and SELinuxMount feature gate is disabled,
            "MountOption" is used for ReadWriteOncePod volumes

            and "Recursive" for all other volumes.


            This field affects only Pods that have SELinux label set, either in
            PodSecurityContext or in SecurityContext of all containers.


            All Pods that use the same volume should use the same
            seLinuxChangePolicy, otherwise some pods can get stuck in
            ContainerCreating state.

            Note that this field cannot be set when spec.os.name is windows.

            +featureGate=SELinuxChangePolicy

            +optional
      description: >-
        PodSecurityContext holds pod-level security attributes and common
        container settings.

        Some fields are also present in container.securityContext.  Field values
        of

        container.securityContext take precedence over field values of
        PodSecurityContext.
    v1PodSpec:
      type: object
      properties:
        volumes:
          type: array
          items:
            $ref: '#/components/schemas/v1Volume'
          title: >-
            List of volumes that can be mounted by containers belonging to the
            pod.

            More info: https://kubernetes.io/docs/concepts/storage/volumes

            +optional

            +patchMergeKey=name

            +patchStrategy=merge,retainKeys

            +listType=map

            +listMapKey=name
        initContainers:
          type: array
          items:
            $ref: '#/components/schemas/v1Container'
          title: >-
            List of initialization containers belonging to the pod.

            Init containers are executed in order prior to containers being
            started. If any

            init container fails, the pod is considered to have failed and is
            handled according

            to its restartPolicy. The name for an init container or normal
            container must be

            unique among all containers.

            Init containers may not have Lifecycle actions, Readiness probes,
            Liveness probes, or Startup probes.

            The resourceRequirements of an init container are taken into account
            during scheduling

            by finding the highest request/limit for each resource type, and
            then using the max of

            of that value or the sum of the normal containers. Limits are
            applied to init containers

            in a similar fashion.

            Init containers cannot currently be added or removed.

            Cannot be updated.

            More info:
            https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

            +patchMergeKey=name

            +patchStrategy=merge

            +listType=map

            +listMapKey=name
        containers:
          type: array
          items:
            $ref: '#/components/schemas/v1Container'
          title: |-
            List of containers belonging to the pod.
            Containers cannot currently be added or removed.
            There must be at least one container in a Pod.
            Cannot be updated.
            +patchMergeKey=name
            +patchStrategy=merge
            +listType=map
            +listMapKey=name
        ephemeralContainers:
          type: array
          items:
            $ref: '#/components/schemas/v1EphemeralContainer'
          title: >-
            List of ephemeral containers run in this pod. Ephemeral containers
            may be run in an existing

            pod to perform user-initiated actions such as debugging. This list
            cannot be specified when

            creating a pod, and it cannot be modified by updating the pod spec.
            In order to add an

            ephemeral container to an existing pod, use the pod's
            ephemeralcontainers subresource.

            +optional

            +patchMergeKey=name

            +patchStrategy=merge

            +listType=map

            +listMapKey=name
        restartPolicy:
          type: string
          title: >-
            Restart policy for all containers within the pod.

            One of Always, OnFailure, Never. In some contexts, only a subset of
            those values may be permitted.

            Default to Always.

            More info:
            https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy

            +optional
        terminationGracePeriodSeconds:
          type: string
          format: int64
          title: >-
            Optional duration in seconds the pod needs to terminate gracefully.
            May be decreased in delete request.

            Value must be non-negative integer. The value zero indicates stop
            immediately via

            the kill signal (no opportunity to shut down).

            If this value is nil, the default grace period will be used instead.

            The grace period is the duration in seconds after the processes
            running in the pod are sent

            a termination signal and the time when the processes are forcibly
            halted with a kill signal.

            Set this value longer than the expected cleanup time for your
            process.

            Defaults to 30 seconds.

            +optional
        activeDeadlineSeconds:
          type: string
          format: int64
          title: >-
            Optional duration in seconds the pod may be active on the node
            relative to

            StartTime before the system will actively try to mark it failed and
            kill associated containers.

            Value must be a positive integer.

            +optional
        dnsPolicy:
          type: string
          title: >-
            Set DNS policy for the pod.

            Defaults to "ClusterFirst".

            Valid values are 'ClusterFirstWithHostNet', 'ClusterFirst',
            'Default' or 'None'.

            DNS parameters given in DNSConfig will be merged with the policy
            selected with DNSPolicy.

            To have DNS options set along with hostNetwork, you have to specify
            DNS policy

            explicitly to 'ClusterFirstWithHostNet'.

            +optional
        nodeSelector:
          type: object
          additionalProperties:
            type: string
          title: >-
            NodeSelector is a selector which must be true for the pod to fit on
            a node.

            Selector which must match a node's labels for the pod to be
            scheduled on that node.

            More info:
            https://kubernetes.io/docs/concepts/configuration/assign-pod-node/

            +optional

            +mapType=atomic
        serviceAccountName:
          type: string
          title: >-
            ServiceAccountName is the name of the ServiceAccount to use to run
            this pod.

            More info:
            https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/

            +optional
        serviceAccount:
          type: string
          title: >-
            DeprecatedServiceAccount is a deprecated alias for
            ServiceAccountName.

            Deprecated: Use serviceAccountName instead.

            +k8s:conversion-gen=false

            +optional
        automountServiceAccountToken:
          type: boolean
          title: >-
            AutomountServiceAccountToken indicates whether a service account
            token should be automatically mounted.

            +optional
        nodeName:
          type: string
          title: >-
            NodeName indicates in which node this pod is scheduled.

            If empty, this pod is a candidate for scheduling by the scheduler
            defined in schedulerName.

            Once this field is set, the kubelet for this node becomes
            responsible for the lifecycle of this pod.

            This field should not be used to express a desire for the pod to be
            scheduled on a specific node.

            https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodename

            +optional
        hostNetwork:
          type: boolean
          title: >-
            Host networking requested for this pod. Use the host's network
            namespace.

            If this option is set, the ports that will be used must be
            specified.

            Default to false.

            +k8s:conversion-gen=false

            +optional
        hostPID:
          type: boolean
          title: |-
            Use the host's pid namespace.
            Optional: Default to false.
            +k8s:conversion-gen=false
            +optional
        hostIPC:
          type: boolean
          title: |-
            Use the host's ipc namespace.
            Optional: Default to false.
            +k8s:conversion-gen=false
            +optional
        shareProcessNamespace:
          type: boolean
          title: >-
            Share a single process namespace between all of the containers in a
            pod.

            When this is set containers will be able to view and signal
            processes from other containers

            in the same pod, and the first process in each container will not be
            assigned PID 1.

            HostPID and ShareProcessNamespace cannot both be set.

            Optional: Default to false.

            +k8s:conversion-gen=false

            +optional
        securityContext:
          $ref: '#/components/schemas/v1PodSecurityContext'
        imagePullSecrets:
          type: array
          items:
            $ref: '#/components/schemas/v1LocalObjectReference'
          title: >-
            ImagePullSecrets is an optional list of references to secrets in the
            same namespace to use for pulling any of the images used by this
            PodSpec.

            If specified, these secrets will be passed to individual puller
            implementations for them to use.

            More info:
            https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod

            +optional

            +patchMergeKey=name

            +patchStrategy=merge

            +listType=map

            +listMapKey=name
        hostname:
          type: string
          title: >-
            Specifies the hostname of the Pod

            If not specified, the pod's hostname will be set to a system-defined
            value.

            +optional
        subdomain:
          type: string
          title: >-
            If specified, the fully qualified Pod hostname will be
            "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>".

            If not specified, the pod will not have a domainname at all.

            +optional
        affinity:
          $ref: '#/components/schemas/v1Affinity'
        schedulerName:
          type: string
          title: |-
            If specified, the pod will be dispatched by specified scheduler.
            If not specified, the pod will be dispatched by default scheduler.
            +optional
        tolerations:
          type: array
          items:
            $ref: '#/components/schemas/v1Toleration'
          title: |-
            If specified, the pod's tolerations.
            +optional
            +listType=atomic
        hostAliases:
          type: array
          items:
            $ref: '#/components/schemas/v1HostAlias'
          title: >-
            HostAliases is an optional list of hosts and IPs that will be
            injected into the pod's hosts

            file if specified.

            +optional

            +patchMergeKey=ip

            +patchStrategy=merge

            +listType=map

            +listMapKey=ip
        priorityClassName:
          type: string
          title: >-
            If specified, indicates the pod's priority. "system-node-critical"
            and

            "system-cluster-critical" are two special keywords which indicate
            the

            highest priorities with the former being the highest priority. Any
            other

            name must be defined by creating a PriorityClass object with that
            name.

            If not specified, the pod priority will be default or zero if there
            is no

            default.

            +optional
        priority:
          type: integer
          format: int32
          title: >-
            The priority value. Various system components use this field to find
            the

            priority of the pod. When Priority Admission Controller is enabled,
            it

            prevents users from setting this field. The admission controller
            populates

            this field from PriorityClassName.

            The higher the value, the higher the priority.

            +optional
        dnsConfig:
          $ref: '#/components/schemas/v1PodDNSConfig'
        readinessGates:
          type: array
          items:
            $ref: '#/components/schemas/v1PodReadinessGate'
          title: >-
            If specified, all readiness gates will be evaluated for pod
            readiness.

            A pod is ready when all its containers are ready AND

            all conditions specified in the readiness gates have status equal to
            "True"

            More info:
            https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates

            +optional

            +listType=atomic
        runtimeClassName:
          type: string
          title: >-
            RuntimeClassName refers to a RuntimeClass object in the node.k8s.io
            group, which should be used

            to run this pod.  If no RuntimeClass resource matches the named
            class, the pod will not be run.

            If unset or empty, the "legacy" RuntimeClass will be used, which is
            an implicit class with an

            empty definition that uses the default runtime handler.

            More info:
            https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class

            +optional
        enableServiceLinks:
          type: boolean
          title: >-
            EnableServiceLinks indicates whether information about services
            should be injected into pod's

            environment variables, matching the syntax of Docker links.

            Optional: Defaults to true.

            +optional
        preemptionPolicy:
          type: string
          title: >-
            PreemptionPolicy is the Policy for preempting pods with lower
            priority.

            One of Never, PreemptLowerPriority.

            Defaults to PreemptLowerPriority if unset.

            +optional
        overhead:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/resourceQuantity'
          title: >-
            Overhead represents the resource overhead associated with running a
            pod for a given RuntimeClass.

            This field will be autopopulated at admission time by the
            RuntimeClass admission controller. If

            the RuntimeClass admission controller is enabled, overhead must not
            be set in Pod create requests.

            The RuntimeClass admission controller will reject Pod create
            requests which have the overhead already

            set. If RuntimeClass is configured and selected in the PodSpec,
            Overhead will be set to the value

            defined in the corresponding RuntimeClass, otherwise it will remain
            unset and treated as zero.

            More info:
            https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md

            +optional
        topologySpreadConstraints:
          type: array
          items:
            $ref: '#/components/schemas/v1TopologySpreadConstraint'
          title: >-
            TopologySpreadConstraints describes how a group of pods ought to
            spread across topology

            domains. Scheduler will schedule pods in a way which abides by the
            constraints.

            All topologySpreadConstraints are ANDed.

            +optional

            +patchMergeKey=topologyKey

            +patchStrategy=merge

            +listType=map

            +listMapKey=topologyKey

            +listMapKey=whenUnsatisfiable
        setHostnameAsFQDN:
          type: boolean
          title: >-
            If true the pod's hostname will be configured as the pod's FQDN,
            rather than the leaf name (the default).

            In Linux containers, this means setting the FQDN in the hostname
            field of the kernel (the nodename field of struct utsname).

            In Windows containers, this means setting the registry value of
            hostname for the registry key
            HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters
            to FQDN.

            If a pod does not have FQDN, this has no effect.

            Default to false.

            +optional
        os:
          $ref: '#/components/schemas/v1PodOS'
        hostUsers:
          type: boolean
          title: >-
            Use the host's user namespace.

            Optional: Default to true.

            If set to true or not present, the pod will be run in the host user
            namespace, useful

            for when the pod needs a feature only available to the host user
            namespace, such as

            loading a kernel module with CAP_SYS_MODULE.

            When set to false, a new userns is created for the pod. Setting
            false is useful for

            mitigating container breakout vulnerabilities even allowing users to
            run their

            containers as root without actually having root privileges on the
            host.

            This field is alpha-level and is only honored by servers that enable
            the UserNamespacesSupport feature.

            +k8s:conversion-gen=false

            +optional
        schedulingGates:
          type: array
          items:
            $ref: '#/components/schemas/v1PodSchedulingGate'
          description: >-
            SchedulingGates is an opaque list of values that if specified will
            block scheduling the pod.

            If schedulingGates is not empty, the pod will stay in the
            SchedulingGated state and the

            scheduler will not attempt to schedule the pod.


            SchedulingGates can only be set at pod creation time, and be removed
            only afterwards.


            +patchMergeKey=name

            +patchStrategy=merge

            +listType=map

            +listMapKey=name

            +optional
        resourceClaims:
          type: array
          items:
            $ref: '#/components/schemas/v1PodResourceClaim'
          description: |-
            ResourceClaims defines which ResourceClaims must be allocated
            and reserved before the Pod is allowed to start. The resources
            will be made available to those containers which consume them
            by name.

            This is an alpha field and requires enabling the
            DynamicResourceAllocation feature gate.

            This field is immutable.

            +patchMergeKey=name
            +patchStrategy=merge,retainKeys
            +listType=map
            +listMapKey=name
            +featureGate=DynamicResourceAllocation
            +optional
        resources:
          $ref: '#/components/schemas/v1ResourceRequirements'
      description: PodSpec is a description of a pod.
    v1PodTemplateMetadata:
      type: object
      properties:
        labels:
          type: object
          additionalProperties:
            type: string
          title: |-
            Labels Additional labels to add to the experiment
            +optional
        annotations:
          type: object
          additionalProperties:
            type: string
          title: |-
            Annotations additional annotations to add to the experiment
            +optional
      title: PodTemplateMetadata extra labels to add to the template
    v1PodTemplateSpec:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        spec:
          $ref: '#/components/schemas/v1PodSpec'
      title: >-
        PodTemplateSpec describes the data a pod should have when created from a
        template
    v1PortStatus:
      type: object
      properties:
        port:
          type: integer
          format: int32
          title: >-
            Port is the port number of the service port of which status is
            recorded here
        protocol:
          type: string
          title: >-
            Protocol is the protocol of the service port of which status is
            recorded here

            The supported values are: "TCP", "UDP", "SCTP"
        error:
          type: string
          title: >-
            Error is to record the problem with the service port

            The format of the error shall comply with the following rules:

            - built-in error values shall be specified in this file and those
            shall use
              CamelCase names
            - cloud provider specific error values must have names that comply
            with the
              format foo.example.com/CamelCase.
            ---

            The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)

            +optional

            +kubebuilder:validation:Required

            +kubebuilder:validation:Pattern=`^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$`

            +kubebuilder:validation:MaxLength=316
      title: PortStatus represents the error condition of a service port
    v1PortworxVolumeSource:
      type: object
      properties:
        volumeID:
          type: string
          title: volumeID uniquely identifies a Portworx volume
        fsType:
          type: string
          description: |-
            fSType represents the filesystem type to mount
            Must be a filesystem type supported by the host operating system.
            Ex. "ext4", "xfs". Implicitly inferred to be "ext4" if unspecified.
        readOnly:
          type: boolean
          title: |-
            readOnly defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            +optional
      description: PortworxVolumeSource represents a Portworx volume resource.
    v1PreferredSchedulingTerm:
      type: object
      properties:
        weight:
          type: integer
          format: int32
          description: >-
            Weight associated with matching the corresponding nodeSelectorTerm,
            in the range 1-100.
        preference:
          $ref: '#/components/schemas/v1NodeSelectorTerm'
      description: >-
        An empty preferred scheduling term matches all objects with implicit
        weight 0

        (i.e. it's a no-op). A null preferred scheduling term matches no objects
        (i.e. is also a no-op).
    v1Probe:
      type: object
      properties:
        handler:
          $ref: '#/components/schemas/v1ProbeHandler'
        initialDelaySeconds:
          type: integer
          format: int32
          title: >-
            Number of seconds after the container has started before liveness
            probes are initiated.

            More info:
            https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

            +optional
        timeoutSeconds:
          type: integer
          format: int32
          title: >-
            Number of seconds after which the probe times out.

            Defaults to 1 second. Minimum value is 1.

            More info:
            https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes

            +optional
        periodSeconds:
          type: integer
          format: int32
          title: |-
            How often (in seconds) to perform the probe.
            Default to 10 seconds. Minimum value is 1.
            +optional
        successThreshold:
          type: integer
          format: int32
          title: >-
            Minimum consecutive successes for the probe to be considered
            successful after having failed.

            Defaults to 1. Must be 1 for liveness and startup. Minimum value is
            1.

            +optional
        failureThreshold:
          type: integer
          format: int32
          title: >-
            Minimum consecutive failures for the probe to be considered failed
            after having succeeded.

            Defaults to 3. Minimum value is 1.

            +optional
        terminationGracePeriodSeconds:
          type: string
          format: int64
          title: >-
            Optional duration in seconds the pod needs to terminate gracefully
            upon probe failure.

            The grace period is the duration in seconds after the processes
            running in the pod are sent

            a termination signal and the time when the processes are forcibly
            halted with a kill signal.

            Set this value longer than the expected cleanup time for your
            process.

            If this value is nil, the pod's terminationGracePeriodSeconds will
            be used. Otherwise, this

            value overrides the value provided by the pod spec.

            Value must be non-negative integer. The value zero indicates stop
            immediately via

            the kill signal (no opportunity to shut down).

            This is a beta field and requires enabling
            ProbeTerminationGracePeriod feature gate.

            Minimum value is 1. spec.terminationGracePeriodSeconds is used if
            unset.

            +optional
      description: >-
        Probe describes a health check to be performed against a container to
        determine whether it is

        alive or ready to receive traffic.
    v1ProbeHandler:
      type: object
      properties:
        exec:
          $ref: '#/components/schemas/v1ExecAction'
        httpGet:
          $ref: '#/components/schemas/v1HTTPGetAction'
        tcpSocket:
          $ref: '#/components/schemas/v1TCPSocketAction'
        grpc:
          $ref: '#/components/schemas/v1GRPCAction'
      description: |-
        ProbeHandler defines a specific action that should be taken in a probe.
        One and only one of the fields must be specified.
    v1ProjectedVolumeSource:
      type: object
      properties:
        sources:
          type: array
          items:
            $ref: '#/components/schemas/v1VolumeProjection'
          title: |-
            sources is the list of volume projections. Each entry in this list
            handles one source.
            +optional
            +listType=atomic
        defaultMode:
          type: integer
          format: int32
          title: >-
            defaultMode are the mode bits used to set permissions on created
            files by default.

            Must be an octal value between 0000 and 0777 or a decimal value
            between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values for mode bits.

            Directories within the path are not affected by this setting.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
      title: Represents a projected volume source
    v1PrometheusAuth:
      type: object
      properties:
        sigv4:
          $ref: '#/components/schemas/v1Sigv4Config'
      title: PrometheusMetric defines the prometheus query to perform canary analysis
    v1PrometheusMetric:
      type: object
      properties:
        address:
          type: string
          title: Address is the HTTP address and port of the prometheus server
        query:
          type: string
          title: Query is a raw prometheus query to perform
        authentication:
          $ref: '#/components/schemas/v1PrometheusAuth'
        timeout:
          type: string
          format: int64
          title: >-
            Timeout represents the duration within which a prometheus query
            should complete. It is expressed in seconds.

            +optional
        insecure:
          type: boolean
          title: Insecure skips host TLS verification
        headers:
          type: array
          items:
            $ref: '#/components/schemas/v1WebMetricHeader'
          title: |-
            Headers are HTTP headers to use in the request
            +optional
            +patchMergeKey=key
            +patchStrategy=merge
      title: PrometheusMetric defines the prometheus query to perform canary analysis
    v1Proxy:
      type: object
      properties:
        http:
          type: string
        https:
          type: string
        username:
          type: string
        password:
          type: string
        skipSSLVerify:
          type: boolean
    v1QuobyteVolumeSource:
      type: object
      properties:
        registry:
          type: string
          title: >-
            registry represents a single or multiple Quobyte Registry services

            specified as a string as host:port pair (multiple entries are
            separated with commas)

            which acts as the central registry for volumes
        volume:
          type: string
          description: >-
            volume is a string that references an already created Quobyte volume
            by name.
        readOnly:
          type: boolean
          title: >-
            readOnly here will force the Quobyte volume to be mounted with
            read-only permissions.

            Defaults to false.

            +optional
        user:
          type: string
          title: |-
            user to map volume access to
            Defaults to serivceaccount user
            +optional
        group:
          type: string
          title: |-
            group to map volume access to
            Default is no group
            +optional
        tenant:
          type: string
          title: >-
            tenant owning the given Quobyte volume in the Backend

            Used with dynamically provisioned Quobyte volumes, value is set by
            the plugin

            +optional
      description: >-
        Represents a Quobyte mount that lasts the lifetime of a pod.

        Quobyte volumes do not support ownership management or SELinux
        relabeling.
    v1RBDVolumeSource:
      type: object
      properties:
        monitors:
          type: array
          items:
            type: string
          title: >-
            monitors is a collection of Ceph monitors.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

            +listType=atomic
        image:
          type: string
          title: >-
            image is the rados image name.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
        fsType:
          type: string
          title: >-
            fsType is the filesystem type of the volume that you want to mount.

            Tip: Ensure that the filesystem type is supported by the host
            operating system.

            Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd

            TODO: how do we prevent errors in the filesystem from compromising
            the machine

            +optional
        pool:
          type: string
          title: >-
            pool is the rados pool name.

            Default is rbd.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

            +optional

            +default="rbd"
        user:
          type: string
          title: >-
            user is the rados user name.

            Default is admin.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

            +optional

            +default="admin"
        keyring:
          type: string
          title: >-
            keyring is the path to key ring for RBDUser.

            Default is /etc/ceph/keyring.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

            +optional

            +default="/etc/ceph/keyring"
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
        readOnly:
          type: boolean
          title: >-
            readOnly here will force the ReadOnly setting in VolumeMounts.

            Defaults to false.

            More info:
            https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it

            +optional
      description: |-
        Represents a Rados Block Device mount that lasts the lifetime of a pod.
        RBD volumes support ownership management and SELinux relabeling.
    v1RecentDeploymentQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        operationPhase:
          type: array
          items:
            $ref: '#/components/schemas/v1OperationPhase'
        applicationName:
          type: string
        startTime:
          type: integer
          format: int32
        endTime:
          type: integer
          format: int32
        searchTerm:
          type: string
        agentIdentifier:
          type: string
        serviceRef:
          type: string
        envRef:
          type: string
      description: RecentDeploymentQuery
      title: RecentDeploymentQuery
      required:
        - accountIdentifier
    v1RecentDeploymentsDetailsList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1DeploymentsDetails'
        pageItemCount:
          type: integer
          format: int32
        empty:
          type: boolean
    v1RecentlyCreatedCount:
      type: object
      properties:
        total:
          type: integer
          format: int32
        recentlyCreated:
          type: integer
          format: int32
    v1RecentlyCreatedOverview:
      type: object
      properties:
        appCounts:
          $ref: '#/components/schemas/v1RecentlyCreatedCount'
        repoCounts:
          $ref: '#/components/schemas/v1RecentlyCreatedCount'
        clusterCounts:
          $ref: '#/components/schemas/v1RecentlyCreatedCount'
        appSetCounts:
          $ref: '#/components/schemas/v1RecentlyCreatedCount'
    v1RepoByUrlRespList:
      type: object
      properties:
        repository:
          type: array
          items:
            $ref: '#/components/schemas/servicev1Repository'
    v1RepoListReq:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        filter:
          type: object
          description: 'Filters for Repositories. Eg. "identifier": { "$in": ["id1", "id2"]'
        sortBy:
          $ref: '#/components/schemas/RepoListReqRepoSortByOptions'
        sortOrder:
          $ref: '#/components/schemas/v1SortOrderOptions'
        inheritedCreds:
          type: boolean
    v1RepositoryCredentialsQuery:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account Identifier for the Entity.
        projectIdentifier:
          type: string
          description: Project Identifier for the Entity.
        orgIdentifier:
          type: string
          description: Organization Identifier for the Entity.
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
        identifier:
          type: string
        searchTerm:
          type: string
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        filter:
          type: object
          description: >-
            Filters for Repo Credentials. Eg. "identifier": { "$in": ["id1",
            "id2"]
    v1Repositorylist:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/servicev1Repository'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1ResourceClaim:
      type: object
      properties:
        name:
          type: string
          description: |-
            Name must match the name of one entry in pod.spec.resourceClaims of
            the Pod where this field is used. It makes that resource available
            inside a container.
        request:
          type: string
          description: |-
            Request is the name chosen for a request in the referenced claim.
            If empty, everything from the claim is made available, otherwise
            only the result of this request.

            +optional
      description: ResourceClaim references one entry in PodSpec.ResourceClaims.
    v1ResourceFieldSelector:
      type: object
      properties:
        containerName:
          type: string
          title: |-
            Container name: required for volumes, optional for env vars
            +optional
        resource:
          type: string
          title: 'Required: resource to select'
        divisor:
          $ref: '#/components/schemas/resourceQuantity'
      title: >-
        ResourceFieldSelector represents container resources (cpu, memory) and
        their output format

        +structType=atomic
    v1ResourceRequirements:
      type: object
      properties:
        limits:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/resourceQuantity'
          title: >-
            Limits describes the maximum amount of compute resources allowed.

            More info:
            https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

            +optional
        requests:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/resourceQuantity'
          title: >-
            Requests describes the minimum amount of compute resources required.

            If Requests is omitted for a container, it defaults to Limits if
            that is explicitly specified,

            otherwise to an implementation-defined value. Requests cannot exceed
            Limits.

            More info:
            https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

            +optional
        claims:
          type: array
          items:
            $ref: '#/components/schemas/v1ResourceClaim'
          description: |-
            Claims lists the names of resources, defined in spec.resourceClaims,
            that are used by this container.

            This is an alpha field and requires enabling the
            DynamicResourceAllocation feature gate.

            This field is immutable. It can only be set for containers.

            +listType=map
            +listMapKey=name
            +featureGate=DynamicResourceAllocation
            +optional
      description: ResourceRequirements describes the compute resource requirements.
    v1RolloutAnalysis:
      type: object
      properties:
        templates:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutAnalysisTemplate'
          title: >-
            Templates reference to a list of analysis templates to combine for
            an AnalysisRun

            +patchMergeKey=templateName

            +patchStrategy=merge
        args:
          type: array
          items:
            $ref: '#/components/schemas/v1AnalysisRunArgument'
          title: |-
            Args the arguments that will be added to the AnalysisRuns
            +patchMergeKey=name
            +patchStrategy=merge
        dryRun:
          type: array
          items:
            $ref: '#/components/schemas/v1DryRun'
          title: >-
            DryRun object contains the settings for running the analysis in
            Dry-Run mode

            +patchMergeKey=metricName

            +patchStrategy=merge

            +optional
        measurementRetention:
          type: array
          items:
            $ref: '#/components/schemas/v1MeasurementRetention'
          title: >-
            MeasurementRetention object contains the settings for retaining the
            number of measurements during the analysis

            +patchMergeKey=metricName

            +patchStrategy=merge

            +optional
        analysisRunMetadata:
          $ref: '#/components/schemas/v1AnalysisRunMetadata'
      title: RolloutAnalysis defines a template that is used to create a analysisRun
    v1RolloutAnalysisRunInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        icon:
          type: string
        revision:
          type: string
        status:
          type: string
        successful:
          type: integer
          format: int32
        failed:
          type: integer
          format: int32
        inconclusive:
          type: integer
          format: int32
        error:
          type: integer
          format: int32
        jobs:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutJobInfo'
        nonJobInfo:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutNonJobInfo'
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/v1Metric'
    v1RolloutAnalysisTemplate:
      type: object
      properties:
        templateName:
          type: string
          title: |-
            TemplateName name of template to use in AnalysisRun
            +optional
        clusterScope:
          type: boolean
          title: >-
            Whether to look for the templateName at cluster scope or namespace
            scope

            +optional
    v1RolloutContainerInfo:
      type: object
      properties:
        name:
          type: string
        image:
          type: string
    v1RolloutExperimentInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        icon:
          type: string
        revision:
          type: string
        status:
          type: string
        message:
          type: string
        replicaSets:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutReplicaSetInfo'
        analysisRuns:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutAnalysisRunInfo'
    v1RolloutExperimentStep:
      type: object
      properties:
        templates:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutExperimentTemplate'
          title: >-
            Templates what templates that should be added to the experiment.
            Should be non-nil

            +patchMergeKey=name

            +patchStrategy=merge
        duration:
          type: string
          title: >-
            Duration is a duration string (e.g. 30s, 5m, 1h) that the experiment
            should run for

            +optional
        analyses:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutExperimentStepAnalysisTemplateRef'
          title: >-
            Analyses reference which analysis templates to run with the
            experiment

            +patchMergeKey=name

            +patchStrategy=merge
      title: >-
        RolloutExperimentStep defines a template that is used to create a
        experiment for a step
    v1RolloutExperimentStepAnalysisTemplateRef:
      type: object
      properties:
        name:
          type: string
          title: Name is a name for this analysis template invocation
        templateName:
          type: string
          title: >-
            TemplateName reference of the AnalysisTemplate name used by the
            Experiment to create the run
        clusterScope:
          type: boolean
          title: >-
            Whether to look for the templateName at cluster scope or namespace
            scope

            +optional
        args:
          type: array
          items:
            $ref: '#/components/schemas/v1AnalysisRunArgument'
          title: |-
            Args the arguments that will be added to the AnalysisRuns
            +patchMergeKey=name
            +patchStrategy=merge
        requiredForCompletion:
          type: boolean
          title: >-
            RequiredForCompletion blocks the Experiment from completing until
            the analysis has completed
    v1RolloutExperimentTemplate:
      type: object
      properties:
        name:
          type: string
          title: Name description of template that passed to the template
        specRef:
          type: string
          title: SpecRef indicates where the rollout should get the RS template from
        replicas:
          type: integer
          format: int32
          title: |-
            Replicas replica count for the template
            +optional
        metadata:
          $ref: '#/components/schemas/v1PodTemplateMetadata'
        selector:
          $ref: '#/components/schemas/v1LabelSelector'
        weight:
          type: integer
          format: int32
          title: >-
            Weight sets the percentage of traffic the template's replicas should
            receive
        service:
          $ref: '#/components/schemas/v1TemplateService'
      title: >-
        RolloutExperimentTemplate defines the template used to create
        experiments for the Rollout's experiment canary step
    v1RolloutInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        status:
          type: string
        message:
          type: string
        icon:
          type: string
        strategy:
          type: string
        step:
          type: string
        setWeight:
          type: string
        actualWeight:
          type: string
        ready:
          type: integer
          format: int32
        current:
          type: integer
          format: int32
        desired:
          type: integer
          format: int32
        updated:
          type: integer
          format: int32
        available:
          type: integer
          format: int32
        restartedAt:
          type: string
        generation:
          type: string
        replicaSets:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutReplicaSetInfo'
        experiments:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutExperimentInfo'
        analysisRuns:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutAnalysisRunInfo'
        containers:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutContainerInfo'
        steps:
          type: array
          items:
            $ref: '#/components/schemas/v1CanaryStep'
        canaryRevision:
          type: integer
          format: int32
        canaryImages:
          type: array
          items:
            type: string
        previewImages:
          type: array
          items:
            type: string
        stableImages:
          type: array
          items:
            type: string
    v1RolloutJobInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        status:
          type: string
        icon:
          type: string
        metricName:
          type: string
        startedAt:
          $ref: '#/components/schemas/v1Time'
    v1RolloutNonJobInfo:
      type: object
      properties:
        value:
          type: string
        status:
          type: string
        metricName:
          type: string
        startedAt:
          $ref: '#/components/schemas/v1Time'
    v1RolloutPause:
      type: object
      properties:
        duration:
          $ref: '#/components/schemas/intstrIntOrString'
      title: RolloutPause defines a pause stage for a rollout
    v1RolloutPodInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        status:
          type: string
        icon:
          type: string
        ready:
          type: string
        restarts:
          type: integer
          format: int32
    v1RolloutReplicaSetInfo:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/v1ObjectMeta'
        status:
          type: string
        icon:
          type: string
        revision:
          type: string
        stable:
          type: boolean
        canary:
          type: boolean
        active:
          type: boolean
        preview:
          type: boolean
        replicas:
          type: integer
          format: int32
        available:
          type: integer
          format: int32
        template:
          type: string
        scaleDownDeadline:
          type: string
        images:
          type: array
          items:
            type: string
        pods:
          type: array
          items:
            $ref: '#/components/schemas/v1RolloutPodInfo'
        ping:
          type: boolean
        pong:
          type: boolean
    v1RouteMatch:
      type: object
      properties:
        method:
          $ref: '#/components/schemas/v1StringMatch'
        path:
          $ref: '#/components/schemas/v1StringMatch'
        headers:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/v1StringMatch'
          title: |-
            Headers What request with matching headers should be mirrored
            +optional
    v1SELinuxOptions:
      type: object
      properties:
        user:
          type: string
          title: |-
            User is a SELinux user label that applies to the container.
            +optional
        role:
          type: string
          title: |-
            Role is a SELinux role label that applies to the container.
            +optional
        type:
          type: string
          title: |-
            Type is a SELinux type label that applies to the container.
            +optional
        level:
          type: string
          title: |-
            Level is SELinux level label that applies to the container.
            +optional
      title: SELinuxOptions are the labels to be applied to the container
    v1ScaleIOVolumeSource:
      type: object
      properties:
        gateway:
          type: string
          description: gateway is the host address of the ScaleIO API Gateway.
        system:
          type: string
          description: system is the name of the storage system as configured in ScaleIO.
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
        sslEnabled:
          type: boolean
          title: >-
            sslEnabled Flag enable/disable SSL communication with Gateway,
            default false

            +optional
        protectionDomain:
          type: string
          title: >-
            protectionDomain is the name of the ScaleIO Protection Domain for
            the configured storage.

            +optional
        storagePool:
          type: string
          title: >-
            storagePool is the ScaleIO Storage Pool associated with the
            protection domain.

            +optional
        storageMode:
          type: string
          title: >-
            storageMode indicates whether the storage for a volume should be
            ThickProvisioned or ThinProvisioned.

            Default is ThinProvisioned.

            +optional

            +default="ThinProvisioned"
        volumeName:
          type: string
          description: >-
            volumeName is the name of a volume already created in the ScaleIO
            system

            that is associated with this volume source.
        fsType:
          type: string
          title: |-
            fsType is the filesystem type to mount.
            Must be a filesystem type supported by the host operating system.
            Ex. "ext4", "xfs", "ntfs".
            Default is "xfs".
            +optional
            +default="xfs"
        readOnly:
          type: boolean
          title: |-
            readOnly Defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            +optional
      title: ScaleIOVolumeSource represents a persistent ScaleIO volume
    v1ScopeDetail:
      type: object
      properties:
        scope:
          type: string
        region:
          type: string
        step:
          type: string
          format: int64
        start:
          type: string
        end:
          type: string
    v1SeccompProfile:
      type: object
      properties:
        type:
          type: string
          description: >-
            Localhost - a profile defined in a file on the node should be used.

            RuntimeDefault - the container runtime default profile should be
            used.

            Unconfined - no profile should be applied.

            +unionDiscriminator
          title: |-
            type indicates which kind of seccomp profile will be applied.
            Valid options are:
        localhostProfile:
          type: string
          title: >-
            localhostProfile indicates a profile defined in a file on the node
            should be used.

            The profile must be preconfigured on the node to work.

            Must be a descending path, relative to the kubelet's configured
            seccomp profile location.

            Must be set if type is "Localhost". Must NOT be set for any other
            type.

            +optional
      title: |-
        SeccompProfile defines a pod/container's seccomp profile settings.
        Only one profile source may be set.
        +union
    v1SecretEnvSource:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        optional:
          type: boolean
          title: |-
            Specify whether the Secret must be defined
            +optional
      description: |-
        SecretEnvSource selects a Secret to populate the environment
        variables with.

        The contents of the target Secret's Data field will represent the
        key-value pairs as environment variables.
    v1SecretKeySelector:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        key:
          type: string
          description: The key of the secret to select from.  Must be a valid secret key.
        optional:
          type: boolean
          title: |-
            Specify whether the Secret or its key must be defined
            +optional
      title: |-
        SecretKeySelector selects a key of a Secret.
        +structType=atomic
    v1SecretProjection:
      type: object
      properties:
        localObjectReference:
          $ref: '#/components/schemas/v1LocalObjectReference'
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1KeyToPath'
          title: >-
            items if unspecified, each key-value pair in the Data field of the
            referenced

            Secret will be projected into the volume as a file whose name is the

            key and content is the value. If specified, the listed keys will be

            projected into the specified paths, and unlisted keys will not be

            present. If a key is specified which is not present in the Secret,

            the volume setup will error unless it is marked optional. Paths must
            be

            relative and may not contain the '..' path or start with '..'.

            +optional

            +listType=atomic
        optional:
          type: boolean
          title: |-
            optional field specify whether the Secret or its key must be defined
            +optional
      description: >-
        Adapts a secret into a projected volume.


        The contents of the target Secret's Data field will be presented in a

        projected volume as files using the keys in the Data field as the file
        names.

        Note that this is identical to a secret volume source without the
        default

        mode.
    v1SecretVolumeSource:
      type: object
      properties:
        secretName:
          type: string
          title: >-
            secretName is the name of the secret in the pod's namespace to use.

            More info:
            https://kubernetes.io/docs/concepts/storage/volumes#secret

            +optional
        items:
          type: array
          items:
            $ref: '#/components/schemas/v1KeyToPath'
          title: >-
            items If unspecified, each key-value pair in the Data field of the
            referenced

            Secret will be projected into the volume as a file whose name is the

            key and content is the value. If specified, the listed keys will be

            projected into the specified paths, and unlisted keys will not be

            present. If a key is specified which is not present in the Secret,

            the volume setup will error unless it is marked optional. Paths must
            be

            relative and may not contain the '..' path or start with '..'.

            +optional

            +listType=atomic
        defaultMode:
          type: integer
          format: int32
          title: >-
            defaultMode is Optional: mode bits used to set permissions on
            created files by default.

            Must be an octal value between 0000 and 0777 or a decimal value
            between 0 and 511.

            YAML accepts both octal and decimal values, JSON requires decimal
            values

            for mode bits. Defaults to 0644.

            Directories within the path are not affected by this setting.

            This might be in conflict with other options that affect the file

            mode, like fsGroup, and the result can be other mode bits set.

            +optional
        optional:
          type: boolean
          title: >-
            optional field specify whether the Secret or its keys must be
            defined

            +optional
      description: >-
        Adapts a Secret into a volume.


        The contents of the target Secret's Data field will be presented in a
        volume

        as files using the keys in the Data field as the file names.

        Secret volumes support ownership management and SELinux relabeling.
    v1SecurityContext:
      type: object
      properties:
        capabilities:
          $ref: '#/components/schemas/v1Capabilities'
        privileged:
          type: boolean
          title: >-
            Run container in privileged mode.

            Processes in privileged containers are essentially equivalent to
            root on the host.

            Defaults to false.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        seLinuxOptions:
          $ref: '#/components/schemas/v1SELinuxOptions'
        windowsOptions:
          $ref: '#/components/schemas/v1WindowsSecurityContextOptions'
        runAsUser:
          type: string
          format: int64
          title: >-
            The UID to run the entrypoint of the container process.

            Defaults to user specified in image metadata if unspecified.

            May also be set in PodSecurityContext.  If set in both
            SecurityContext and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        runAsGroup:
          type: string
          format: int64
          title: >-
            The GID to run the entrypoint of the container process.

            Uses runtime default if unset.

            May also be set in PodSecurityContext.  If set in both
            SecurityContext and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        runAsNonRoot:
          type: boolean
          title: >-
            Indicates that the container must run as a non-root user.

            If true, the Kubelet will validate the image at runtime to ensure
            that it

            does not run as UID 0 (root) and fail to start the container if it
            does.

            If unset or false, no such validation will be performed.

            May also be set in PodSecurityContext.  If set in both
            SecurityContext and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence.

            +optional
        readOnlyRootFilesystem:
          type: boolean
          title: |-
            Whether this container has a read-only root filesystem.
            Default is false.
            Note that this field cannot be set when spec.os.name is windows.
            +optional
        allowPrivilegeEscalation:
          type: boolean
          title: |-
            AllowPrivilegeEscalation controls whether a process can gain more
            privileges than its parent process. This bool directly controls if
            the no_new_privs flag will be set on the container process.
            AllowPrivilegeEscalation is true always when the container is:
            1) run as Privileged
            2) has CAP_SYS_ADMIN
            Note that this field cannot be set when spec.os.name is windows.
            +optional
        procMount:
          type: string
          title: >-
            procMount denotes the type of proc mount to use for the containers.

            The default value is Default which uses the container runtime
            defaults for

            readonly paths and masked paths.

            This requires the ProcMountType feature flag to be enabled.

            Note that this field cannot be set when spec.os.name is windows.

            +optional
        seccompProfile:
          $ref: '#/components/schemas/v1SeccompProfile'
        appArmorProfile:
          $ref: '#/components/schemas/v1AppArmorProfile'
      description: >-
        SecurityContext holds security configuration that will be applied to a
        container.

        Some fields are present in both SecurityContext and PodSecurityContext. 
        When both

        are set, the values in SecurityContext take precedence.
    v1SemanticVersion:
      type: object
      properties:
        major:
          type: string
          format: int64
        minor:
          type: string
          format: int64
        patch:
          type: string
          format: int64
    v1ServiceAccountTokenProjection:
      type: object
      properties:
        audience:
          type: string
          title: >-
            audience is the intended audience of the token. A recipient of a
            token

            must identify itself with an identifier specified in the audience of
            the

            token, and otherwise should reject the token. The audience defaults
            to the

            identifier of the apiserver.

            +optional
        expirationSeconds:
          type: string
          format: int64
          title: >-
            expirationSeconds is the requested duration of validity of the
            service

            account token. As the token approaches expiration, the kubelet
            volume

            plugin will proactively rotate the service account token. The
            kubelet will

            start trying to rotate the token if the token is older than 80
            percent of

            its time to live or if the token is older than 24 hours.Defaults to
            1 hour

            and must be at least 10 minutes.

            +optional
        path:
          type: string
          description: >-
            path is the path relative to the mount point of the file to project
            the

            token into.
      description: >-
        ServiceAccountTokenProjection represents a projected service account
        token

        volume. This projection can be used to insert a service account token
        into

        the pods runtime filesystem for use against APIs (Kubernetes API Server
        or

        otherwise).
    v1SetCanaryScale:
      type: object
      properties:
        weight:
          type: integer
          format: int32
          title: |-
            Weight sets the percentage of replicas the newRS should have
            +optional
        replicas:
          type: integer
          format: int32
          title: |-
            Replicas sets the number of replicas the newRS should have
            +optional
        matchTrafficWeight:
          type: boolean
          title: >-
            MatchTrafficWeight cancels out previously set Replicas or Weight,
            effectively activating SetWeight

            +optional
      title: >-
        SetCanaryScale defines how to scale the newRS without changing traffic
        weight
    v1SetHeaderRoute:
      type: object
      properties:
        name:
          type: string
          title: >-
            Name this is the name of the route to use for the mirroring of
            traffic this also needs

            to be included in the
            `spec.strategy.canary.trafficRouting.managedRoutes` field
        match:
          type: array
          items:
            $ref: '#/components/schemas/v1HeaderRoutingMatch'
      title: >-
        SetHeaderRoute defines the route with specified header name to send 100%
        of traffic to the canary service
    v1SetMirrorRoute:
      type: object
      properties:
        name:
          type: string
          title: >-
            Name this is the name of the route to use for the mirroring of
            traffic this also needs

            to be included in the
            `spec.strategy.canary.trafficRouting.managedRoutes` field
        match:
          type: array
          items:
            $ref: '#/components/schemas/v1RouteMatch'
          title: >-
            Match Contains a list of rules that if mated will mirror the traffic
            to the services

            +optional
        percentage:
          type: integer
          format: int32
          title: >-
            Services The list of services to mirror the traffic to if the
            method, path, headers match

            Service string `json:"service" protobuf:"bytes,3,opt,name=service"`

            Percentage What percent of the traffic that matched the rules should
            be mirrored
    v1Sigv4Config:
      type: object
      properties:
        address:
          type: string
          title: Region is the AWS Region to sign the SigV4 Request
        profile:
          type: string
          title: Profile is the Credential Profile used to sign the SigV4 Request
        roleArn:
          type: string
          title: RoleARN is the IAM role used to sign the SIgV4 Request
    v1SkyWalkingMetric:
      type: object
      properties:
        address:
          type: string
        query:
          type: string
        interval:
          type: string
    v1SleepAction:
      type: object
      properties:
        seconds:
          type: string
          format: int64
          description: Seconds is the number of seconds to sleep.
      description: SleepAction describes a "sleep" action.
    v1SortOrderOptions:
      type: string
      enum:
        - SORT_ORDER_NOT_SET
        - ASC
        - DESC
      default: SORT_ORDER_NOT_SET
    v1StorageOSVolumeSource:
      type: object
      properties:
        volumeName:
          type: string
          description: >-
            volumeName is the human-readable name of the StorageOS volume. 
            Volume

            names are only unique within a namespace.
        volumeNamespace:
          type: string
          title: >-
            volumeNamespace specifies the scope of the volume within StorageOS. 
            If no

            namespace is specified then the Pod's namespace will be used.  This
            allows the

            Kubernetes name scoping to be mirrored within StorageOS for tighter
            integration.

            Set VolumeName to any name to override the default behaviour.

            Set to "default" if you are not using namespaces within StorageOS.

            Namespaces that do not pre-exist within StorageOS will be created.

            +optional
        fsType:
          type: string
          title: >-
            fsType is the filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            +optional
        readOnly:
          type: boolean
          title: |-
            readOnly defaults to false (read/write). ReadOnly here will force
            the ReadOnly setting in VolumeMounts.
            +optional
        secretRef:
          $ref: '#/components/schemas/v1LocalObjectReference'
      description: Represents a StorageOS persistent volume resource.
    v1StringMatch:
      type: object
      properties:
        exact:
          type: string
          title: Exact The string must match exactly
        prefix:
          type: string
          title: Prefix The string will be prefixed matched
        regex:
          type: string
          title: Regex The string will be regular expression matched
      title: >-
        StringMatch Used to define what type of matching we will use exact,
        prefix, or regular expression
    v1SuccessPolicy:
      type: object
      properties:
        rules:
          type: array
          items:
            $ref: '#/components/schemas/v1SuccessPolicyRule'
          title: >-
            rules represents the list of alternative rules for the declaring the
            Jobs

            as successful before `.status.succeeded >= .spec.completions`. Once
            any of the rules are met,

            the "SucceededCriteriaMet" condition is added, and the lingering
            pods are removed.

            The terminal state for such a Job has the "Complete" condition.

            Additionally, these rules are evaluated in order; Once the Job meets
            one of the rules,

            other rules are ignored. At most 20 elements are allowed.

            +listType=atomic
      description: >-
        SuccessPolicy describes when a Job can be declared as succeeded based on
        the success of some indexes.
    v1SuccessPolicyRule:
      type: object
      properties:
        succeededIndexes:
          type: string
          description: >-
            succeededIndexes specifies the set of indexes

            which need to be contained in the actual set of the succeeded
            indexes for the Job.

            The list of indexes must be within 0 to ".spec.completions-1" and

            must not contain duplicates. At least one element is required.

            The indexes are represented as intervals separated by commas.

            The intervals can be a decimal integer or a pair of decimal integers
            separated by a hyphen.

            The number are listed in represented by the first and last element
            of the series,

            separated by a hyphen.

            For example, if the completed indexes are 1, 3, 4, 5 and 7, they are

            represented as "1,3-5,7".

            When this field is null, this field doesn't default to any value

            and is never evaluated at any time.


            +optional
        succeededCount:
          type: integer
          format: int32
          description: >-
            succeededCount specifies the minimal required size of the actual set
            of the succeeded indexes

            for the Job. When succeededCount is used along with
            succeededIndexes, the check is

            constrained only to the set of indexes specified by
            succeededIndexes.

            For example, given that succeededIndexes is "1-4", succeededCount is
            "3",

            and completed indexes are "1", "3", and "5", the Job isn't declared
            as succeeded

            because only "1" and "3" indexes are considered in that rules.

            When this field is null, this doesn't default to any value and

            is never evaluated at any time.

            When specified it needs to be a positive integer.


            +optional
      description: >-
        SuccessPolicyRule describes rule for declaring a Job as succeeded.

        Each rule must have at least one of the "succeededIndexes" or
        "succeededCount" specified.
    v1SyncStatusCounts:
      type: object
      properties:
        synced:
          type: integer
          format: int32
        outOfSync:
          type: integer
          format: int32
        unknown:
          type: integer
          format: int32
    v1Sysctl:
      type: object
      properties:
        name:
          type: string
          title: Name of a property to set
        value:
          type: string
          title: Value of a property to set
      title: Sysctl defines a kernel parameter to be set
    v1TCPSocketAction:
      type: object
      properties:
        port:
          $ref: '#/components/schemas/intstrIntOrString'
        host:
          type: string
          title: |-
            Optional: Host name to connect to, defaults to the pod IP.
            +optional
      title: TCPSocketAction describes an action based on opening a socket
    v1TagMap:
      type: object
      properties:
        tags:
          type: object
          additionalProperties:
            type: string
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1TemplateService:
      type: object
      properties:
        name:
          type: string
          title: Name of the service generated by the experiment
    v1Time:
      type: object
      properties:
        seconds:
          type: string
          format: int64
          description: |-
            Represents seconds of UTC time since Unix epoch
            1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
            9999-12-31T23:59:59Z inclusive.
        nanos:
          type: integer
          format: int32
          description: >-
            Non-negative fractions of a second at nanosecond resolution.
            Negative

            second values with fractions must still have non-negative nanos
            values

            that count forward in time. Must be from 0 to 999,999,999

            inclusive. This field may be limited in precision depending on
            context.
      description: |-
        Time is a wrapper around time.Time which supports correct
        marshaling to YAML and JSON.  Wrappers are provided for many
        of the factory methods that the time package offers.

        +protobuf.options.marshal=false
        +protobuf.as=Timestamp
        +protobuf.options.(gogoproto.goproto_stringer)=false
    v1Toleration:
      type: object
      properties:
        key:
          type: string
          title: >-
            Key is the taint key that the toleration applies to. Empty means
            match all taint keys.

            If the key is empty, operator must be Exists; this combination means
            to match all values and all keys.

            +optional
        operator:
          type: string
          title: |-
            Operator represents a key's relationship to the value.
            Valid operators are Exists and Equal. Defaults to Equal.
            Exists is equivalent to wildcard for value, so that a pod can
            tolerate all taints of a particular category.
            +optional
        value:
          type: string
          title: >-
            Value is the taint value the toleration matches to.

            If the operator is Exists, the value should be empty, otherwise just
            a regular string.

            +optional
        effect:
          type: string
          title: >-
            Effect indicates the taint effect to match. Empty means match all
            taint effects.

            When specified, allowed values are NoSchedule, PreferNoSchedule and
            NoExecute.

            +optional
        tolerationSeconds:
          type: string
          format: int64
          title: >-
            TolerationSeconds represents the period of time the toleration
            (which must be

            of effect NoExecute, otherwise this field is ignored) tolerates the
            taint. By default,

            it is not set, which means tolerate the taint forever (do not
            evict). Zero and

            negative values will be treated as 0 (evict immediately) by the
            system.

            +optional
      description: |-
        The pod this Toleration is attached to tolerates any taint that matches
        the triple <key,value,effect> using the matching operator <operator>.
    v1TopApplicationPhaseStats:
      type: object
      properties:
        applicationName:
          type: string
        totalDeployments:
          type: integer
          format: int32
        deploymentRate:
          type: integer
          format: int32
        succeeded:
          type: integer
          format: int32
        failed:
          type: integer
          format: int32
        agentIdentifier:
          type: string
          description: Agent identifier for entity.
    v1TopApplicationPhaseStatsList:
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/v1TopApplicationPhaseStats'
        empty:
          type: boolean
    v1TopologySpreadConstraint:
      type: object
      properties:
        maxSkew:
          type: integer
          format: int32
          description: >-
            MaxSkew describes the degree to which pods may be unevenly
            distributed.

            When `whenUnsatisfiable=DoNotSchedule`, it is the maximum permitted
            difference

            between the number of matching pods in the target topology and the
            global minimum.

            The global minimum is the minimum number of matching pods in an
            eligible domain

            or zero if the number of eligible domains is less than MinDomains.

            For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with
            the same

            labelSelector spread as 2/2/1:

            In this case, the global minimum is 1.

            +-------+-------+-------+

            | zone1 | zone2 | zone3 |

            +-------+-------+-------+

            |  P P  |  P P  |   P   |

            +-------+-------+-------+

            - if MaxSkew is 1, incoming pod can only be scheduled to zone3 to
            become 2/2/2;

            scheduling it onto zone1(zone2) would make the ActualSkew(3-1) on
            zone1(zone2)

            violate MaxSkew(1).

            - if MaxSkew is 2, incoming pod can be scheduled onto any zone.

            When `whenUnsatisfiable=ScheduleAnyway`, it is used to give higher
            precedence

            to topologies that satisfy it.

            It's a required field. Default value is 1 and 0 is not allowed.
        topologyKey:
          type: string
          description: >-
            TopologyKey is the key of node labels. Nodes that have a label with
            this key

            and identical values are considered to be in the same topology.

            We consider each <key, value> as a "bucket", and try to put balanced
            number

            of pods into each bucket.

            We define a domain as a particular instance of a topology.

            Also, we define an eligible domain as a domain whose nodes meet the
            requirements of

            nodeAffinityPolicy and nodeTaintsPolicy.

            e.g. If TopologyKey is "kubernetes.io/hostname", each Node is a
            domain of that topology.

            And, if TopologyKey is "topology.kubernetes.io/zone", each zone is a
            domain of that topology.

            It's a required field.
        whenUnsatisfiable:
          type: string
          description: >-
            WhenUnsatisfiable indicates how to deal with a pod if it doesn't
            satisfy

            the spread constraint.

            - DoNotSchedule (default) tells the scheduler not to schedule it.

            - ScheduleAnyway tells the scheduler to schedule the pod in any
            location,
              but giving higher precedence to topologies that would help reduce the
              skew.
            A constraint is considered "Unsatisfiable" for an incoming pod

            if and only if every possible node assignment for that pod would
            violate

            "MaxSkew" on some topology.

            For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with
            the same

            labelSelector spread as 3/1/1:

            +-------+-------+-------+

            | zone1 | zone2 | zone3 |

            +-------+-------+-------+

            | P P P |   P   |   P   |

            +-------+-------+-------+

            If WhenUnsatisfiable is set to DoNotSchedule, incoming pod can only
            be scheduled

            to zone2(zone3) to become 3/2/1(3/1/2) as ActualSkew(2-1) on
            zone2(zone3) satisfies

            MaxSkew(1). In other words, the cluster can still be imbalanced, but
            scheduler

            won't make it *more* imbalanced.

            It's a required field.
        labelSelector:
          $ref: '#/components/schemas/v1LabelSelector'
        minDomains:
          type: integer
          format: int32
          description: >-
            MinDomains indicates a minimum number of eligible domains.

            When the number of eligible domains with matching topology keys is
            less than minDomains,

            Pod Topology Spread treats "global minimum" as 0, and then the
            calculation of Skew is performed.

            And when the number of eligible domains with matching topology keys
            equals or greater than minDomains,

            this value has no effect on scheduling.

            As a result, when the number of eligible domains is less than
            minDomains,

            scheduler won't schedule more than maxSkew Pods to those domains.

            If value is nil, the constraint behaves as if MinDomains is equal to
            1.

            Valid values are integers greater than 0.

            When value is not nil, WhenUnsatisfiable must be DoNotSchedule.


            For example, in a 3-zone cluster, MaxSkew is set to 2, MinDomains is
            set to 5 and pods with the same

            labelSelector spread as 2/2/2:

            +-------+-------+-------+

            | zone1 | zone2 | zone3 |

            +-------+-------+-------+

            |  P P  |  P P  |  P P  |

            +-------+-------+-------+

            The number of domains is less than 5(MinDomains), so "global
            minimum" is treated as 0.

            In this situation, new pod with the same labelSelector cannot be
            scheduled,

            because computed skew will be 3(3 - 0) if new Pod is scheduled to
            any of the three zones,

            it will violate MaxSkew.

            +optional
        nodeAffinityPolicy:
          type: string
          description: >-
            NodeAffinityPolicy indicates how we will treat Pod's
            nodeAffinity/nodeSelector

            when calculating pod topology spread skew. Options are:

            - Honor: only nodes matching nodeAffinity/nodeSelector are included
            in the calculations.

            - Ignore: nodeAffinity/nodeSelector are ignored. All nodes are
            included in the calculations.


            If this value is nil, the behavior is equivalent to the Honor
            policy.

            This is a beta-level feature default enabled by the
            NodeInclusionPolicyInPodTopologySpread feature flag.

            +optional
        nodeTaintsPolicy:
          type: string
          description: >-
            NodeTaintsPolicy indicates how we will treat node taints when
            calculating

            pod topology spread skew. Options are:

            - Honor: nodes without taints, along with tainted nodes for which
            the incoming pod

            has a toleration, are included.

            - Ignore: node taints are ignored. All nodes are included.


            If this value is nil, the behavior is equivalent to the Ignore
            policy.

            This is a beta-level feature default enabled by the
            NodeInclusionPolicyInPodTopologySpread feature flag.

            +optional
        matchLabelKeys:
          type: array
          items:
            type: string
          description: >-
            MatchLabelKeys is a set of pod label keys to select the pods over
            which

            spreading will be calculated. The keys are used to lookup values
            from the

            incoming pod labels, those key-value labels are ANDed with
            labelSelector

            to select the group of existing pods over which spreading will be
            calculated

            for the incoming pod. The same key is forbidden to exist in both
            MatchLabelKeys and LabelSelector.

            MatchLabelKeys cannot be set when LabelSelector isn't set.

            Keys that don't exist in the incoming pod labels will

            be ignored. A null or empty list means only match against
            labelSelector.


            This is a beta field and requires the
            MatchLabelKeysInPodTopologySpread feature gate to be enabled
            (enabled by default).

            +listType=atomic

            +optional
      description: >-
        TopologySpreadConstraint specifies how to spread matching pods among the
        given topology.
    v1TypedLocalObjectReference:
      type: object
      properties:
        apiGroup:
          type: string
          title: >-
            APIGroup is the group for the resource being referenced.

            If APIGroup is not specified, the specified Kind must be in the core
            API group.

            For any other third-party types, APIGroup is required.

            +optional
        kind:
          type: string
          title: Kind is the type of resource being referenced
        name:
          type: string
          title: Name is the name of resource being referenced
      description: >-
        TypedLocalObjectReference contains enough information to let you locate
        the

        typed referenced object inside the same namespace.

        ---

        New uses of this type are discouraged because of difficulty describing
        its usage when embedded in APIs.
         1. Invalid usage help.  It is impossible to add specific help for individual usage.  In most embedded usages, there are particular
            restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted".
            Those cannot be well described when embedded.
         2. Inconsistent validation.  Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen.
         3. The fields are both imprecise and overly precise.  Kind is not a precise mapping to a URL. This can produce ambiguity
            during interpretation and require a REST mapping.  In most cases, the dependency is on the group,resource tuple
            and the version of the actual struct is irrelevant.
         4. We cannot easily change it.  Because this type is embedded in many locations, updates to this type
            will affect numerous schemas.  Don't make new APIs embed an underspecified API type they do not control.

        Instead of using this type, create a locally provided and used type that
        is well-focused on your reference.

        For example, ServiceReferences for admission registration:
        https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533
        .

        +structType=atomic
    v1TypedObjectReference:
      type: object
      properties:
        apiGroup:
          type: string
          title: >-
            APIGroup is the group for the resource being referenced.

            If APIGroup is not specified, the specified Kind must be in the core
            API group.

            For any other third-party types, APIGroup is required.

            +optional
        kind:
          type: string
          title: Kind is the type of resource being referenced
        name:
          type: string
          title: Name is the name of resource being referenced
        namespace:
          type: string
          title: >-
            Namespace is the namespace of resource being referenced

            Note that when a namespace is specified, a
            gateway.networking.k8s.io/ReferenceGrant object is required in the
            referent namespace to allow that namespace's owner to accept the
            reference. See the ReferenceGrant documentation for details.

            (Alpha) This field requires the CrossNamespaceVolumeDataSource
            feature gate to be enabled.

            +featureGate=CrossNamespaceVolumeDataSource

            +optional
      title: >-
        TypedObjectReference contains enough information to let you locate the
        typed referenced object
    v1UniqueMessage:
      type: object
      properties:
        unique:
          type: boolean
    v1User:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        email:
          type: string
    v1VersionList:
      type: object
      properties:
        versions:
          type: array
          items:
            $ref: '#/components/schemas/v1SemanticVersion'
        totalPages:
          type: integer
          format: int32
        totalItems:
          type: integer
          format: int32
        pageItemCount:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
        pageIndex:
          type: integer
          format: int32
        empty:
          type: boolean
    v1VersionUpgradeResponse:
      type: object
      properties:
        ShouldUpgrade:
          type: boolean
          description: Indicates whether agent has an upgrade available or not
        AgentImageTag:
          type: string
          description: Docker image tag for agent
        ArgoCDImage:
          type: string
          description: Latest ArgoCDImage
        FlamingoArgoCDImage:
          type: string
          description: Latest FlamingoArgoCDImage
        HAProxyImage:
          type: string
          description: Latest HAProxyImage
        RedisImage:
          type: string
          description: Latest redis image
        SopsImage:
          type: string
          description: Latest sopsInstaller image
    v1Volume:
      type: object
      properties:
        name:
          type: string
          title: >-
            name of the volume.

            Must be a DNS_LABEL and unique within the pod.

            More info:
            https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
        volumeSource:
          $ref: '#/components/schemas/v1VolumeSource'
      description: >-
        Volume represents a named volume in a pod that may be accessed by any
        container in the pod.
    v1VolumeDevice:
      type: object
      properties:
        name:
          type: string
          title: name must match the name of a persistentVolumeClaim in the pod
        devicePath:
          type: string
          description: >-
            devicePath is the path inside of the container that the device will
            be mapped to.
      description: >-
        volumeDevice describes a mapping of a raw block device within a
        container.
    v1VolumeMount:
      type: object
      properties:
        name:
          type: string
          description: This must match the Name of a Volume.
        readOnly:
          type: boolean
          title: >-
            Mounted read-only if true, read-write otherwise (false or
            unspecified).

            Defaults to false.

            +optional
        recursiveReadOnly:
          type: string
          description: >-
            RecursiveReadOnly specifies whether read-only mounts should be
            handled

            recursively.


            If ReadOnly is false, this field has no meaning and must be
            unspecified.


            If ReadOnly is true, and this field is set to Disabled, the mount is
            not made

            recursively read-only.  If this field is set to IfPossible, the
            mount is made

            recursively read-only, if it is supported by the container runtime. 
            If this

            field is set to Enabled, the mount is made recursively read-only if
            it is

            supported by the container runtime, otherwise the pod will not be
            started and

            an error will be generated to indicate the reason.


            If this field is set to IfPossible or Enabled, MountPropagation must
            be set to

            None (or be unspecified, which defaults to None).


            If this field is not specified, it is treated as an equivalent of
            Disabled.


            +featureGate=RecursiveReadOnlyMounts

            +optional
        mountPath:
          type: string
          description: >-
            Path within the container at which the volume should be mounted. 
            Must

            not contain ':'.
        subPath:
          type: string
          title: >-
            Path within the volume from which the container's volume should be
            mounted.

            Defaults to "" (volume's root).

            +optional
        mountPropagation:
          type: string
          title: >-
            mountPropagation determines how mounts are propagated from the host

            to container and the other way around.

            When not set, MountPropagationNone is used.

            This field is beta in 1.10.

            When RecursiveReadOnly is set to IfPossible or to Enabled,
            MountPropagation must be None or unspecified

            (which defaults to None).

            +optional
        subPathExpr:
          type: string
          title: >-
            Expanded path within the volume from which the container's volume
            should be mounted.

            Behaves similarly to SubPath but environment variable references
            $(VAR_NAME) are expanded using the container's environment.

            Defaults to "" (volume's root).

            SubPathExpr and SubPath are mutually exclusive.

            +optional
      description: VolumeMount describes a mounting of a Volume within a container.
    v1VolumeProjection:
      type: object
      properties:
        secret:
          $ref: '#/components/schemas/v1SecretProjection'
        downwardAPI:
          $ref: '#/components/schemas/v1DownwardAPIProjection'
        configMap:
          $ref: '#/components/schemas/v1ConfigMapProjection'
        serviceAccountToken:
          $ref: '#/components/schemas/v1ServiceAccountTokenProjection'
        clusterTrustBundle:
          $ref: '#/components/schemas/v1ClusterTrustBundleProjection'
      description: >-
        Projection that may be projected along with other supported volume
        types.

        Exactly one of these fields must be set.
    v1VolumeResourceRequirements:
      type: object
      properties:
        limits:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/resourceQuantity'
          title: >-
            Limits describes the maximum amount of compute resources allowed.

            More info:
            https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

            +optional
        requests:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/resourceQuantity'
          title: >-
            Requests describes the minimum amount of compute resources required.

            If Requests is omitted for a container, it defaults to Limits if
            that is explicitly specified,

            otherwise to an implementation-defined value. Requests cannot exceed
            Limits.

            More info:
            https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

            +optional
      description: >-
        VolumeResourceRequirements describes the storage resource requirements
        for a volume.
    v1VolumeSource:
      type: object
      properties:
        hostPath:
          $ref: '#/components/schemas/v1HostPathVolumeSource'
        emptyDir:
          $ref: '#/components/schemas/v1EmptyDirVolumeSource'
        gcePersistentDisk:
          $ref: '#/components/schemas/v1GCEPersistentDiskVolumeSource'
        awsElasticBlockStore:
          $ref: '#/components/schemas/v1AWSElasticBlockStoreVolumeSource'
        gitRepo:
          $ref: '#/components/schemas/v1GitRepoVolumeSource'
        secret:
          $ref: '#/components/schemas/v1SecretVolumeSource'
        nfs:
          $ref: '#/components/schemas/v1NFSVolumeSource'
        iscsi:
          $ref: '#/components/schemas/v1ISCSIVolumeSource'
        glusterfs:
          $ref: '#/components/schemas/v1GlusterfsVolumeSource'
        persistentVolumeClaim:
          $ref: '#/components/schemas/v1PersistentVolumeClaimVolumeSource'
        rbd:
          $ref: '#/components/schemas/v1RBDVolumeSource'
        flexVolume:
          $ref: '#/components/schemas/v1FlexVolumeSource'
        cinder:
          $ref: '#/components/schemas/v1CinderVolumeSource'
        cephfs:
          $ref: '#/components/schemas/v1CephFSVolumeSource'
        flocker:
          $ref: '#/components/schemas/v1FlockerVolumeSource'
        downwardAPI:
          $ref: '#/components/schemas/v1DownwardAPIVolumeSource'
        fc:
          $ref: '#/components/schemas/v1FCVolumeSource'
        azureFile:
          $ref: '#/components/schemas/v1AzureFileVolumeSource'
        configMap:
          $ref: '#/components/schemas/v1ConfigMapVolumeSource'
        vsphereVolume:
          $ref: '#/components/schemas/v1VsphereVirtualDiskVolumeSource'
        quobyte:
          $ref: '#/components/schemas/v1QuobyteVolumeSource'
        azureDisk:
          $ref: '#/components/schemas/v1AzureDiskVolumeSource'
        photonPersistentDisk:
          $ref: '#/components/schemas/v1PhotonPersistentDiskVolumeSource'
        projected:
          $ref: '#/components/schemas/v1ProjectedVolumeSource'
        portworxVolume:
          $ref: '#/components/schemas/v1PortworxVolumeSource'
        scaleIO:
          $ref: '#/components/schemas/v1ScaleIOVolumeSource'
        storageos:
          $ref: '#/components/schemas/v1StorageOSVolumeSource'
        csi:
          $ref: '#/components/schemas/v1CSIVolumeSource'
        ephemeral:
          $ref: '#/components/schemas/v1EphemeralVolumeSource'
        image:
          $ref: '#/components/schemas/v1ImageVolumeSource'
      description: |-
        Represents the source of a volume to mount.
        Only one of its members may be specified.
    v1VsphereVirtualDiskVolumeSource:
      type: object
      properties:
        volumePath:
          type: string
          title: volumePath is the path that identifies vSphere volume vmdk
        fsType:
          type: string
          title: >-
            fsType is filesystem type to mount.

            Must be a filesystem type supported by the host operating system.

            Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if
            unspecified.

            +optional
        storagePolicyName:
          type: string
          title: >-
            storagePolicyName is the storage Policy Based Management (SPBM)
            profile name.

            +optional
        storagePolicyID:
          type: string
          title: >-
            storagePolicyID is the storage Policy Based Management (SPBM)
            profile ID associated with the StoragePolicyName.

            +optional
      description: Represents a vSphere volume resource.
    v1WavefrontMetric:
      type: object
      properties:
        address:
          type: string
          title: Address is the HTTP address and port of the wavefront server
        query:
          type: string
          title: Query is a raw wavefront query to perform
      title: WavefrontMetric defines the wavefront query to perform canary analysis
    v1WebMetric:
      type: object
      properties:
        method:
          type: string
          title: Method is the method of the web metric (empty defaults to GET)
        url:
          type: string
          title: URL is the address of the web metric
        headers:
          type: array
          items:
            $ref: '#/components/schemas/v1WebMetricHeader'
          title: |-
            +patchMergeKey=key
            +patchStrategy=merge
            Headers are HTTP headers to use in the request
        body:
          type: string
          title: Body is the body of the web metric (must be POST/PUT)
        timeoutSeconds:
          type: string
          format: int64
          title: >-
            TimeoutSeconds is the timeout for the request in seconds (default:
            10)
        jsonPath:
          type: string
          title: >-
            JSONPath is a JSON Path to use as the result variable (default:
            "{$}")
        insecure:
          type: boolean
          title: Insecure skips host TLS verification
        jsonBody:
          type: string
          format: byte
          title: >-
            +kubebuilder:validation:Schemaless

            +kubebuilder:pruning:PreserveUnknownFields

            +kubebuilder:validation:Type=object

            JSONBody is the body of the web metric in a json format (method must
            be POST/PUT)
    v1WebMetricHeader:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
    v1WeightedPodAffinityTerm:
      type: object
      properties:
        weight:
          type: integer
          format: int32
          description: |-
            weight associated with matching the corresponding podAffinityTerm,
            in the range 1-100.
        podAffinityTerm:
          $ref: '#/components/schemas/v1PodAffinityTerm'
      title: >-
        The weights of all of the matched WeightedPodAffinityTerm fields are
        added per-node to find the most preferred node(s)
    v1WindowsSecurityContextOptions:
      type: object
      properties:
        gmsaCredentialSpecName:
          type: string
          title: >-
            GMSACredentialSpecName is the name of the GMSA credential spec to
            use.

            +optional
        gmsaCredentialSpec:
          type: string
          title: >-
            GMSACredentialSpec is where the GMSA admission webhook

            (https://github.com/kubernetes-sigs/windows-gmsa) inlines the
            contents of the

            GMSA credential spec named by the GMSACredentialSpecName field.

            +optional
        runAsUserName:
          type: string
          title: >-
            The UserName in Windows to run the entrypoint of the container
            process.

            Defaults to the user specified in image metadata if unspecified.

            May also be set in PodSecurityContext. If set in both
            SecurityContext and

            PodSecurityContext, the value specified in SecurityContext takes
            precedence.

            +optional
        hostProcess:
          type: boolean
          title: >-
            HostProcess determines if a container should be run as a 'Host
            Process' container.

            All of a Pod's containers must have the same effective HostProcess
            value

            (it is not allowed to have a mix of HostProcess containers and
            non-HostProcess containers).

            In addition, if HostProcess is true then HostNetwork must also be
            set to true.

            +optional
      description: >-
        WindowsSecurityContextOptions contain Windows-specific options and
        credentials.
    AggregateStatus:
      type: object
      properties:
        error:
          type: integer
          description: Count of evaluations that have a status of 'error'
          example: 1930074045311726000
          format: int64
        pass:
          type: integer
          description: Count of evaluations that have a status of 'pass'
          example: 58587250703923140
          format: int64
        time:
          type: integer
          description: The Unix time of this particular aggregation
          example: 590664055337683700
          format: int64
        warning:
          type: integer
          description: Count of evaluations that have a status of 'warning'
          example: 3620613604040016000
          format: int64
      description: Aggregate metrics for evaluations on a single day
      example:
        error: 461336571987123800
        pass: 1420350174013308700
        time: 7690880573010495000
        warning: 1069062070157686400
      required:
        - time
        - error
        - warning
        - pass
    AnalyzeRequestBody:
      type: object
      properties:
        entityType:
          type: string
          description: Type of entity on which rego is written on
          example: encryptedJsonData example
        rego:
          type: string
          description: Rego Policy
          example: query example
      example:
        entityType: encryptedJsonData example
        rego: query example
    AnalyzeResponse:
      type: object
      properties:
        desc:
          type: string
          description: Build identifier
          example: policy example
        status:
          type: string
          description: status
          example: SUCCESS
      example:
        desc: policy example
        status: SUCCESS
      required:
        - status
        - desc
    CreateRequestBody:
      type: object
      properties:
        git_connector_ref:
          type: string
          description: The harness connector used for authenticating on the git provider
          example: .
        git_path:
          type: string
          description: The path to the file in the git repo
          example: .harness/policy.rego
        git_repo:
          type: string
          description: The git repo the policy resides in
          example: github.com/org/repo
        identifier:
          type: string
          description: Identifier for the policy
          example: policy-1
          minLength: 1
        name:
          type: string
          description: Name of the policy
          example: Check that an approval step is present
          minLength: 1
        rego:
          type: string
          description: Rego that defines the policy policy
          example: |-
            package test
            deny["should say hello world"] {input.message != "world"}
      example:
        git_connector_ref: .
        git_path: .harness/policy.rego
        git_repo: github.com/org/repo
        identifier: policy-1
        name: Check that an approval step is present
        rego: |-
          package test
          deny["should say hello world"] {input.message != "world"}
      required:
        - name
        - identifier
    CreateRequestBody2:
      type: object
      properties:
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        identifier:
          type: string
          description: Identifier for the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
          minLength: 1
        yaml_version:
          type: string
          description: Harness yaml version associated with this policySet
          default: '0'
          example: '0'
          enum:
            - '0'
            - '1'
      example:
        action: onrun
        description: Captures critical production policies
        enabled: true
        identifier: policyset-1
        name: Production Policies
        type: pipeline
        yaml_version: '0'
      required:
        - identifier
        - name
        - enabled
        - type
        - action
        - created
        - updated
        - account_id
        - org_id
        - project_id
        - entity_selector
    DashboardMetrics:
      type: object
      properties:
        aggregates:
          type: array
          items:
            $ref: '#/components/schemas/AggregateStatus'
          description: Aggregate evaluation counts by day
          example:
            - error: 6675090623294860000
              pass: 4584903984207240700
              time: 5601335008037813000
              warning: 6844872243202899000
            - error: 6675090623294860000
              pass: 4584903984207240700
              time: 5601335008037813000
              warning: 6844872243202899000
        policy_health:
          $ref: '#/components/schemas/PolicyHealth'
      example:
        aggregates:
          - error: 6675090623294860000
            pass: 4584903984207240700
            time: 5601335008037813000
            warning: 6844872243202899000
          - error: 6675090623294860000
            pass: 4584903984207240700
            time: 5601335008037813000
            warning: 6844872243202899000
          - error: 6675090623294860000
            pass: 4584903984207240700
            time: 5601335008037813000
            warning: 6844872243202899000
        policy_health:
          total_evaluation_count: 1537750593145854200
          total_evaluation_entity_count:
            error: 5089901746955059000
            pass: 8819252736165018000
            warning: 6206446740737916000
          total_policy_count: 2398117804330536400
          total_policy_set_count: 1152162144167899100
          total_policy_set_entity_count:
            Ea tempora omnis numquam reiciendis.: 3538924427156737500
            Et saepe.: 793292374565649800
            Repudiandae numquam.: 6575232042203289000
      required:
        - policy_health
        - aggregates
    EntityYaml:
      type: object
      properties:
        yaml:
          type: string
          description: entity yaml
          example: 'x: asdf'
      example:
        yaml: 'x: asdf'
      required:
        - yaml
    PolicyManagementError:
      type: object
      properties:
        fault:
          type: boolean
          description: Is the error a server-side fault?
          example: false
        id:
          type: string
          description: >-
            ID is a unique identifier for this particular occurrence of the
            problem.
          example: 123abc
        message:
          type: string
          description: >-
            Message is a human-readable explanation specific to this occurrence
            of the problem.
          example: parameter 'p' must be an integer
        name:
          type: string
          description: Name is the name of this class of errors.
          example: bad_request
        temporary:
          type: boolean
          description: Is the error temporary?
          example: true
        timeout:
          type: boolean
          description: Is the error a timeout?
          example: false
      example:
        fault: true
        id: 123abc
        message: parameter 'p' must be an integer
        name: bad_request
        temporary: false
        timeout: true
      required:
        - name
        - id
        - message
        - temporary
        - timeout
        - fault
    ErrorResultWithIdentifier:
      type: object
      properties:
        fault:
          type: boolean
          description: Is the error a server-side fault?
          example: false
        id:
          type: string
          description: >-
            ID is a unique identifier for this particular occurrence of the
            problem.
          example: 123abc
        identifier:
          type: string
          description: the identifier associated with the error
          example: policy-1
        message:
          type: string
          description: >-
            Message is a human-readable explanation specific to this occurrence
            of the problem.
          example: parameter 'p' must be an integer
        name:
          type: string
          description: Name is the name of this class of errors.
          example: bad_request
        temporary:
          type: boolean
          description: Is the error temporary?
          example: false
        timeout:
          type: boolean
          description: Is the error a timeout?
          example: false
      example:
        fault: true
        id: 123abc
        identifier: policy-1
        message: parameter 'p' must be an integer
        name: bad_request
        temporary: true
        timeout: true
      required:
        - name
        - id
        - message
        - temporary
        - timeout
        - fault
    EvaluateRequestBody:
      type: object
      properties:
        input:
          type: string
          description: Input to evaluate
          example:
            message: everyone
          format: binary
        rego:
          type: string
          description: Arbitrary rego to be evaluated
          example: |-
            package test
            deny["should say hello world"] {input.message != "world"}
          minLength: 1
      example:
        input:
          message: everyone
        rego: |-
          package test
          deny["should say hello world"] {input.message != "world"}
      required:
        - rego
        - input
    EvaluatedPolicy:
      type: object
      properties:
        deny_messages:
          type: array
          items:
            type: string
            example: Sapiente rerum excepturi ut omnis deleniti.
          description: The values of any `deny` rego rules as returned by the rego engine
          example:
            - >-
              deployment stage 'example-stage' does not have a HarnessApproval
              step
            - >-
              deployment stage 'example-stage' has step 'run-script' that is
              forbidden type 'ShellScript'
        error:
          type: string
          description: >-
            Any errors returned by the rego engine when this policy was
            evaluated
          example: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
        output:
          type: string
          description: >-
            The output returned by the rego engine when this policy was
            evaluated
          example: |-
            {
                "deny": [
                    "deployment stage 'deploy' does not have a HarnessApproval step"
                ],
                "stages_with_approval": []
            }
          format: binary
        policy:
          $ref: '#/components/schemas/PolicyManagementPolicy'
        status:
          type: string
          description: >-
            The overall status for this individual policy indicating whether it
            passed
          example: error
          enum:
            - error
            - warning
            - pass
      example:
        deny_messages:
          - >-
            deployment stage 'example-stage' does not have a HarnessApproval
            step
          - >-
            deployment stage 'example-stage' has step 'run-script' that is
            forbidden type 'ShellScript'
        error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
        output: |-
          {
              "deny": [
                  "deployment stage 'deploy' does not have a HarnessApproval step"
              ],
              "stages_with_approval": []
          }
        policy:
          account_id: eBqAoNchMLKigC_qZ5EdC
          created: 1636669297674
          git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          git_connector_ref: .
          git_default_branch: main
          git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          git_default_branch_file_url: ''
          git_default_branch_update_error:
            explanation: >-
              File with given filepath [file.rego] already exists in Github,
              thus couldn't create a new file
            hint: >-
              Please check if there's already a file [file.rego] in Github
              repository [rego-demo] for the given filepath and branch [main].
            message: >-
              Please check if there's already a file [file.rego] in Github
              repository [rego-demo] for the given filepath and branch [main].
          git_default_branch_updated: 1636669297674
          git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
          git_file_url: ''
          git_path: .harness/policy.rego
          git_repo: github.com/org/repo,omitempty
          identifier: policy-1
          name: Pipeline Approval
          org_id: test-org
          policy_set_count: 3
          project_id: test-project
          rego: ''
          updated: 1636669297674
        status: error
      required:
        - status
        - policy
        - output
        - deny_messages
        - error
    Evaluation:
      type: object
      properties:
        account_id:
          type: string
          description: The Harness account in which the evaluation was performed
          example: XRQAjvT37acOiXx9PRaQMF
        action:
          type: string
          description: The action that triggered evaluation
          example: onrun
        created:
          type: integer
          description: >-
            The time at which the evaluation was performed in Unix time
            millseconds
          example: 1636370209475
          format: int64
        details:
          type: array
          items:
            $ref: '#/components/schemas/EvaluationDetail'
          description: The detailed results of te evaluation
          example:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_connector_ref: .
                    git_default_branch: main
                    git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_default_branch_file_url: ''
                    git_default_branch_update_error:
                      explanation: >-
                        File with given filepath [file.rego] already exists in
                        Github, thus couldn't create a new file
                      hint: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                      message: >-
                        Please check if there's already a file [file.rego] in
                        Github repository [rego-demo] for the given filepath and
                        branch [main].
                    git_default_branch_updated: 1636669297674
                    git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                    git_file_url: ''
                    git_path: .harness/policy.rego
                    git_repo: github.com/org/repo,omitempty
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    policy_set_count: 3
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
        entity:
          type: string
          description: >-
            An arbtrary user-supplied string that globally identifies the entity
            under evaluation
          example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        entity_metadata:
          type: string
          description: >-
            Additional arbtrary user-supplied metadta about the entity under
            evaluation
          example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        id:
          type: integer
          description: The ID of this evaluation
          example: 123
          format: int64
        input:
          type: string
          description: The input provided at evaluation time
          example: ''
          format: binary
        org_id:
          type: string
          description: The Harness organisation in which the evaluation was performed
          example: test-org
        project_id:
          type: string
          description: The Harness project in which the evaluation was performed
          example: test-project
        status:
          type: string
          description: The overall status of the evaluation indicating whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
        type:
          type: string
          description: The types of the entity under evaluation
          example: pipeline,service
      description: The result of a single evaluation
      example:
        account_id: XRQAjvT37acOiXx9PRaQMF
        action: onrun
        created: 1636370209475
        details:
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_connector_ref: .
                  git_default_branch: main
                  git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_default_branch_file_url: ''
                  git_default_branch_update_error:
                    explanation: >-
                      File with given filepath [file.rego] already exists in
                      Github, thus couldn't create a new file
                    hint: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                    message: >-
                      Please check if there's already a file [file.rego] in
                      Github repository [rego-demo] for the given filepath and
                      branch [main].
                  git_default_branch_updated: 1636669297674
                  git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                  git_file_url: ''
                  git_path: .harness/policy.rego
                  git_repo: github.com/org/repo,omitempty
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  policy_set_count: 3
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
        entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        id: 123
        input: ''
        org_id: test-org
        project_id: test-project
        status: error
        type: pipeline,service
      required:
        - id
        - status
        - entity
        - entity_metadata
        - type
        - action
        - account_id
        - org_id
        - project_id
        - created
        - input
        - details
    EvaluationCounts:
      type: object
      properties:
        error:
          type: integer
          description: Count of evaluations that have a status of 'error'
          example: 1303100151908230400
          format: int64
        pass:
          type: integer
          description: Count of evaluations that have a status of 'pass'
          example: 7702169031137759000
          format: int64
        warning:
          type: integer
          description: Count of evaluations that have a status of 'warning'
          example: 9046572490851966000
          format: int64
      description: Evaluation counts by status
      example:
        error: 340096524788087740
        pass: 2655229219909846500
        warning: 8925618092889901000
      required:
        - error
        - warning
        - pass
    EvaluationDetail:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy set
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        created:
          type: integer
          description: Time the policy set was created
          example: 1636669297674
          format: int64
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        details:
          type: array
          items:
            $ref: '#/components/schemas/EvaluatedPolicy'
          example:
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
              status: error
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
              status: error
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
              status: error
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_connector_ref: .
                git_default_branch: main
                git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_default_branch_file_url: ''
                git_default_branch_update_error:
                  explanation: >-
                    File with given filepath [file.rego] already exists in
                    Github, thus couldn't create a new file
                  hint: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                  message: >-
                    Please check if there's already a file [file.rego] in Github
                    repository [rego-demo] for the given filepath and branch
                    [main].
                git_default_branch_updated: 1636669297674
                git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
                git_file_url: ''
                git_path: .harness/policy.rego
                git_repo: github.com/org/repo,omitempty
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                policy_set_count: 3
                project_id: test-project
                rego: ''
                updated: 1636669297674
              status: error
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        identifier:
          type: string
          description: Identifier of the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy set
          default: ''
          example: test-org
        project_id:
          type: string
          description: Harness project ID associated with this policy set
          default: ''
          example: test-project
        status:
          type: string
          description: The overall status for this policy set indicating whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
          minLength: 1
        updated:
          type: integer
          description: Time the policy set was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        action: onrun
        created: 1636669297674
        description: Captures critical production policies
        details:
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_connector_ref: .
              git_default_branch: main
              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_url: ''
              git_default_branch_update_error:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
              git_default_branch_updated: 1636669297674
              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_file_url: ''
              git_path: .harness/policy.rego
              git_repo: github.com/org/repo,omitempty
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              policy_set_count: 3
              project_id: test-project
              rego: ''
              updated: 1636669297674
            status: error
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_connector_ref: .
              git_default_branch: main
              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_url: ''
              git_default_branch_update_error:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
              git_default_branch_updated: 1636669297674
              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_file_url: ''
              git_path: .harness/policy.rego
              git_repo: github.com/org/repo,omitempty
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              policy_set_count: 3
              project_id: test-project
              rego: ''
              updated: 1636669297674
            status: error
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_connector_ref: .
              git_default_branch: main
              git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_default_branch_file_url: ''
              git_default_branch_update_error:
                explanation: >-
                  File with given filepath [file.rego] already exists in Github,
                  thus couldn't create a new file
                hint: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
                message: >-
                  Please check if there's already a file [file.rego] in Github
                  repository [rego-demo] for the given filepath and branch
                  [main].
              git_default_branch_updated: 1636669297674
              git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
              git_file_url: ''
              git_path: .harness/policy.rego
              git_repo: github.com/org/repo,omitempty
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              policy_set_count: 3
              project_id: test-project
              rego: ''
              updated: 1636669297674
            status: error
        enabled: true
        identifier: policyset-1
        name: Production Policies
        org_id: test-org
        project_id: test-project
        status: error
        type: pipeline
        updated: 1636669297674
      required:
        - status
        - details
        - identifier
        - name
        - action
        - type
        - enabled
        - created
        - updated
        - account_id
        - org_id
        - project_id
        - entity_selector
    GenerateRequestBody:
      type: object
      properties:
        policyData:
          type: string
          description: policySample Data
          example: encryptedJsonData example
        query:
          type: string
          description: Text query
          example: query example
      example:
        policyData: encryptedJsonData example
        query: query example
    GitErrorResult:
      type: object
      properties:
        explanation:
          type: string
          description: the explanation of the error
          example: >-
            File with given filepath [file.rego] already exists in Github, thus
            couldn't create a new file
        hint:
          type: string
          description: the hint on how to resolve the error
          example: >-
            Please check if there's already a file [file.rego] in Github
            repository [rego-demo] for the given filepath and branch [main].
        message:
          type: string
          description: >-
            the message is a human-readable explanation specific to this
            occurrence of the problem
          example: >-
            Please check if there's already a file [file.rego] in Github
            repository [rego-demo] for the given filepath and branch [main].
      example:
        explanation: >-
          File with given filepath [file.rego] already exists in Github, thus
          couldn't create a new file
        hint: >-
          Please check if there's already a file [file.rego] in Github
          repository [rego-demo] for the given filepath and branch [main].
        message: >-
          Please check if there's already a file [file.rego] in Github
          repository [rego-demo] for the given filepath and branch [main].
      required:
        - message
        - explanation
        - hint
    LinkedPolicy:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        created:
          type: integer
          description: Time the policy was created
          example: 1636669297674
          format: int64
        identifier:
          type: string
          description: identifier of the policy
          example: policy-1
          minLength: 1
        name:
          type: string
          description: Name of the policy
          example: Pipeline Approval
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy
          default: ''
          example: test-org
        project_id:
          type: string
          description: Harness project ID associated with this policy
          default: ''
          example: test-project
        rego:
          type: string
          description: Rego that defines the policy
          example: ''
          minLength: 1
        severity:
          type: string
          description: The severity of this policy in this context
          example: warning
          enum:
            - warning
            - error
        updated:
          type: integer
          description: Time the policy was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        created: 1636669297674
        identifier: policy-1
        name: Pipeline Approval
        org_id: test-org
        project_id: test-project
        rego: ''
        severity: warning
        updated: 1636669297674
      required:
        - account_id
        - org_id
        - project_id
        - identifier
        - name
        - severity
        - rego
        - created
        - updated
    Linkedpolicyidentifier:
      type: object
      properties:
        identifier:
          type: string
          description: identifier of the policy with account. or org. prefix if needed
          example: policy-1
          minLength: 1
        severity:
          type: string
          description: The severity of this policy in this context
          example: warning
          enum:
            - warning
            - error
      example:
        identifier: policy-1
        severity: warning
      required:
        - identifier
        - severity
    PolicyManagementPolicy:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        created:
          type: integer
          description: Time the policy was created
          example: 1636669297674
          format: int64
        git_commit_sha:
          type: string
          description: The commit sha of the commit that last effected the file
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_connector_ref:
          type: string
          description: The harness connector used for authenticating on the git provider
          example: .
        git_default_branch:
          type: string
          description: >-
            The default branch, the service pulls in changes from from this
            branch for policy evaluation
          example: main
        git_default_branch_commit_sha:
          type: string
          description: >-
            The commit sha of the commit that last effected the file in the
            default branch
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_default_branch_file_id:
          type: string
          description: >-
            The file id of the file in the default branch, may be empty for
            bitbucket files
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_default_branch_file_url:
          type: string
          description: The url of the file in the default branch
          example: ''
        git_default_branch_update_error:
          $ref: '#/components/schemas/GitErrorResult'
        git_default_branch_updated:
          type: integer
          description: >-
            The last time the service successfully pulled in changes from the
            default branch
          example: 1636669297674
          format: int64
        git_file_id:
          type: string
          description: The file id of the file, may be empty for bitbucket files
          example: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_file_url:
          type: string
          description: The url of the file on the fit provider
          example: ''
        git_path:
          type: string
          description: The path to the file in the git repo
          example: .harness/policy.rego
        git_repo:
          type: string
          description: The git repo the policy resides in
          example: github.com/org/repo,omitempty
        identifier:
          type: string
          description: identifier of the policy
          example: policy-1
          minLength: 1
        name:
          type: string
          description: Name of the policy
          example: Pipeline Approval
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy
          default: ''
          example: test-org
        policy_set_count:
          type: integer
          description: Count of policy sets associated with this policy
          example: 3
          format: int64
        project_id:
          type: string
          description: Harness project ID associated with this policy
          default: ''
          example: test-project
        rego:
          type: string
          description: Rego that defines the policy
          example: ''
          minLength: 1
        updated:
          type: integer
          description: Time the policy was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        created: 1636669297674
        git_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_connector_ref: .
        git_default_branch: main
        git_default_branch_commit_sha: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_default_branch_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_default_branch_file_url: ''
        git_default_branch_update_error:
          explanation: >-
            File with given filepath [file.rego] already exists in Github, thus
            couldn't create a new file
          hint: >-
            Please check if there's already a file [file.rego] in Github
            repository [rego-demo] for the given filepath and branch [main].
          message: >-
            Please check if there's already a file [file.rego] in Github
            repository [rego-demo] for the given filepath and branch [main].
        git_default_branch_updated: 1636669297674
        git_file_id: 1369b45c20fc685113adcfd1a08a914180ff3c0d
        git_file_url: ''
        git_path: .harness/policy.rego
        git_repo: github.com/org/repo,omitempty
        identifier: policy-1
        name: Pipeline Approval
        org_id: test-org
        policy_set_count: 3
        project_id: test-project
        rego: ''
        updated: 1636669297674
      required:
        - identifier
        - name
        - rego
        - created
        - updated
        - account_id
        - org_id
        - project_id
    PolicyExample:
      type: object
      properties:
        desc:
          type: string
          description: Longer description of the example
          example: This is a pipeline example
        input:
          type: string
          description: Example input to illustrate the rego policy
          example: '{"message": "everyone"}'
        name:
          type: string
          description: Example name
          example: Pipeline example
        rego:
          type: string
          description: Example rego policy
          example: |-
            package test
            deny["should say hello world"] {input.message != "world"}
        type:
          type: string
          description: The type of entity illustrated in this example
          example: pipeline
        variables:
          type: array
          items:
            $ref: '#/components/schemas/Variable'
          description: The list of substitutable variables in the policy example
          example:
            - default:
                - JiraUpdate
                - HarnessApproval
              desc: The required steps that the policy enforces
              id: requiredsteps
              name: Required Steps
              type: selectOne
              values:
                - JiraUpdate
                - HarnessApproval
            - default:
                - JiraUpdate
                - HarnessApproval
              desc: The required steps that the policy enforces
              id: requiredsteps
              name: Required Steps
              type: selectOne
              values:
                - JiraUpdate
                - HarnessApproval
            - default:
                - JiraUpdate
                - HarnessApproval
              desc: The required steps that the policy enforces
              id: requiredsteps
              name: Required Steps
              type: selectOne
              values:
                - JiraUpdate
                - HarnessApproval
      description: Example policies and input
      example:
        desc: This is a pipeline example
        input: '{"message": "everyone"}'
        name: Pipeline example
        rego: |-
          package test
          deny["should say hello world"] {input.message != "world"}
        type: pipeline
        variables:
          - default:
              - JiraUpdate
              - HarnessApproval
            desc: The required steps that the policy enforces
            id: requiredsteps
            name: Required Steps
            type: selectOne
            values:
              - JiraUpdate
              - HarnessApproval
          - default:
              - JiraUpdate
              - HarnessApproval
            desc: The required steps that the policy enforces
            id: requiredsteps
            name: Required Steps
            type: selectOne
            values:
              - JiraUpdate
              - HarnessApproval
          - default:
              - JiraUpdate
              - HarnessApproval
            desc: The required steps that the policy enforces
            id: requiredsteps
            name: Required Steps
            type: selectOne
            values:
              - JiraUpdate
              - HarnessApproval
      required:
        - name
        - desc
        - type
        - rego
        - input
    PolicyHealth:
      type: object
      properties:
        total_evaluation_count:
          type: integer
          description: Total number of evaluations that have occurred
          example: 1806764845963671800
          format: int64
        total_evaluation_entity_count:
          $ref: '#/components/schemas/EvaluationCounts'
        total_policy_count:
          type: integer
          description: Total number of policies stored
          example: 1936033585039037200
          format: int64
        total_policy_set_count:
          type: integer
          description: Total number of policy sets stored
          example: 8230216735232623000
          format: int64
        total_policy_set_entity_count:
          type: object
          description: Total number of policy sets by type
          example:
            Consequatur ipsa aperiam quaerat veritatis qui nihil.: 7408824721263778000
            Id sed sunt magnam non et similique.: 7727365040945018000
            Qui modi est doloremque minus excepturi.: 4629846364625862000
          additionalProperties:
            type: integer
            example: 6122481516821894000
            format: int64
      description: Policy health metrics
      example:
        total_evaluation_count: 912181450088740900
        total_evaluation_entity_count:
          error: 5089901746955059000
          pass: 8819252736165018000
          warning: 6206446740737916000
        total_policy_count: 3481527013630481400
        total_policy_set_count: 7301593525736415000
        total_policy_set_entity_count:
          Ea vel odio quo.: 5342886144574306000
          Nihil pariatur.: 5303474591449513000
      required:
        - total_policy_count
        - total_policy_set_count
        - total_policy_set_entity_count
        - total_evaluation_count
        - total_evaluation_entity_count
    PolicySample:
      type: object
      properties:
        policy:
          type: string
          description: Build identifier
          example: policy example
        status:
          type: string
          description: status
          example: SUCCESS
      example:
        policy: policy example
        status: SUCCESS
      required:
        - status
        - policy
    PolicyManagementPolicySet:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy set
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        created:
          type: integer
          description: Time the policy set was created
          example: 1636669297674
          format: int64
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        entity_selector:
          type: string
          description: >-
            A string enum value which determines which entities the policy set
            applies to during evaluation
          example: all_entities_in_resource_groups
          enum:
            - all_entities_in_scope
            - all_entities_in_resource_groups
        identifier:
          type: string
          description: Identifier of the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy set
          default: ''
          example: test-org
        policies:
          type: array
          items:
            $ref: '#/components/schemas/LinkedPolicy'
          description: Policies linked to this policy set
          example:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
        project_id:
          type: string
          description: Harness project ID associated with this policy set
          default: ''
          example: test-project
        resource_groups:
          type: array
          items:
            $ref: '#/components/schemas/PolicyManagementResourceGroup'
          description: The groups of resources that this policy set should be applied to
          example:
            - account_id: Nostrum sit aspernatur sit reiciendis.
              created: 7665029266794501000
              identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
              name: Dolor rerum.
              org_id: Aut impedit.
              project_id: Et iusto accusamus dolores ipsa animi sed.
            - account_id: Nostrum sit aspernatur sit reiciendis.
              created: 7665029266794501000
              identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
              name: Dolor rerum.
              org_id: Aut impedit.
              project_id: Et iusto accusamus dolores ipsa animi sed.
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
          minLength: 1
        updated:
          type: integer
          description: Time the policy set was last updated
          example: 1636669297674
          format: int64
        yaml_version:
          type: string
          description: Harness yaml version associated with this policySet
          default: '0'
          example: '0'
          enum:
            - '0'
            - '1'
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        action: onrun
        created: 1636669297674
        description: Captures critical production policies
        enabled: true
        entity_selector: all_entities_in_resource_groups
        identifier: policyset-1
        name: Production Policies
        org_id: test-org
        policies:
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
        project_id: test-project
        resource_groups:
          - account_id: Nostrum sit aspernatur sit reiciendis.
            created: 7665029266794501000
            identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
            name: Dolor rerum.
            org_id: Aut impedit.
            project_id: Et iusto accusamus dolores ipsa animi sed.
          - account_id: Nostrum sit aspernatur sit reiciendis.
            created: 7665029266794501000
            identifier: Molestiae quam eos tempore voluptatibus est cupiditate.
            name: Dolor rerum.
            org_id: Aut impedit.
            project_id: Et iusto accusamus dolores ipsa animi sed.
        type: pipeline
        updated: 1636669297674
        yaml_version: '0'
      required:
        - identifier
        - name
        - action
        - type
        - enabled
        - created
        - updated
        - account_id
        - org_id
        - project_id
        - entity_selector
    PolicyToPolicySet:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy set
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        created:
          type: integer
          description: Time the policy set was created
          example: 1636669297674
          format: int64
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        identifier:
          type: string
          description: Identifier of the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy set
          default: ''
          example: test-org
        project_id:
          type: string
          description: Harness project ID associated with this policy set
          default: ''
          example: test-project
        updated:
          type: integer
          description: Time the policy set was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        action: onrun
        created: 1636669297674
        enabled: true
        identifier: policyset-1
        name: Production Policies
        org_id: test-org
        project_id: test-project
        updated: 1636669297674
      required:
        - identifier
        - name
        - action
        - enabled
        - created
        - updated
        - account_id
        - org_id
        - project_id
    PolicyManagementResourceGroup:
      type: object
      properties:
        account_id:
          type: string
          description: resource group account id
          example: Mollitia odio molestiae qui sed aperiam eos.
        created:
          type: integer
          description: resource group timestamp
          example: 1204106503275837400
          format: int64
        identifier:
          type: string
          description: resource group identifier
          example: Consequatur occaecati aut.
        name:
          type: string
          description: resource group name
          example: Magni quidem natus.
        org_id:
          type: string
          description: resource group org id
          example: Voluptas fuga.
        project_id:
          type: string
          description: resource group project identifier
          example: Nostrum expedita provident sit explicabo laborum error.
      example:
        account_id: Nulla ut odio aut id consequatur et.
        created: 6225660903727564000
        identifier: Quisquam occaecati quis deleniti dolorum natus.
        name: Expedita quia et sed aut.
        org_id: Tenetur quaerat necessitatibus excepturi.
        project_id: Earum aliquam dicta ipsum ipsum ducimus et.
      required:
        - account_id
        - org_id
        - project_id
        - identifier
        - name
        - created
    ResourceGroupIdentifier:
      type: object
      properties:
        account_id:
          type: string
          description: resource group account id
          example: Dolorum sint voluptatem in.
        identifier:
          type: string
          description: resource group identifier
          example: Voluptatem asperiores magni et iste.
        org_id:
          type: string
          description: resource group org id
          example: Neque accusantium minima accusamus laboriosam possimus illo.
        project_id:
          type: string
          description: resource group project identifier
          example: Modi deleniti veniam.
      example:
        account_id: Laborum iusto veniam quidem ut qui.
        identifier: Qui et non aut.
        org_id: Beatae aperiam.
        project_id: Aspernatur aperiam sit voluptatem laborum tempore maiores.
      required:
        - account_id
        - org_id
        - project_id
        - identifier
    ServiceVersion:
      type: object
      properties:
        commit:
          type: string
          description: Build identifier
          example: 96381692bf3a2bd7904769c6886e832435768b57
        version:
          type: string
          description: Version number
          example: v0.123.0
      example:
        commit: 96381692bf3a2bd7904769c6886e832435768b57
        version: v0.123.0
      required:
        - version
        - commit
    UpdateRequestBody:
      type: object
      properties:
        name:
          type: string
          description: The name of the policy
          example: Check that an approval step is present
        rego:
          type: string
          description: The rego that defines the policy policy
          example: |-
            package test
            deny["should say hello world"] {input.message != "world"}
      example:
        name: Check that an approval step is present
        rego: |-
          package test
          deny["should say hello world"] {input.message != "world"}
    UpdateRequestBody2:
      type: object
      properties:
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        entity_selector:
          type: string
          description: >-
            A string enum value which determines which entities the policy set
            applies to during evaluation. This feature is not available for all
            accounts, Contact support if you wish to have it enabled.
          example: all_entities_in_resource_groups
          enum:
            - all_entities_in_scope
            - all_entities_in_resource_groups
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
        policies:
          type: array
          items:
            $ref: '#/components/schemas/Linkedpolicyidentifier'
          description: Policies linked to this policy set
          example:
            - identifier: policy-1
              severity: warning
            - identifier: policy-1
              severity: warning
            - identifier: policy-1
              severity: warning
        resource_groups:
          type: array
          items:
            $ref: '#/components/schemas/ResourceGroupIdentifier'
          description: >-
            Resource groups that contain the resources that this policy set
            should be evaluated for. Resource groups are not supported for flag
            or custom policy sets. This feature is not available for all
            accounts, Contact support if you wish to have it enabled.
          example:
            - account_id: Aperiam iusto ut exercitationem delectus.
              identifier: Impedit et.
              org_id: Aut atque necessitatibus est maxime.
              project_id: Natus voluptas dolor sint.
            - account_id: Aperiam iusto ut exercitationem delectus.
              identifier: Impedit et.
              org_id: Aut atque necessitatibus est maxime.
              project_id: Natus voluptas dolor sint.
            - account_id: Aperiam iusto ut exercitationem delectus.
              identifier: Impedit et.
              org_id: Aut atque necessitatibus est maxime.
              project_id: Natus voluptas dolor sint.
            - account_id: Aperiam iusto ut exercitationem delectus.
              identifier: Impedit et.
              org_id: Aut atque necessitatibus est maxime.
              project_id: Natus voluptas dolor sint.
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
      example:
        action: onrun
        description: Captures critical production policies
        enabled: true
        entity_selector: all_entities_in_resource_groups
        name: Production Policies
        policies:
          - identifier: policy-1
            severity: warning
          - identifier: policy-1
            severity: warning
        resource_groups:
          - account_id: Aperiam iusto ut exercitationem delectus.
            identifier: Impedit et.
            org_id: Aut atque necessitatibus est maxime.
            project_id: Natus voluptas dolor sint.
          - account_id: Aperiam iusto ut exercitationem delectus.
            identifier: Impedit et.
            org_id: Aut atque necessitatibus est maxime.
            project_id: Natus voluptas dolor sint.
          - account_id: Aperiam iusto ut exercitationem delectus.
            identifier: Impedit et.
            org_id: Aut atque necessitatibus est maxime.
            project_id: Natus voluptas dolor sint.
        type: pipeline
    Variable:
      type: object
      properties:
        default:
          type: array
          items:
            type: string
            example: Magni deserunt ab.
          description: The values that are selected by default
          example:
            - JiraUpdate
            - HarnessApproval
        desc:
          type: string
          description: Longer description of the variable to substitute
          example: The required steps that the policy enforces
        id:
          type: string
          description: The id of the variable to substitute in the rego
          example: requiredsteps
        name:
          type: string
          description: The human readable name of the variable to substitute in the rego
          example: Required Steps
        type:
          type: string
          description: The variable type
          example: selectOne
          enum:
            - text
            - textMultiple
            - selectOne
            - selectMultiple
        values:
          type: array
          items:
            type: string
            example: Rerum nesciunt saepe.
          description: Pre populated sample values to substitute the variable with
          example:
            - JiraUpdate
            - HarnessApproval
      example:
        default:
          - JiraUpdate
          - HarnessApproval
        desc: The required steps that the policy enforces
        id: requiredsteps
        name: Required Steps
        type: selectOne
        values:
          - JiraUpdate
          - HarnessApproval
    DashboardDownloadResponse:
      type: object
      properties:
        file:
          type: string
          format: byte
    DashboardsErrorResponse:
      type: object
      properties:
        error:
          type: string
        code:
          type: integer
        correlationId:
          type: string
        responseMessages:
          type: string
      required:
        - code
        - error
        - responseMessages
    DashboardElements:
      type: object
      properties:
        id:
          type: string
        dashboard_id:
          type: string
        title_text:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        type:
          type: string
      required:
        - dashboard_id
        - id
        - type
    GetDashboardElementsResponse:
      type: object
      properties:
        resource:
          type: array
          items:
            $ref: '#/components/schemas/DashboardElements'
      required:
        - resource
    DashboardFilter:
      type: object
      properties:
        id:
          type: string
        dashboard_id:
          type: string
        default_value:
          type: string
        explore:
          type: string
        model:
          type: string
        name:
          type: string
          nullable: true
        row:
          type: integer
          nullable: true
        title:
          type: string
          nullable: true
        ui_config:
          type: object
      required:
        - dashboard_id
        - default_value
        - explore
        - id
        - model
        - ui_config
    GetDashboardFiltersResponse:
      type: object
      properties:
        resource:
          type: array
          items:
            $ref: '#/components/schemas/DashboardFilter'
      required:
        - resource
    CloneDashboardRequestBody:
      type: object
      properties:
        dashboardId:
          type: string
        folderId:
          type: string
        name:
          type: string
        description:
          type: string
      required:
        - dashboardId
    ClonedDashboard:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        description:
          type: string
        resourceIdentifier:
          type: string
      required:
        - description
        - id
        - resourceIdentifier
        - title
    ClonedDashboardResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/ClonedDashboard'
      required:
        - resource
    DashboardFolder:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        created_at:
          type: string
        parent_id:
          type: string
      required:
        - created_at
        - id
        - parent_id
        - title
    Dashboard:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - ACCOUNT
            - SHARED
        description:
          type: string
        title:
          type: string
        view_count:
          type: integer
        favorite_count:
          type: integer
        created_at:
          type: string
        data_source:
          type: array
          items:
            type: string
            enum:
              - CD
              - CE
              - CET
              - CF
              - CHAOS
              - CI
              - DBOPS
              - HARNESS
              - IACM
              - IDP
              - SRM
              - SSCA
              - STO
              - UNIVERSAL
        models:
          type: array
          items:
            type: string
            enum:
              - CD
              - CE
              - CET
              - CF
              - CG_CD
              - CHAOS
              - CI
              - CI_TI
              - DBOPS
              - IACM
              - IDP
              - SRM
              - SSCA
              - STO
              - UNIVERSAL
        last_accessed_at:
          type: string
        resourceIdentifier:
          type: string
        folder:
          $ref: '#/components/schemas/DashboardFolder'
      required:
        - created_at
        - data_source
        - description
        - favorite_count
        - folder
        - id
        - last_accessed_at
        - models
        - resourceIdentifier
        - title
        - type
        - view_count
    GetDashboardResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/Dashboard'
      required:
        - resource
    CreateDashboardRequest:
      type: object
      properties:
        folderId:
          type: string
        name:
          type: string
        description:
          type: string
        dashboardId:
          type: integer
      required:
        - folderId
        - name
    UpdateDashboardResponseResource:
      type: object
      properties:
        id:
          type: integer
        title:
          type: string
        resourceIdentifier:
          type: string
        description:
          type: string
      required:
        - description
        - id
        - resourceIdentifier
        - title
    UpdateDashboardResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/UpdateDashboardResponseResource'
      required:
        - resource
    DeleteDashboardRequest:
      type: object
      properties:
        dashboardId:
          type: string
      required:
        - dashboardId
    DeleteDashboardResponseResource:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    DeleteDashboardResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/DeleteDashboardResponseResource'
      required:
        - resource
    CreateFolderRequestBody:
      type: object
      properties:
        name:
          type: string
      required:
        - name
    FolderChildren:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
      required:
        - id
        - name
    Folder:
      type: object
      properties:
        id:
          type: string
        created_at:
          type: string
        child_count:
          type: integer
        sub_folders:
          type: array
          items:
            $ref: '#/components/schemas/Folder'
        Children:
          type: array
          items:
            $ref: '#/components/schemas/FolderChildren'
        name:
          type: string
        type:
          type: string
          enum:
            - ACCOUNT
            - SHARED
            - OOTB
        permission:
          type: string
          enum:
            - core_dashboards_view
            - core_dashboards_create
            - core_dashboards_delete
            - core_dashboards_edit
      required:
        - id
        - name
        - sub_folders
        - type
    GetFolderResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/Folder'
      required:
        - resource
    UpdateFolderRequestBody:
      type: object
      properties:
        name:
          type: string
      required:
        - name
    UpdateDashboardFilterRequest:
      type: object
      properties:
        default_value:
          type: string
        name:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        row:
          type: integer
          nullable: true
        ui_config:
          type: object
    GetDashboardFilterResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/DashboardFilter'
      required:
        - resource
    DownloadCsvDashboardResponse:
      type: object
      properties:
        file:
          type: string
          format: byte
    DownloadPdfDashboardResponse:
      type: object
      properties:
        file:
          type: string
          format: byte
    ScheduleReportRequestBody:
      type: object
      properties:
        dashboard_id:
          type: string
        destination_emails:
          type: string
        file_type:
          type: string
          enum:
            - csv_zip
            - assembled_pdf
            - wysiwyg_pdf
            - wysiwyg_png
        name:
          type: string
        message:
          type: string
        filters:
          type: string
      required:
        - dashboard_id
        - destination_emails
        - file_type
        - name
    ScheduleReportResponseBody:
      type: object
      properties:
        status:
          type: string
      required:
        - status
    ScheduleReportResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/ScheduleReportResponseBody'
      required:
        - resource
    QueryTaskDetails:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          enum:
            - added
            - error
            - killed
            - running
            - complete
            - timeout
      required:
        - status
    DownloadQueryTaskResponse:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/QueryTaskDetails'
      required:
        - resource
    ApiFileDiffRequest:
      properties:
        path:
          type: string
        start_line:
          type: integer
      type: object
    EnumCheckPayloadKind:
      enum:
        - ''
        - markdown
        - pipeline
        - raw
      type: string
    EnumCheckStatus:
      enum:
        - error
        - failure
        - failure_ignored
        - pending
        - running
        - success
      type: string
    EnumContentEncodingType:
      enum:
        - base64
        - utf8
      type: string
    EnumFileDiffStatus:
      type: string
    EnumGitSignatureResult:
      enum:
        - bad
        - good
        - invalid
        - key_expired
        - revoked
        - unsupported
        - unverified
      type: string
    EnumLabelColor:
      enum:
        - blue
        - brown
        - cyan
        - green
        - indigo
        - lime
        - mint
        - orange
        - pink
        - purple
        - red
        - violet
        - yellow
      type: string
    EnumLabelType:
      enum:
        - dynamic
        - static
      type: string
    EnumMergeCheckStatus:
      type: string
    EnumMergeMethod:
      enum:
        - fast-forward
        - merge
        - rebase
        - squash
      type: string
    EnumPrincipalType:
      enum:
        - service
        - serviceaccount
        - user
      type: string
    EnumPublicKeyScheme:
      enum:
        - pgp
        - ssh
      type: string
    EnumPullReqActivityKind:
      enum:
        - change-comment
        - comment
        - system
      type: string
    EnumPullReqActivityType:
      enum:
        - branch-delete
        - branch-restore
        - branch-update
        - code-comment
        - comment
        - label-modify
        - merge
        - review-submit
        - reviewer-add
        - reviewer-delete
        - state-change
        - target-branch-change
        - title-change
        - user-group-reviewer-add
        - user-group-reviewer-delete
      type: string
    EnumPullReqCommentStatus:
      enum:
        - active
        - resolved
      type: string
    EnumPullReqReviewDecision:
      enum:
        - approved
        - changereq
        - pending
        - reviewed
      type: string
    EnumPullReqReviewerType:
      enum:
        - assigned
        - code_owners
        - default
        - requested
        - self_assigned
      type: string
    EnumPullReqState:
      enum:
        - closed
        - merged
        - open
      type: string
    EnumRepoState:
      nullable: true
      type: integer
    EnumResourceType:
      enum:
        - CONNECTOR
        - GITSPACE
        - INFRAPROVIDER
        - PIPELINE
        - REGISTRY
        - REPOSITORY
        - SECRET
        - SERVICE
        - SERVICEACCOUNT
        - SPACE
        - TEMPLATE
        - USER
      type: string
    EnumRuleState:
      enum:
        - active
        - disabled
        - monitor
      nullable: true
      type: string
    EnumRuleType:
      enum:
        - branch
        - push
        - tag
      type: string
    EnumWebhookExecutionResult:
      enum:
        - fatal_error
        - retriable_error
        - success
      nullable: true
      type: string
    EnumWebhookParent:
      enum:
        - registry
        - repo
        - space
      type: string
    EnumWebhookTrigger:
      enum:
        - artifact_created
        - artifact_deleted
        - branch_created
        - branch_deleted
        - branch_updated
        - pullreq_branch_updated
        - pullreq_closed
        - pullreq_comment_created
        - pullreq_comment_status_updated
        - pullreq_comment_updated
        - pullreq_created
        - pullreq_label_assigned
        - pullreq_merged
        - pullreq_reopened
        - pullreq_review_submitted
        - pullreq_target_branch_changed
        - pullreq_updated
        - tag_created
        - tag_deleted
        - tag_updated
      type: string
    GitBlamePart:
      properties:
        commit:
          $ref: '#/components/schemas/GitCommit'
        lines:
          items:
            type: string
          nullable: true
          type: array
        previous:
          $ref: '#/components/schemas/GitBlamePartPrevious'
      type: object
    GitBlamePartPrevious:
      properties:
        commit_sha:
          $ref: '#/components/schemas/ShaSHA'
        file_name:
          type: string
      type: object
    GitCommit:
      nullable: true
      properties:
        author:
          $ref: '#/components/schemas/GitSignature'
        committer:
          $ref: '#/components/schemas/GitSignature'
        file_stats:
          items:
            $ref: '#/components/schemas/GitCommitFileStats'
          type: array
        message:
          type: string
        parent_shas:
          items:
            $ref: '#/components/schemas/ShaSHA'
          type: array
        sha:
          $ref: '#/components/schemas/ShaSHA'
        title:
          type: string
      type: object
    GitCommitFileStats:
      type: object
    GitFileAction:
      enum:
        - CREATE
        - UPDATE
        - DELETE
        - MOVE
        - PATCH_TEXT
      type: string
    GitFileDiff:
      properties:
        additions:
          type: integer
        changes:
          type: integer
        deletions:
          type: integer
        is_binary:
          type: boolean
        is_submodule:
          type: boolean
        old_path:
          type: string
        old_sha:
          type: string
        patch:
          items:
            minimum: 0
            type: integer
          type: array
        path:
          type: string
        sha:
          type: string
        status:
          $ref: '#/components/schemas/EnumFileDiffStatus'
      type: object
    GitIdentity:
      nullable: true
      properties:
        email:
          type: string
        name:
          type: string
      type: object
    GitSignature:
      properties:
        identity:
          $ref: '#/components/schemas/GitIdentity'
        when:
          format: date-time
          type: string
      type: object
    ImporterPipelineOption:
      enum:
        - convert
        - ignore
      type: string
    ImporterProvider:
      properties:
        host:
          type: string
        password:
          type: string
        type:
          $ref: '#/components/schemas/ImporterProviderType'
        username:
          type: string
      type: object
    ImporterProviderType:
      enum:
        - github
        - gitlab
        - bitbucket
        - stash
        - gitea
        - gogs
        - azure
      type: string
    OpenapiCalculateCommitDivergenceRequest:
      properties:
        max_count:
          type: integer
        requests:
          items:
            $ref: '#/components/schemas/RepoCommitDivergenceRequest'
          nullable: true
          type: array
      type: object
    OpenapiCommentApplySuggestionstRequest:
      properties:
        bypass_rules:
          type: boolean
        dry_run_rules:
          type: boolean
        message:
          type: string
        suggestions:
          items:
            $ref: '#/components/schemas/PullreqSuggestionReference'
          nullable: true
          type: array
        title:
          type: string
      type: object
    OpenapiCommentCreatePullReqRequest:
      properties:
        line_end:
          type: integer
        line_end_new:
          type: boolean
        line_start:
          type: integer
        line_start_new:
          type: boolean
        parent_id:
          type: integer
        path:
          type: string
        source_commit_sha:
          type: string
        target_commit_sha:
          type: string
        text:
          type: string
      type: object
    OpenapiCommentStatusPullReqRequest:
      properties:
        status:
          $ref: '#/components/schemas/EnumPullReqCommentStatus'
      type: object
    OpenapiCommentUpdatePullReqRequest:
      properties:
        text:
          type: string
      type: object
    OpenapiCommitFilesRequest:
      properties:
        actions:
          items:
            $ref: '#/components/schemas/RepoCommitFileAction'
          nullable: true
          type: array
        author:
          $ref: '#/components/schemas/GitIdentity'
        branch:
          type: string
        bypass_rules:
          type: boolean
        dry_run_rules:
          type: boolean
        message:
          type: string
        new_branch:
          type: string
        title:
          type: string
      type: object
    OpenapiContent:
      oneOf:
        - $ref: '#/components/schemas/RepoFileContent'
        - $ref: '#/components/schemas/OpenapiDirContent'
        - $ref: '#/components/schemas/RepoSymlinkContent'
        - $ref: '#/components/schemas/RepoSubmoduleContent'
      type: object
    OpenapiContentInfo:
      properties:
        latest_commit:
          $ref: '#/components/schemas/TypesCommit'
        name:
          type: string
        path:
          type: string
        sha:
          type: string
        type:
          $ref: '#/components/schemas/OpenapiContentType'
      type: object
    OpenapiContentType:
      enum:
        - file
        - dir
        - symlink
        - submodule
      type: string
    OpenapiCreateBranchRequest:
      properties:
        bypass_rules:
          type: boolean
        dry_run_rules:
          type: boolean
        name:
          type: string
        target:
          type: string
      type: object
    OpenapiCreatePullReqRequest:
      properties:
        bypass_rules:
          type: boolean
        description:
          type: string
        is_draft:
          type: boolean
        labels:
          items:
            $ref: '#/components/schemas/TypesPullReqLabelAssignInput'
          nullable: true
          type: array
        reviewer_ids:
          items:
            type: integer
          nullable: true
          type: array
        source_branch:
          type: string
        source_repo_ref:
          type: string
        target_branch:
          type: string
        title:
          type: string
        user_group_reviewer_ids:
          items:
            type: integer
          nullable: true
          type: array
      type: object
    OpenapiCreateRepoWebhookRequest:
      properties:
        description:
          type: string
        display_name:
          type: string
        enabled:
          type: boolean
        identifier:
          type: string
        insecure:
          type: boolean
        secret:
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/EnumWebhookTrigger'
          nullable: true
          type: array
        uid:
          deprecated: true
          type: string
        url:
          type: string
      type: object
    OpenapiCreateRepositoryRequest:
      properties:
        default_branch:
          type: string
        description:
          type: string
        fork_id:
          type: integer
        git_ignore:
          type: string
        identifier:
          type: string
        is_public:
          type: boolean
        license:
          type: string
        parent_ref:
          type: string
        readme:
          type: boolean
        uid:
          deprecated: true
          type: string
      type: object
    OpenapiCreateTagRequest:
      properties:
        bypass_rules:
          type: boolean
        dry_run_rules:
          type: boolean
        message:
          type: string
        name:
          type: string
        target:
          type: string
      type: object
    OpenapiDirContent:
      properties:
        entries:
          items:
            $ref: '#/components/schemas/OpenapiContentInfo'
          nullable: true
          type: array
      type: object
    OpenapiFileViewAddPullReqRequest:
      properties:
        commit_sha:
          type: string
        path:
          type: string
      type: object
    OpenapiGeneralSettingsRequest:
      properties:
        file_size_limit:
          description: file size limit in bytes
          nullable: true
          type: integer
        git_lfs_enabled:
          nullable: true
          type: boolean
      type: object
    OpenapiGetContentOutput:
      properties:
        content:
          $ref: '#/components/schemas/OpenapiContent'
        latest_commit:
          $ref: '#/components/schemas/TypesCommit'
        name:
          type: string
        path:
          type: string
        sha:
          type: string
        type:
          $ref: '#/components/schemas/OpenapiContentType'
      type: object
    OpenapiMergePullReq:
      properties:
        bypass_rules:
          type: boolean
        delete_source_branch:
          type: boolean
        dry_run:
          type: boolean
        dry_run_rules:
          type: boolean
        message:
          type: string
        method:
          $ref: '#/components/schemas/EnumMergeMethod'
        source_sha:
          type: string
        title:
          type: string
      type: object
    OpenapiPathsDetailsRequest:
      properties:
        paths:
          items:
            type: string
          nullable: true
          type: array
      type: object
    OpenapiPostRawDiffRequest:
      items:
        $ref: '#/components/schemas/ApiFileDiffRequest'
      nullable: true
      type: array
    OpenapiPostRawPRDiffRequest:
      items:
        $ref: '#/components/schemas/ApiFileDiffRequest'
      nullable: true
      type: array
    OpenapiPullReqAssignLabelInput:
      properties:
        label_id:
          type: integer
        value:
          type: string
        value_id:
          nullable: true
          type: integer
      type: object
    OpenapiRestoreRequest:
      properties:
        new_identifier:
          nullable: true
          type: string
        new_parent_ref:
          nullable: true
          type: string
      type: object
    OpenapiReviewSubmitPullReqRequest:
      properties:
        commit_sha:
          type: string
        decision:
          $ref: '#/components/schemas/EnumPullReqReviewDecision'
      type: object
    OpenapiReviewerAddPullReqRequest:
      properties:
        reviewer_id:
          type: integer
      type: object
    OpenapiRule:
      properties:
        created:
          type: integer
        created_by:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        definition:
          $ref: '#/components/schemas/OpenapiRuleDefinition'
        description:
          type: string
        identifier:
          type: string
        pattern:
          $ref: '#/components/schemas/ProtectionPattern'
        repo_target:
          $ref: '#/components/schemas/ProtectionRepoTarget'
        repositories:
          additionalProperties:
            $ref: '#/components/schemas/TypesRepositoryCore'
          nullable: true
          type: object
        scope:
          type: integer
        state:
          $ref: '#/components/schemas/EnumRuleState'
        type:
          $ref: '#/components/schemas/OpenapiRuleType'
        updated:
          type: integer
        user_groups:
          additionalProperties:
            $ref: '#/components/schemas/TypesUserGroupInfo'
          nullable: true
          type: object
        users:
          additionalProperties:
            $ref: '#/components/schemas/TypesPrincipalInfo'
          nullable: true
          type: object
      type: object
    OpenapiRuleDefinition:
      oneOf:
        - $ref: '#/components/schemas/ProtectionBranch'
        - $ref: '#/components/schemas/ProtectionTag'
        - $ref: '#/components/schemas/ProtectionPush'
      type: object
    OpenapiRuleType:
      enum:
        - branch
        - tag
        - push
      type: string
    OpenapiSecuritySettingsRequest:
      properties:
        principal_committer_match:
          nullable: true
          type: boolean
        secret_scanning_enabled:
          nullable: true
          type: boolean
        vulnerability_scanning_mode:
          $ref: '#/components/schemas/SettingsVulnerabilityScanningMode'
      type: object
    OpenapiStatePullReqRequest:
      properties:
        is_draft:
          type: boolean
        state:
          $ref: '#/components/schemas/EnumPullReqState'
      type: object
    OpenapiUpdateDefaultBranchRequest:
      properties:
        name:
          type: string
      type: object
    OpenapiUpdatePullReqRequest:
      properties:
        description:
          type: string
        title:
          type: string
      type: object
    OpenapiUpdateRepoPublicAccessRequest:
      properties:
        is_public:
          type: boolean
      type: object
    OpenapiUpdateRepoRequest:
      properties:
        description:
          nullable: true
          type: string
        state:
          $ref: '#/components/schemas/EnumRepoState'
      type: object
    OpenapiUpdateRepoWebhookRequest:
      properties:
        description:
          nullable: true
          type: string
        display_name:
          nullable: true
          type: string
        enabled:
          nullable: true
          type: boolean
        identifier:
          nullable: true
          type: string
        insecure:
          nullable: true
          type: boolean
        secret:
          nullable: true
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/EnumWebhookTrigger'
          nullable: true
          type: array
        uid:
          deprecated: true
          nullable: true
          type: string
        url:
          nullable: true
          type: string
      type: object
    OpenapiUpdateSpaceWebhookRequest:
      properties:
        description:
          nullable: true
          type: string
        display_name:
          nullable: true
          type: string
        enabled:
          nullable: true
          type: boolean
        identifier:
          nullable: true
          type: string
        insecure:
          nullable: true
          type: boolean
        secret:
          nullable: true
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/EnumWebhookTrigger'
          nullable: true
          type: array
        uid:
          deprecated: true
          nullable: true
          type: string
        url:
          nullable: true
          type: string
      type: object
    OpenapiUserGroupReviewerAddRequest:
      properties:
        usergroup_id:
          type: integer
      type: object
    OpenapiWebhookType:
      properties:
        created:
          type: integer
        created_by:
          type: integer
        description:
          type: string
        display_name:
          type: string
        enabled:
          type: boolean
        has_secret:
          type: boolean
        id:
          type: integer
        identifier:
          type: string
        insecure:
          type: boolean
        latest_execution_result:
          $ref: '#/components/schemas/EnumWebhookExecutionResult'
        parent_id:
          type: integer
        parent_type:
          $ref: '#/components/schemas/EnumWebhookParent'
        scope:
          type: integer
        triggers:
          items:
            $ref: '#/components/schemas/EnumWebhookTrigger'
          nullable: true
          type: array
        updated:
          type: integer
        url:
          type: string
        version:
          type: integer
      type: object
    ProtectionBranch:
      properties:
        bypass:
          $ref: '#/components/schemas/ProtectionDefBypass'
        lifecycle:
          $ref: '#/components/schemas/ProtectionDefBranchLifecycle'
        pullreq:
          $ref: '#/components/schemas/ProtectionDefPullReq'
      type: object
    ProtectionDefApprovals:
      properties:
        require_code_owners:
          type: boolean
        require_latest_commit:
          type: boolean
        require_minimum_count:
          type: integer
        require_minimum_default_reviewer_count:
          type: integer
        require_no_change_request:
          type: boolean
      type: object
    ProtectionDefBranchLifecycle:
      properties:
        create_forbidden:
          type: boolean
        delete_forbidden:
          type: boolean
        update_forbidden:
          type: boolean
        update_force_forbidden:
          type: boolean
      type: object
    ProtectionDefBypass:
      properties:
        repo_owners:
          type: boolean
        user_group_ids:
          items:
            type: integer
          type: array
        user_ids:
          items:
            type: integer
          type: array
      type: object
    ProtectionDefComments:
      properties:
        require_resolve_all:
          type: boolean
      type: object
    ProtectionDefMerge:
      properties:
        block:
          type: boolean
        delete_branch:
          type: boolean
        strategies_allowed:
          items:
            $ref: '#/components/schemas/EnumMergeMethod'
          type: array
      type: object
    ProtectionDefPullReq:
      properties:
        approvals:
          $ref: '#/components/schemas/ProtectionDefApprovals'
        comments:
          $ref: '#/components/schemas/ProtectionDefComments'
        merge:
          $ref: '#/components/schemas/ProtectionDefMerge'
        reviewers:
          $ref: '#/components/schemas/ProtectionDefReviewers'
        status_checks:
          $ref: '#/components/schemas/ProtectionDefStatusChecks'
      type: object
    ProtectionDefPush:
      properties:
        file_size_limit:
          type: integer
        principal_committer_match:
          type: boolean
        secret_scanning_enabled:
          type: boolean
      type: object
    ProtectionDefReviewers:
      properties:
        default_reviewer_ids:
          items:
            type: integer
          type: array
        default_user_group_reviewer_ids:
          items:
            type: integer
          type: array
        request_code_owners:
          type: boolean
      type: object
    ProtectionDefStatusChecks:
      properties:
        require_identifiers:
          items:
            type: string
          type: array
      type: object
    ProtectionDefTagLifecycle:
      properties:
        create_forbidden:
          type: boolean
        delete_forbidden:
          type: boolean
        update_force_forbidden:
          type: boolean
      type: object
    ProtectionPattern:
      nullable: true
      properties:
        default:
          type: boolean
        exclude:
          items:
            type: string
          type: array
        include:
          items:
            type: string
          type: array
      type: object
    ProtectionPush:
      properties:
        bypass:
          $ref: '#/components/schemas/ProtectionDefBypass'
        push:
          $ref: '#/components/schemas/ProtectionDefPush'
      type: object
    ProtectionRepoTarget:
      nullable: true
      properties:
        exclude:
          $ref: '#/components/schemas/ProtectionRepoTargetFilter'
        include:
          $ref: '#/components/schemas/ProtectionRepoTargetFilter'
      type: object
    ProtectionRepoTargetFilter:
      properties:
        ids:
          items:
            type: integer
          type: array
        patterns:
          items:
            type: string
          type: array
      type: object
    ProtectionTag:
      properties:
        bypass:
          $ref: '#/components/schemas/ProtectionDefBypass'
        lifecycle:
          $ref: '#/components/schemas/ProtectionDefTagLifecycle'
      type: object
    PullreqCombinedListResponse:
      properties:
        reviewers:
          items:
            $ref: '#/components/schemas/TypesPullReqReviewer'
          type: array
        user_group_reviewers:
          items:
            $ref: '#/components/schemas/TypesUserGroupReviewer'
          type: array
      type: object
    PullreqCommentApplySuggestionsOutput:
      properties:
        commit_id:
          type: string
        dry_run_rules:
          type: boolean
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    PullreqSuggestionReference:
      properties:
        check_sum:
          type: string
        comment_id:
          type: integer
      type: object
    RepoCommitDivergenceRequest:
      properties:
        from:
          type: string
        to:
          type: string
      type: object
    RepoCommitFileAction:
      properties:
        action:
          $ref: '#/components/schemas/GitFileAction'
        encoding:
          $ref: '#/components/schemas/EnumContentEncodingType'
        path:
          type: string
        payload:
          type: string
        sha:
          $ref: '#/components/schemas/ShaSHA'
      type: object
    RepoContent: {}
    RepoContentInfo:
      properties:
        latest_commit:
          $ref: '#/components/schemas/TypesCommit'
        name:
          type: string
        path:
          type: string
        sha:
          type: string
        type:
          $ref: '#/components/schemas/RepoContentType'
      type: object
    RepoContentType:
      type: string
    RepoFileContent:
      properties:
        data:
          type: string
        data_size:
          type: integer
        encoding:
          $ref: '#/components/schemas/EnumContentEncodingType'
        lfs_object_id:
          type: string
        lfs_object_size:
          type: integer
        size:
          type: integer
      type: object
    RepoListPathsOutput:
      properties:
        directories:
          items:
            type: string
          type: array
        files:
          items:
            type: string
          type: array
      type: object
    RepoMergeCheck:
      properties:
        conflict_files:
          items:
            type: string
          type: array
        mergeable:
          type: boolean
      type: object
    RepoPathsDetailsOutput:
      properties:
        details:
          items:
            $ref: '#/components/schemas/TypesPathDetails'
          nullable: true
          type: array
      type: object
    RepoRepositoryOutput:
      properties:
        archived:
          type: boolean
        created:
          type: integer
        created_by:
          type: integer
        default_branch:
          type: string
        deleted:
          nullable: true
          type: integer
        description:
          type: string
        fork_id:
          type: integer
        git_ssh_url:
          type: string
        git_url:
          type: string
        id:
          type: integer
        identifier:
          type: string
        importing:
          type: boolean
        is_empty:
          type: boolean
        is_favorite:
          type: boolean
        is_public:
          type: boolean
        last_git_push:
          type: integer
        num_closed_pulls:
          type: integer
        num_forks:
          type: integer
        num_merged_pulls:
          type: integer
        num_open_pulls:
          type: integer
        num_pulls:
          type: integer
        parent_id:
          type: integer
        path:
          type: string
        size:
          description: size of the repository in KiB
          type: integer
        size_lfs:
          description: size of the repository LFS in KiB
          type: integer
        size_updated:
          type: integer
        state:
          $ref: '#/components/schemas/EnumRepoState'
        updated:
          type: integer
      type: object
    RepoSoftDeleteResponse:
      properties:
        deleted_at:
          type: integer
      type: object
    RepoSubmoduleContent:
      properties:
        commit_sha:
          type: string
        url:
          type: string
      type: object
    RepoSymlinkContent:
      properties:
        size:
          type: integer
        target:
          type: string
      type: object
    ReposettingsGeneralSettings:
      properties:
        file_size_limit:
          description: file size limit in bytes
          nullable: true
          type: integer
        git_lfs_enabled:
          nullable: true
          type: boolean
      type: object
    ReposettingsSecuritySettings:
      properties:
        principal_committer_match:
          nullable: true
          type: boolean
        secret_scanning_enabled:
          nullable: true
          type: boolean
        vulnerability_scanning_mode:
          $ref: '#/components/schemas/SettingsVulnerabilityScanningMode'
      type: object
    SettingsVulnerabilityScanningMode:
      enum:
        - disabled
        - detect
        - block
      nullable: true
      type: string
    ShaSHA:
      description: Git object hash
      type: string
    TypesBranchExtended:
      properties:
        check_summary:
          $ref: '#/components/schemas/TypesCheckCountSummary'
        commit:
          $ref: '#/components/schemas/TypesCommit'
        commit_divergence:
          $ref: '#/components/schemas/TypesCommitDivergence'
        is_default:
          type: boolean
        name:
          type: string
        pull_requests:
          items:
            $ref: '#/components/schemas/TypesPullReq'
          type: array
        rules:
          items:
            $ref: '#/components/schemas/TypesRuleInfo'
          type: array
        sha:
          $ref: '#/components/schemas/ShaSHA'
      type: object
    TypesBranchTable:
      properties:
        created:
          type: integer
        created_by:
          type: integer
        last_created_pull_req_id:
          nullable: true
          type: integer
        name:
          type: string
        updated:
          type: integer
        updated_by:
          type: integer
      type: object
    TypesChangeStats:
      properties:
        changes:
          type: integer
        deletions:
          type: integer
        insertions:
          type: integer
      type: object
    TypesCheck:
      properties:
        created:
          type: integer
        ended:
          type: integer
        id:
          type: integer
        identifier:
          type: string
        link:
          type: string
        metadata: {}
        payload:
          $ref: '#/components/schemas/TypesCheckPayload'
        reported_by:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        started:
          type: integer
        status:
          $ref: '#/components/schemas/EnumCheckStatus'
        summary:
          type: string
        updated:
          type: integer
      type: object
    TypesCheckCountSummary:
      properties:
        error:
          type: integer
        failure:
          type: integer
        pending:
          type: integer
        running:
          type: integer
        success:
          type: integer
      type: object
    TypesCheckPayload:
      properties:
        data: {}
        kind:
          $ref: '#/components/schemas/EnumCheckPayloadKind'
        version:
          type: string
      type: object
    TypesCodeCommentFields:
      properties:
        line_new:
          type: integer
        line_old:
          type: integer
        merge_base_sha:
          type: string
        outdated:
          type: boolean
        path:
          type: string
        source_sha:
          type: string
        span_new:
          type: integer
        span_old:
          type: integer
      type: object
    TypesCodeOwnerEvaluation:
      properties:
        evaluation_entries:
          items:
            $ref: '#/components/schemas/TypesCodeOwnerEvaluationEntry'
          nullable: true
          type: array
        file_sha:
          type: string
      type: object
    TypesCodeOwnerEvaluationEntry:
      properties:
        line_number:
          type: integer
        owner_evaluations:
          items:
            $ref: '#/components/schemas/TypesOwnerEvaluation'
          nullable: true
          type: array
        pattern:
          type: string
        user_group_owner_evaluations:
          items:
            $ref: '#/components/schemas/TypesUserGroupOwnerEvaluation'
          nullable: true
          type: array
      type: object
    TypesCommit:
      properties:
        author:
          $ref: '#/components/schemas/TypesSignature'
        committer:
          $ref: '#/components/schemas/TypesSignature'
        message:
          type: string
        parent_shas:
          items:
            $ref: '#/components/schemas/ShaSHA'
          type: array
        sha:
          $ref: '#/components/schemas/ShaSHA'
        signature:
          $ref: '#/components/schemas/TypesGitSignatureResult'
        stats:
          $ref: '#/components/schemas/TypesCommitStats'
        title:
          type: string
      type: object
    TypesCommitDivergence:
      properties:
        ahead:
          type: integer
        behind:
          type: integer
      type: object
    TypesCommitFileStats:
      properties:
        changes:
          type: integer
        deletions:
          type: integer
        insertions:
          type: integer
        old_path:
          type: string
        path:
          type: string
        status:
          $ref: '#/components/schemas/EnumFileDiffStatus'
      type: object
    TypesCommitFilesResponse:
      properties:
        changed_files:
          items:
            $ref: '#/components/schemas/TypesFileReference'
          nullable: true
          type: array
        commit_id:
          $ref: '#/components/schemas/ShaSHA'
        dry_run_rules:
          type: boolean
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    TypesCommitStats:
      properties:
        files:
          items:
            $ref: '#/components/schemas/TypesCommitFileStats'
          type: array
        total:
          $ref: '#/components/schemas/TypesChangeStats'
      type: object
    TypesCommitTag:
      properties:
        commit:
          $ref: '#/components/schemas/TypesCommit'
        is_annotated:
          type: boolean
        message:
          type: string
        name:
          type: string
        sha:
          $ref: '#/components/schemas/ShaSHA'
        signature:
          $ref: '#/components/schemas/TypesGitSignatureResult'
        tagger:
          $ref: '#/components/schemas/TypesSignature'
        title:
          type: string
      type: object
    TypesCreateBranchOutput:
      properties:
        commit:
          $ref: '#/components/schemas/TypesCommit'
        dry_run_rules:
          type: boolean
        name:
          type: string
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
        sha:
          $ref: '#/components/schemas/ShaSHA'
      type: object
    TypesDefaultReviewerApprovalsResponse:
      properties:
        current_count:
          type: integer
        minimum_required_count:
          type: integer
        minimum_required_count_latest:
          type: integer
        principals:
          items:
            $ref: '#/components/schemas/TypesPrincipalInfo'
          nullable: true
          type: array
      type: object
    TypesDeleteBranchOutput:
      properties:
        dry_run_rules:
          type: boolean
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    TypesDiffStats:
      properties:
        additions:
          nullable: true
          type: integer
        commits:
          nullable: true
          type: integer
        deletions:
          nullable: true
          type: integer
        files_changed:
          nullable: true
          type: integer
      type: object
    TypesFavoriteResource:
      properties:
        resource_id:
          type: integer
        resource_type:
          $ref: '#/components/schemas/EnumResourceType'
      type: object
    TypesFileReference:
      properties:
        blob_sha:
          $ref: '#/components/schemas/ShaSHA'
        path:
          type: string
      type: object
    TypesGitSignatureResult:
      nullable: true
      properties:
        created:
          type: integer
        key_fingerprint:
          type: string
        key_id:
          type: string
        key_scheme:
          $ref: '#/components/schemas/EnumPublicKeyScheme'
        result:
          $ref: '#/components/schemas/EnumGitSignatureResult'
        updated:
          type: integer
      type: object
    TypesIdentity:
      properties:
        email:
          type: string
        name:
          type: string
      type: object
    TypesLabel:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        created:
          type: integer
        created_by:
          type: integer
        description:
          type: string
        id:
          type: integer
        key:
          type: string
        pullreq_count:
          type: integer
        repo_id:
          nullable: true
          type: integer
        scope:
          type: integer
        space_id:
          nullable: true
          type: integer
        type:
          $ref: '#/components/schemas/EnumLabelType'
        updated:
          type: integer
        updated_by:
          type: integer
        value_count:
          type: integer
      type: object
    TypesLabelAssignment:
      properties:
        assigned:
          nullable: true
          type: boolean
        assigned_value:
          $ref: '#/components/schemas/TypesLabelValueInfo'
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        id:
          type: integer
        key:
          type: string
        scope:
          type: integer
        type:
          $ref: '#/components/schemas/EnumLabelType'
        values:
          items:
            $ref: '#/components/schemas/TypesLabelValueInfo'
          type: array
      type: object
    TypesLabelPullReqAssignmentInfo:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        id:
          type: integer
        key:
          type: string
        scope:
          type: integer
        value:
          nullable: true
          type: string
        value_color:
          $ref: '#/components/schemas/EnumLabelColor'
        value_count:
          type: integer
        value_id:
          nullable: true
          type: integer
      type: object
    TypesLabelValue:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        created:
          type: integer
        created_by:
          type: integer
        id:
          type: integer
        label_id:
          type: integer
        updated:
          type: integer
        updated_by:
          type: integer
        value:
          type: string
      type: object
    TypesLabelValueInfo:
      properties:
        color:
          nullable: true
          type: string
        id:
          nullable: true
          type: integer
        value:
          nullable: true
          type: string
      type: object
    TypesLabelWithValues:
      properties:
        label:
          $ref: '#/components/schemas/TypesLabel'
        values:
          items:
            $ref: '#/components/schemas/TypesLabelValue'
          type: array
      type: object
    TypesListCommitResponse:
      properties:
        commits:
          items:
            $ref: '#/components/schemas/TypesCommit'
          nullable: true
          type: array
        rename_details:
          items:
            $ref: '#/components/schemas/TypesRenameDetails'
          nullable: true
          type: array
        total_commits:
          type: integer
      type: object
    TypesMergeResponse:
      properties:
        allowed_methods:
          items:
            $ref: '#/components/schemas/EnumMergeMethod'
          type: array
        branch_deleted:
          type: boolean
        conflict_files:
          items:
            type: string
          type: array
        default_reviewer_aprovals:
          items:
            $ref: '#/components/schemas/TypesDefaultReviewerApprovalsResponse'
          type: array
        dry_run:
          type: boolean
        dry_run_rules:
          type: boolean
        mergeable:
          type: boolean
        minimum_required_approvals_count:
          type: integer
        minimum_required_approvals_count_latest:
          type: integer
        requires_code_owners_approval:
          type: boolean
        requires_code_owners_approval_latest:
          type: boolean
        requires_comment_resolution:
          type: boolean
        requires_no_change_requests:
          type: boolean
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
        sha:
          type: string
      type: object
    TypesMergeViolations:
      properties:
        conflict_files:
          items:
            type: string
          type: array
        message:
          type: string
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    TypesOwnerEvaluation:
      properties:
        owner:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        review_decision:
          $ref: '#/components/schemas/EnumPullReqReviewDecision'
        review_sha:
          type: string
      type: object
    TypesPathDetails:
      properties:
        last_commit:
          $ref: '#/components/schemas/TypesCommit'
        path:
          type: string
      type: object
    TypesPrincipalInfo:
      nullable: true
      properties:
        created:
          type: integer
        display_name:
          type: string
        email:
          type: string
        id:
          type: integer
        type:
          $ref: '#/components/schemas/EnumPrincipalType'
        uid:
          type: string
        updated:
          type: integer
      type: object
    TypesPullReq:
      properties:
        author:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        check_summary:
          $ref: '#/components/schemas/TypesCheckCountSummary'
        closed:
          nullable: true
          type: integer
        created:
          type: integer
        description:
          type: string
        edited:
          type: integer
        is_draft:
          type: boolean
        labels:
          items:
            $ref: '#/components/schemas/TypesLabelPullReqAssignmentInfo'
          type: array
        merge_base_sha:
          type: string
        merge_check_status:
          $ref: '#/components/schemas/EnumMergeCheckStatus'
        merge_conflicts:
          items:
            type: string
          type: array
        merge_method:
          $ref: '#/components/schemas/EnumMergeMethod'
        merge_target_sha:
          nullable: true
          type: string
        merge_violations_bypassed:
          nullable: true
          type: boolean
        merged:
          nullable: true
          type: integer
        merger:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        number:
          type: integer
        rebase_check_status:
          $ref: '#/components/schemas/EnumMergeCheckStatus'
        rebase_conflicts:
          items:
            type: string
          type: array
        rules:
          items:
            $ref: '#/components/schemas/TypesRuleInfo'
          type: array
        source_branch:
          type: string
        source_repo_id:
          type: integer
        source_sha:
          type: string
        state:
          $ref: '#/components/schemas/EnumPullReqState'
        stats:
          $ref: '#/components/schemas/TypesPullReqStats'
        target_branch:
          type: string
        target_repo_id:
          type: integer
        title:
          type: string
        updated:
          type: integer
      type: object
    TypesPullReqActivity:
      properties:
        author:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        code_comment:
          $ref: '#/components/schemas/TypesCodeCommentFields'
        created:
          type: integer
        deleted:
          nullable: true
          type: integer
        edited:
          type: integer
        id:
          type: integer
        kind:
          $ref: '#/components/schemas/EnumPullReqActivityKind'
        mentions:
          additionalProperties:
            $ref: '#/components/schemas/TypesPrincipalInfo'
          type: object
        metadata:
          $ref: '#/components/schemas/TypesPullReqActivityMetadata'
        order:
          type: integer
        parent_id:
          nullable: true
          type: integer
        payload: {}
        pullreq_id:
          type: integer
        repo_id:
          type: integer
        resolved:
          nullable: true
          type: integer
        resolver:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        sub_order:
          type: integer
        text:
          type: string
        type:
          $ref: '#/components/schemas/EnumPullReqActivityType'
        updated:
          type: integer
        user_group_mentions:
          additionalProperties:
            $ref: '#/components/schemas/TypesUserGroupInfo'
          type: object
      type: object
    TypesPullReqActivityMentionsMetadata:
      properties:
        ids:
          items:
            type: integer
          type: array
        user_group_ids:
          items:
            type: integer
          type: array
      type: object
    TypesPullReqActivityMetadata:
      properties:
        mentions:
          $ref: '#/components/schemas/TypesPullReqActivityMentionsMetadata'
        suggestions:
          $ref: '#/components/schemas/TypesPullReqActivitySuggestionsMetadata'
      type: object
    TypesPullReqActivitySuggestionsMetadata:
      properties:
        applied_check_sum:
          type: string
        applied_commit_sha:
          type: string
        check_sums:
          items:
            type: string
          type: array
      type: object
    TypesPullReqCheck:
      properties:
        bypassable:
          type: boolean
        check:
          $ref: '#/components/schemas/TypesCheck'
        required:
          type: boolean
      type: object
    TypesPullReqChecks:
      properties:
        checks:
          items:
            $ref: '#/components/schemas/TypesPullReqCheck'
          nullable: true
          type: array
        commit_sha:
          type: string
      type: object
    TypesPullReqFileView:
      properties:
        obsolete:
          type: boolean
        path:
          type: string
        sha:
          type: string
      type: object
    TypesPullReqLabel:
      properties:
        created:
          type: integer
        created_by:
          type: integer
        label_id:
          type: integer
        pullreq_id:
          type: integer
        updated:
          type: integer
        updated_by:
          type: integer
        value_id:
          nullable: true
          type: integer
      type: object
    TypesPullReqLabelAssignInput:
      properties:
        label_id:
          type: integer
        value:
          type: string
        value_id:
          nullable: true
          type: integer
      type: object
    TypesPullReqRepo:
      properties:
        pull_request:
          $ref: '#/components/schemas/TypesPullReq'
        repository:
          $ref: '#/components/schemas/TypesRepositoryCore'
      type: object
    TypesPullReqReviewer:
      properties:
        added_by:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        created:
          type: integer
        latest_review_id:
          nullable: true
          type: integer
        review_decision:
          $ref: '#/components/schemas/EnumPullReqReviewDecision'
        reviewer:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        sha:
          type: string
        type:
          $ref: '#/components/schemas/EnumPullReqReviewerType'
        updated:
          type: integer
      type: object
    TypesPullReqStats:
      properties:
        additions:
          nullable: true
          type: integer
        commits:
          nullable: true
          type: integer
        conversations:
          type: integer
        deletions:
          nullable: true
          type: integer
        files_changed:
          nullable: true
          type: integer
        unresolved_count:
          type: integer
      type: object
    TypesRebaseResponse:
      properties:
        already_ancestor:
          type: boolean
        conflict_files:
          items:
            type: string
          type: array
        dry_run:
          type: boolean
        dry_run_rules:
          type: boolean
        new_head_branch_sha:
          $ref: '#/components/schemas/ShaSHA'
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    TypesRenameDetails:
      properties:
        commit_sha_after:
          type: string
        commit_sha_before:
          type: string
        new_path:
          type: string
        old_path:
          type: string
      type: object
    TypesRepositoryCore:
      nullable: true
      properties:
        default_branch:
          type: string
        id:
          type: integer
        identifier:
          type: string
        parent_id:
          type: integer
        path:
          type: string
      type: object
    TypesRepositoryPullReqSummary:
      properties:
        closed_count:
          type: integer
        merged_count:
          type: integer
        open_count:
          type: integer
      type: object
    TypesRepositorySummary:
      properties:
        branch_count:
          type: integer
        default_branch_commit_count:
          type: integer
        pull_req_summary:
          $ref: '#/components/schemas/TypesRepositoryPullReqSummary'
        tag_count:
          type: integer
      type: object
    TypesRevertResponse:
      properties:
        branch:
          type: string
        commit:
          $ref: '#/components/schemas/TypesCommit'
      type: object
    TypesRuleInfo:
      properties:
        identifier:
          type: string
        repo_path:
          type: string
        space_path:
          type: string
        state:
          $ref: '#/components/schemas/EnumRuleState'
        type:
          $ref: '#/components/schemas/EnumRuleType'
      type: object
    TypesRuleViolations:
      properties:
        bypassable:
          type: boolean
        bypassed:
          type: boolean
        rule:
          $ref: '#/components/schemas/TypesRuleInfo'
        violations:
          items:
            $ref: '#/components/schemas/TypesViolation'
          nullable: true
          type: array
      type: object
    TypesRulesViolations:
      properties:
        message:
          type: string
        violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          nullable: true
          type: array
      type: object
    TypesSaveLabelInput:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        description:
          type: string
        id:
          type: integer
        key:
          type: string
        type:
          $ref: '#/components/schemas/EnumLabelType'
      type: object
    TypesSaveLabelValueInput:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        id:
          type: integer
        value:
          type: string
      type: object
    TypesScopeData:
      properties:
        repository:
          $ref: '#/components/schemas/TypesRepositoryCore'
        scope:
          type: integer
        space:
          $ref: '#/components/schemas/TypesSpaceCore'
      type: object
    TypesScopesLabels:
      properties:
        label_data:
          items:
            $ref: '#/components/schemas/TypesLabelAssignment'
          nullable: true
          type: array
        scope_data:
          items:
            $ref: '#/components/schemas/TypesScopeData'
          nullable: true
          type: array
      type: object
    TypesSignature:
      properties:
        identity:
          $ref: '#/components/schemas/TypesIdentity'
        when:
          format: date-time
          type: string
      type: object
    TypesSpaceCore:
      properties:
        id:
          type: integer
        identifier:
          type: string
        parent_id:
          type: integer
        path:
          type: string
      type: object
    TypesSquashResponse:
      properties:
        conflict_files:
          items:
            type: string
          type: array
        dry_run:
          type: boolean
        dry_run_rules:
          type: boolean
        new_head_branch_sha:
          $ref: '#/components/schemas/ShaSHA'
        rule_violations:
          items:
            $ref: '#/components/schemas/TypesRuleViolations'
          type: array
      type: object
    TypesUserGroupInfo:
      properties:
        description:
          type: string
        id:
          type: integer
        identifier:
          type: string
        name:
          type: string
        scope:
          type: integer
      type: object
    TypesUserGroupOwnerEvaluation:
      properties:
        evaluations:
          items:
            $ref: '#/components/schemas/TypesOwnerEvaluation'
          nullable: true
          type: array
        id:
          type: string
        name:
          type: string
      type: object
    TypesUserGroupReviewer:
      properties:
        added_by:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        created:
          type: integer
        decision:
          $ref: '#/components/schemas/EnumPullReqReviewDecision'
        sha:
          type: string
        updated:
          type: integer
        user_decisions:
          items:
            $ref: '#/components/schemas/TypesUserGroupReviewerDecision'
          type: array
        user_group:
          $ref: '#/components/schemas/TypesUserGroupInfo'
      type: object
    TypesUserGroupReviewerDecision:
      properties:
        decision:
          $ref: '#/components/schemas/EnumPullReqReviewDecision'
        reviewer:
          $ref: '#/components/schemas/TypesPrincipalInfo'
        sha:
          type: string
      type: object
    TypesViolation:
      properties:
        code:
          type: string
        message:
          type: string
        params:
          items: {}
          nullable: true
          type: array
      type: object
    TypesWebhookCreateInput:
      properties:
        description:
          type: string
        display_name:
          type: string
        enabled:
          type: boolean
        identifier:
          type: string
        insecure:
          type: boolean
        secret:
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/EnumWebhookTrigger'
          nullable: true
          type: array
        uid:
          deprecated: true
          type: string
        url:
          type: string
      type: object
    TypesWebhookExecution:
      properties:
        created:
          type: integer
        duration:
          type: integer
        error:
          type: string
        id:
          type: integer
        request:
          $ref: '#/components/schemas/TypesWebhookExecutionRequest'
        response:
          $ref: '#/components/schemas/TypesWebhookExecutionResponse'
        result:
          $ref: '#/components/schemas/EnumWebhookExecutionResult'
        retrigger_of:
          nullable: true
          type: integer
        retriggerable:
          type: boolean
        trigger_type:
          $ref: '#/components/schemas/EnumWebhookTrigger'
        webhook_id:
          type: integer
      type: object
    TypesWebhookExecutionRequest:
      properties:
        body:
          type: string
        headers:
          type: string
        url:
          type: string
      type: object
    TypesWebhookExecutionResponse:
      properties:
        body:
          type: string
        headers:
          type: string
        status:
          type: string
        status_code:
          type: integer
      type: object
    UploadResult:
      properties:
        file_path:
          type: string
      type: object
    UsererrorError:
      properties:
        message:
          type: string
        values:
          additionalProperties: {}
          type: object
      type: object
    AccessKeySecretKey:
      properties:
        accessKey:
          type: string
        accessKeySecretIdentifier:
          type: string
        accessKeySecretSpaceId:
          format: int64
          type: integer
        accessKeySecretSpacePath:
          type: string
        secretKeyIdentifier:
          type: string
        secretKeySpaceId:
          format: int64
          type: integer
        secretKeySpacePath:
          type: string
      required:
        - secretKeyIdentifier
    Anonymous: {}
    ArtifactDeploymentsDetail:
      description: Artifact deployments Detail
      properties:
        count:
          type: integer
        envIdentifier:
          type: string
        envName:
          type: string
        envType:
          $ref: '#/components/schemas/RegistryEnvironmentType'
        infraIdentifier:
          type: string
        infraName:
          type: string
        lastDeployedAt:
          type: string
        lastDeployedById:
          type: string
        lastDeployedByName:
          type: string
        lastPipelineExecutionId:
          type: string
        lastPipelineExecutionName:
          type: string
        orgIdentifier:
          type: string
        pipelineId:
          type: string
        projectIdentifier:
          type: string
        serviceIdentifier:
          type: string
        serviceName:
          type: string
      type: object
    ArtifactDeploymentsDetails:
      description: Docker Artifact deployments Details
      properties:
        deployments:
          $ref: '#/components/schemas/ArtifactDeploymentsList'
        deploymentsStats:
          $ref: '#/components/schemas/DeploymentStats'
      required:
        - deployments
      type: object
    ArtifactDeploymentsList:
      description: A list of Artifact Deployments
      properties:
        deployments:
          description: A list of Artifact
          items:
            $ref: '#/components/schemas/ArtifactDeploymentsDetail'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - artifacts
      type: object
    ArtifactDetail:
      description: Artifact Detail
      discriminator:
        mapping:
          CARGO: '#/components/schemas/CargoArtifactDetailConfig'
          DOCKER: '#/components/schemas/DockerArtifactDetailConfig'
          GENERIC: '#/components/schemas/GenericArtifactDetailConfig'
          GO: '#/components/schemas/GoArtifactDetailConfig'
          HELM: '#/components/schemas/HelmArtifactDetailConfig'
          HUGGINGFACE: '#/components/schemas/HuggingFaceArtifactDetailConfig'
          MAVEN: '#/components/schemas/MavenArtifactDetailConfig'
          NPM: '#/components/schemas/NpmArtifactDetailConfig'
          NUGET: '#/components/schemas/NugetArtifactDetailConfig'
          PYTHON: '#/components/schemas/PythonArtifactDetailConfig'
          RPM: '#/components/schemas/RpmArtifactDetailConfig'
        propertyName: packageType
      oneOf:
        - $ref: '#/components/schemas/DockerArtifactDetailConfig'
        - $ref: '#/components/schemas/HelmArtifactDetailConfig'
        - $ref: '#/components/schemas/GenericArtifactDetailConfig'
        - $ref: '#/components/schemas/MavenArtifactDetailConfig'
        - $ref: '#/components/schemas/PythonArtifactDetailConfig'
        - $ref: '#/components/schemas/NpmArtifactDetailConfig'
        - $ref: '#/components/schemas/RpmArtifactDetailConfig'
        - $ref: '#/components/schemas/NugetArtifactDetailConfig'
        - $ref: '#/components/schemas/CargoArtifactDetailConfig'
        - $ref: '#/components/schemas/GoArtifactDetailConfig'
        - $ref: '#/components/schemas/HuggingFaceArtifactDetailConfig'
      properties:
        artifactType:
          $ref: '#/components/schemas/RegistryArtifactType'
        createdAt:
          type: string
        createdBy:
          type: string
        downloadCount:
          format: int64
          type: integer
        isQuarantined:
          type: boolean
        modifiedAt:
          type: string
        name:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        quarantineReason:
          type: string
        size:
          type: string
        version:
          type: string
      required:
        - imageName
        - version
        - registryPath
        - url
        - packageType
      type: object
    ArtifactLabelRequest:
      properties:
        labels:
          items:
            type: string
          type: array
      required:
        - labels
      type: object
    ArtifactMetadata:
      description: Artifact Metadata
      properties:
        artifactType:
          $ref: '#/components/schemas/RegistryArtifactType'
        deploymentMetadata:
          $ref: '#/components/schemas/DeploymentMetadata'
        downloadsCount:
          format: int64
          type: integer
        isQuarantined:
          type: boolean
        labels:
          items:
            type: string
          type: array
        lastModified:
          type: string
        latestVersion:
          type: string
        name:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        pullCommand:
          type: string
        quarantineReason:
          type: string
        registryIdentifier:
          type: string
        registryPath:
          type: string
        version:
          type: string
      required:
        - name
        - registryIdentifier
        - latestVersion
        - registryPath
        - version
      type: object
    ArtifactStats:
      description: Harness Artifact Stats
      properties:
        downloadCount:
          format: int64
          type: integer
        downloadSize:
          format: int64
          type: integer
        totalStorageSize:
          format: int64
          type: integer
        uploadSize:
          format: int64
          type: integer
      type: object
    ArtifactSummary:
      description: Harness Artifact Summary
      properties:
        createdAt:
          type: string
        downloadsCount:
          format: int64
          type: integer
        imageName:
          type: string
        labels:
          items:
            type: string
          type: array
        modifiedAt:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
      required:
        - imageName
        - packageType
      type: object
    RegistryArtifactType:
      description: refers to artifact type
      enum:
        - model
        - dataset
      type: string
    ArtifactVersionMetadata:
      description: Artifact Version Metadata
      properties:
        artifactType:
          $ref: '#/components/schemas/RegistryArtifactType'
        deploymentMetadata:
          $ref: '#/components/schemas/DeploymentMetadata'
        digestCount:
          format: int64
          type: integer
        downloadsCount:
          format: int64
          type: integer
        fileCount:
          format: int64
          type: integer
        isQuarantined:
          type: boolean
        lastModified:
          type: string
        name:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        pullCommand:
          type: string
        quarantineReason:
          type: string
        registryIdentifier:
          type: string
        registryPath:
          type: string
        size:
          type: string
      required:
        - name
        - registryIdentifier
        - latestVersion
        - registryPath
      type: object
    ArtifactVersionSummary:
      description: Docker Artifact Version Summary
      properties:
        artifactType:
          $ref: '#/components/schemas/RegistryArtifactType'
        imageName:
          type: string
        isQuarantined:
          type: boolean
        packageType:
          $ref: '#/components/schemas/PackageType'
        quarantineReason:
          type: string
        sscaArtifactId:
          type: string
        sscaArtifactSourceId:
          type: string
        stoExecutionId:
          type: string
        stoPipelineId:
          type: string
        version:
          type: string
      required:
        - imageName
        - version
        - packageType
      type: object
    AuthType:
      description: Authentication type
      enum:
        - UserPassword
        - AccessKeySecretKey
        - Anonymous
      type: string
    RegistryBuildDetails:
      properties:
        orgIdentifier:
          type: string
        pipelineDisplayName:
          type: string
        pipelineExecutionId:
          type: string
        pipelineIdentifier:
          type: string
        projectIdentifier:
          type: string
        stageExecutionId:
          type: string
        stepExecutionId:
          type: string
      type: object
    CargoArtifactDetailConfig:
      description: Config for Cargo artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    CleanupPolicy:
      description: Cleanup Policy for Harness Artifact Registries
      properties:
        expireDays:
          type: integer
        name:
          type: string
        packagePrefix:
          items:
            type: string
          type: array
        versionPrefix:
          items:
            type: string
          type: array
      type: object
    ClientSetupDetails:
      description: Client Setup Details
      properties:
        mainHeader:
          type: string
        secHeader:
          type: string
        sections:
          items:
            $ref: '#/components/schemas/ClientSetupSection'
          type: array
      required:
        - mainHeader
        - secHeader
        - sections
      type: object
    ClientSetupSection:
      description: Client Setup Section
      discriminator:
        mapping:
          INLINE: '#/components/schemas/ClientSetupStepConfig'
          TABS: '#/components/schemas/TabSetupStepConfig'
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/ClientSetupStepConfig'
        - $ref: '#/components/schemas/TabSetupStepConfig'
      properties:
        header:
          type: string
        secHeader:
          type: string
        type:
          $ref: '#/components/schemas/SectionType'
      required:
        - type
      type: object
    ClientSetupStep:
      description: Client Setup Step
      properties:
        commands:
          items:
            $ref: '#/components/schemas/ClientSetupStepCommand'
          type: array
        header:
          type: string
        type:
          $ref: '#/components/schemas/ClientSetupStepType'
      type: object
    ClientSetupStepCommand:
      description: Client Setup Step Command
      properties:
        label:
          type: string
        value:
          type: string
      type: object
    ClientSetupStepConfig:
      description: Client Setup Step
      properties:
        steps:
          items:
            $ref: '#/components/schemas/ClientSetupStep'
          type: array
      type: object
    ClientSetupStepType:
      description: ClientSetupStepType type
      enum:
        - Static
        - GenerateToken
      type: string
    DeploymentDetails:
      properties:
        nonProdDeployment:
          type: integer
        prodDeployment:
          type: integer
        totalDeployment:
          type: integer
      required:
        - prodDeployment
        - nonProdDeployment
        - totalDeployment
      type: object
    DeploymentMetadata:
      properties:
        nonProdEnvCount:
          type: integer
        prodEnvCount:
          type: integer
      required:
        - prodEnvCount
        - nonProdEnvCount
      type: object
    DeploymentStats:
      description: DeploymentStats
      properties:
        PreProduction:
          type: integer
        Production:
          type: integer
      required:
        - Production
        - PreProduction
      type: object
    DockerArtifactDetail:
      description: Docker Artifact Detail
      properties:
        createdAt:
          type: string
        downloadsCount:
          format: int64
          type: integer
        imageName:
          type: string
        isQuarantined:
          type: boolean
        modifiedAt:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        pullCommand:
          type: string
        quarantineReason:
          type: string
        registryPath:
          type: string
        size:
          type: string
        url:
          type: string
        version:
          type: string
      required:
        - imageName
        - version
        - registryPath
        - url
        - packageType
      type: object
    DockerArtifactDetailConfig:
      description: Config for docker artifact details
      properties:
        pullCommand:
          type: string
      type: object
    DockerArtifactIntegrationDetail:
      description: Docker Artifact Detail
      properties:
        buildDetails:
          $ref: '#/components/schemas/RegistryBuildDetails'
        deploymentsDetails:
          $ref: '#/components/schemas/DeploymentDetails'
        sbomDetails:
          $ref: '#/components/schemas/SBOMDetails'
        slsaDetails:
          $ref: '#/components/schemas/SLSADetails'
        stoDetails:
          $ref: '#/components/schemas/STODetails'
      type: object
    DockerArtifactManifest:
      description: Docker Artifact Manifest
      properties:
        manifest:
          type: string
      required:
        - manifest
      type: object
    DockerLayerEntry:
      description: Harness Artifact Layers
      properties:
        command:
          type: string
        size:
          type: string
      required:
        - command
      type: object
    DockerLayersSummary:
      description: Harness Layers Summary
      properties:
        digest:
          type: string
        layers:
          items:
            $ref: '#/components/schemas/DockerLayerEntry'
          type: array
        osArch:
          type: string
      required:
        - digest
      type: object
    DockerManifestDetails:
      description: Harness Artifact Layers
      properties:
        createdAt:
          type: string
        digest:
          type: string
        downloadsCount:
          format: int64
          type: integer
        isQuarantined:
          type: boolean
        osArch:
          type: string
        quarantineReason:
          type: string
        size:
          type: string
        stoDetails:
          $ref: '#/components/schemas/STODetails'
        stoExecutionId:
          type: string
        stoPipelineId:
          type: string
      required:
        - digest
        - layers
        - osArch
      type: object
    DockerManifests:
      description: Harness Manifests
      properties:
        imageName:
          type: string
        manifests:
          items:
            $ref: '#/components/schemas/DockerManifestDetails'
          type: array
        version:
          type: string
      required:
        - imageName
        - version
      type: object
    RegistryEnvironmentType:
      description: Environment Type
      enum:
        - PreProduction
        - Production
      type: string
    RegistryError:
      properties:
        code:
          description: The http error code
          example: '404'
          type: string
        details:
          description: Additional details about the error
          type: object
        message:
          description: The reason the request failed
          type: string
      required:
        - code
        - message
      type: object
    ExtraHeader:
      description: Webhook Extra Header
      properties:
        key:
          type: string
        value:
          type: string
      required:
        - key
        - value
      type: object
    FileDetail:
      description: File Detail
      properties:
        checksums:
          items:
            type: string
          type: array
        createdAt:
          type: string
        downloadCommand:
          type: string
        name:
          type: string
        size:
          type: string
      required:
        - name
        - size
        - checksums
        - downloadCommand
        - createdAt
      type: object
    GenericArtifactDetailConfig:
      description: Config for generic artifact details
      properties:
        description:
          type: string
      type: object
    GoArtifactDetailConfig:
      description: Config for Go artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    HelmArtifactDetail:
      description: Helm Artifact Detail
      properties:
        artifact:
          type: string
        createdAt:
          type: string
        downloadsCount:
          format: int64
          type: integer
        modifiedAt:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        pullCommand:
          type: string
        registryPath:
          type: string
        size:
          type: string
        url:
          type: string
        version:
          type: string
      required:
        - imageName
        - version
        - registryPath
        - url
        - packageType
      type: object
    HelmArtifactDetailConfig:
      description: Config for helm artifact details
      properties:
        pullCommand:
          type: string
      type: object
    HelmArtifactManifest:
      description: Helm Artifact Manifest
      properties:
        manifest:
          type: string
      required:
        - manifest
      type: object
    HuggingFaceArtifactDetailConfig:
      description: Config for huggingface artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    JfrogReplicationRegistry:
      properties:
        namespace:
          type: string
        passwordSecretId:
          type: string
        passwordSecretSpaceId:
          type: string
        url:
          format: uri
          type: string
        username:
          type: string
      required:
        - url
        - namespace
      type: object
    ListArtifact:
      description: A list of Artifacts
      properties:
        artifacts:
          description: A list of Artifact
          items:
            $ref: '#/components/schemas/ArtifactMetadata'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - artifacts
      type: object
    ListArtifactLabel:
      description: A list of Harness Artifact Labels
      properties:
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        labels:
          items:
            type: string
          type: array
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - labels
      type: object
    ListArtifactVersion:
      description: A list of Artifact versions
      properties:
        artifactVersions:
          description: A list of Artifact versions
          items:
            $ref: '#/components/schemas/ArtifactVersionMetadata'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - artifacts
      type: object
    ListMigrationImage:
      description: A list of migration images
      properties:
        images:
          description: A list of Artifact versions
          items:
            $ref: '#/components/schemas/MigrationImage'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - pageCount
        - itemCount
        - pageSize
        - pageIndex
        - images
      type: object
    ListRegistry:
      description: A list of Harness Artifact Registries
      properties:
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
        registries:
          description: A list of Harness Artifact Registries
          items:
            $ref: '#/components/schemas/RegistryMetadata'
          type: array
      required:
        - registries
      type: object
    ListRegistryArtifact:
      description: A list of Artifacts
      properties:
        artifacts:
          description: A list of Artifact
          items:
            $ref: '#/components/schemas/RegistryArtifactMetadata'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - artifacts
      type: object
    ListReplicationRule:
      description: A list of replication rules
      properties:
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 10
          type: integer
        rules:
          description: A list of Replication Rules
          items:
            $ref: '#/components/schemas/ReplicationRule'
          type: array
      required:
        - pageCount
        - itemCount
        - pageSize
        - pageIndex
        - rules
      type: object
    ListWebhooks:
      description: A list of Harness Registries webhooks
      properties:
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
        webhooks:
          description: A list of Registries webhooks
          items:
            $ref: '#/components/schemas/Webhook'
          type: array
      required:
        - webhooks
      type: object
    ListWebhooksExecutions:
      description: A list of Harness Registries webhooks executions
      properties:
        executions:
          description: A list of Registries webhooks executions
          items:
            $ref: '#/components/schemas/WebhookExecution'
          type: array
        itemCount:
          description: The total number of items
          example: 1
          format: int64
          type: integer
        pageCount:
          description: The total number of pages
          example: 100
          format: int64
          type: integer
        pageIndex:
          description: The current page
          example: 0
          format: int64
          type: integer
        pageSize:
          description: The number of items per page
          example: 1
          type: integer
      required:
        - executions
      type: object
    LocalReplicationRegistry:
      properties:
        registryIdentifier:
          type: string
      required:
        - registryIdentifier
      type: object
    MavenArtifactDetailConfig:
      description: Config for maven artifact details
      properties:
        artifactId:
          type: string
        groupId:
          type: string
      type: object
    MigrationImage:
      properties:
        imageId:
          type: string
        imageTag:
          type: string
        progress:
          type: integer
        status:
          type: string
      type: object
    MigrationLog:
      properties:
        message:
          type: string
        timestamp:
          type: string
      type: object
    NpmArtifactDetailConfig:
      description: Config for npm artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    NugetArtifactDetailConfig:
      description: Config for nuget artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    PackageType:
      description: refers to package
      enum:
        - DOCKER
        - MAVEN
        - PYTHON
        - GENERIC
        - HELM
        - NUGET
        - NPM
        - RPM
        - CARGO
        - GO
        - HUGGINGFACE
      type: string
    PythonArtifactDetailConfig:
      description: Config for python artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    Registry:
      description: Harness Artifact Registry
      properties:
        allowedPattern:
          items:
            type: string
          type: array
        blockedPattern:
          items:
            type: string
          type: array
        cleanupPolicy:
          items:
            $ref: '#/components/schemas/CleanupPolicy'
          type: array
        config:
          $ref: '#/components/schemas/RegistryConfig'
        createdAt:
          type: string
        description:
          type: string
        identifier:
          type: string
        labels:
          items:
            type: string
          type: array
        modifiedAt:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        policyRefs:
          items:
            type: string
          type: array
        scanners:
          items:
            $ref: '#/components/schemas/Scanner'
          type: array
        url:
          type: string
      required:
        - name
        - identifier
        - type
        - url
        - packageType
      type: object
    RegistryArtifactMetadata:
      description: Artifact Metadata
      properties:
        artifactType:
          $ref: '#/components/schemas/RegistryArtifactType'
        downloadsCount:
          format: int64
          type: integer
        isQuarantined:
          type: boolean
        labels:
          items:
            type: string
          type: array
        lastModified:
          type: string
        latestVersion:
          type: string
        name:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        registryIdentifier:
          type: string
        registryPath:
          type: string
      required:
        - name
        - registryIdentifier
        - latestVersion
        - registryPath
      type: object
    RegistryConfig:
      description: SubConfig specific for Virtual or Upstream Registry
      discriminator:
        mapping:
          UPSTREAM: '#/components/schemas/UpstreamConfig'
          VIRTUAL: '#/components/schemas/VirtualConfig'
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/VirtualConfig'
        - $ref: '#/components/schemas/UpstreamConfig'
      properties:
        type:
          $ref: '#/components/schemas/RegistryType'
      required:
        - type
      type: object
    RegistryMetadata:
      description: Harness Artifact Registry Metadata
      properties:
        artifactsCount:
          format: int64
          type: integer
        description:
          type: string
        downloadsCount:
          format: int64
          type: integer
        identifier:
          type: string
        labels:
          items:
            type: string
          type: array
        lastModified:
          type: string
        packageType:
          $ref: '#/components/schemas/PackageType'
        path:
          type: string
        registrySize:
          type: string
        type:
          $ref: '#/components/schemas/RegistryType'
        url:
          type: string
      required:
        - type
        - packageType
        - identifier
        - url
      type: object
    RegistryRequest:
      properties:
        allowedPattern:
          items:
            type: string
          type: array
        blockedPattern:
          items:
            type: string
          type: array
        cleanupPolicy:
          items:
            $ref: '#/components/schemas/CleanupPolicy'
          type: array
        config:
          $ref: '#/components/schemas/RegistryConfig'
        description:
          type: string
        identifier:
          type: string
        labels:
          items:
            type: string
          type: array
        packageType:
          $ref: '#/components/schemas/PackageType'
        parentRef:
          description: |
            Reference to the scope in which the registry exists.

            Format depends on the scope:

            - **Account-level**: `account_id`
            - **Organization-level**: `account_id/org_id`
            - **Project-level**: `account_id/org_id/project_id`
          type: string
        policyRefs:
          items:
            type: string
          type: array
        scanners:
          items:
            $ref: '#/components/schemas/Scanner'
          type: array
      required:
        - identifier
        - type
        - packageType
      type: object
    RegistryType:
      description: refers to type of registry i.e virtual or upstream
      discriminator:
        propertyName: type
      enum:
        - VIRTUAL
        - UPSTREAM
      type: string
    ReplicationRegistry:
      oneOf:
        - $ref: '#/components/schemas/LocalReplicationRegistry'
        - $ref: '#/components/schemas/JfrogReplicationRegistry'
    ReplicationRule:
      properties:
        allowedPatterns:
          items:
            type: string
          type: array
        blockedPatterns:
          items:
            type: string
          type: array
        createdAt:
          type: string
        destination:
          $ref: '#/components/schemas/ReplicationRegistry'
        destinationType:
          enum:
            - Local
            - Jfrog
            - GCP
          type: string
        identifier:
          type: string
        modifiedAt:
          type: string
        parentRef:
          type: string
        source:
          $ref: '#/components/schemas/ReplicationRegistry'
        sourceType:
          enum:
            - Local
            - Jfrog
            - GCP
          type: string
      required:
        - identifier
        - source
        - destination
        - sourceType
        - destinationType
        - allowedPatterns
        - blockedPatterns
        - parentRef
        - modifiedAt
        - createdAt
      type: object
    ReplicationRuleRequest:
      properties:
        allowedPatterns:
          items:
            type: string
          type: array
        blockedPatterns:
          items:
            type: string
          type: array
        destination:
          $ref: '#/components/schemas/ReplicationRegistry'
        destinationType:
          enum:
            - Local
            - Jfrog
            - GCP
          type: string
        source:
          $ref: '#/components/schemas/ReplicationRegistry'
        sourceType:
          enum:
            - Local
            - Jfrog
            - GCP
          type: string
      required:
        - source
        - destination
        - sourceType
        - destinationType
        - allowedPatterns
        - blockedPatterns
      type: object
    RpmArtifactDetailConfig:
      description: Config for RPM artifact details
      properties:
        metadata:
          additionalProperties: true
          type: object
      type: object
    SBOMDetails:
      properties:
        allowListViolations:
          type: integer
        artifactId:
          type: string
        artifactSourceId:
          type: string
        avgScore:
          type: string
        componentsCount:
          type: integer
        denyListViolations:
          type: integer
        maxScore:
          type: string
        orchestrationId:
          type: string
        orgId:
          type: string
        projectId:
          type: string
      type: object
    SLSADetails:
      properties:
        provenanceId:
          type: string
        status:
          type: string
      type: object
    STODetails:
      properties:
        critical:
          type: integer
        executionId:
          type: string
        high:
          type: integer
        ignored:
          type: integer
        info:
          type: integer
        lastScanned:
          type: string
        low:
          type: integer
        medium:
          type: integer
        pipelineId:
          type: string
        total:
          type: integer
      type: object
    Scanner:
      description: Scanner for Harness Artifact Registries
      properties:
        name:
          enum:
            - AQUA_TRIVY
            - GRYPE
          type: string
      type: object
    SectionType:
      description: refers to client setup section type
      discriminator:
        propertyName: type
      enum:
        - INLINE
        - TABS
      type: string
    RegistryStatus:
      description: Indicates if the request was successful or not
      enum:
        - SUCCESS
        - FAILURE
        - ERROR
      type: string
    StorageDetails:
      description: storage details
      properties:
        totalSize:
          type: string
      required:
        - totalSize
      type: object
    TabSetupStep:
      description: Tab Setup step
      properties:
        header:
          type: string
        sections:
          items:
            $ref: '#/components/schemas/ClientSetupSection'
          type: array
      type: object
    TabSetupStepConfig:
      description: Tab Setup step config
      properties:
        tabs:
          items:
            $ref: '#/components/schemas/TabSetupStep'
          type: array
      type: object
    Trigger:
      description: refers to trigger
      enum:
        - ARTIFACT_CREATION
        - ARTIFACT_DELETION
      type: string
    RegistryTypesLabel:
      properties:
        color:
          $ref: '#/components/schemas/EnumLabelColor'
        created:
          format: int64
          type: integer
        created_by:
          format: int64
          type: integer
        description:
          type: string
        id:
          format: int64
          type: integer
        key:
          type: string
        scope:
          format: int64
          type: integer
        space_id:
          format: int64
          nullable: true
          type: integer
        type:
          $ref: '#/components/schemas/EnumLabelType'
        updated:
          format: int64
          type: integer
        updated_by:
          format: int64
          type: integer
        value_count:
          format: int64
          type: integer
      type: object
    RegistryTypesLabelWithValues:
      properties:
        label:
          $ref: '#/components/schemas/RegistryTypesLabel'
        values:
          items:
            $ref: '#/components/schemas/TypesLabelValue'
          type: array
      type: object
    UpstreamConfig:
      description: Configuration for Harness Artifact UpstreamProxies
      properties:
        auth:
          oneOf:
            - $ref: '#/components/schemas/UserPassword'
            - $ref: '#/components/schemas/Anonymous'
            - $ref: '#/components/schemas/AccessKeySecretKey'
        authType:
          $ref: '#/components/schemas/AuthType'
        source:
          enum:
            - Dockerhub
            - Custom
            - AwsEcr
            - MavenCentral
            - PyPi
            - NpmJs
            - NugetOrg
            - Crates
          type: string
        url:
          type: string
      required:
        - authType
      type: object
      x-discriminator-value: UPSTREAM
    UserPassword:
      properties:
        secretIdentifier:
          type: string
        secretSpaceId:
          type: integer
        secretSpacePath:
          type: string
        userName:
          type: string
      required:
        - userName
        - password
    VirtualConfig:
      description: Configuration for Harness Virtual Artifact Registries
      properties:
        upstreamProxies:
          items:
            type: string
          type: array
      type: object
    Webhook:
      description: Harness Regstries Webhook
      properties:
        createdAt:
          type: string
        createdBy:
          format: int64
          type: integer
        description:
          type: string
        enabled:
          type: boolean
        extraHeaders:
          items:
            $ref: '#/components/schemas/ExtraHeader'
          type: array
        identifier:
          type: string
        insecure:
          type: boolean
        internal:
          type: boolean
        latestExecutionResult:
          $ref: '#/components/schemas/WebhookExecResult'
        modifiedAt:
          type: string
        name:
          type: string
        secretIdentifier:
          type: string
        secretSpaceId:
          format: int64
          type: integer
        secretSpacePath:
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/Trigger'
          type: array
        url:
          type: string
        version:
          format: int64
          type: integer
      required:
        - identifier
        - url
        - name
        - enabled
        - insecure
      type: object
    WebhookExecRequest:
      description: Harness Regstries HTTP Webhook Request
      properties:
        body:
          type: string
        headers:
          type: string
        url:
          type: string
      type: object
    WebhookExecResponse:
      description: Harness Regstries HTTP Webhook Response
      properties:
        body:
          type: string
        headers:
          type: string
        status:
          type: string
        statusCode:
          type: integer
      type: object
    WebhookExecResult:
      description: refers to webhook execution
      enum:
        - SUCCESS
        - RETRIABLE_ERROR
        - FATAL_ERROR
      type: string
    WebhookExecution:
      description: Harness Regstries Webhook Execution
      properties:
        created:
          format: int64
          type: integer
        duration:
          format: int64
          type: integer
        error:
          type: string
        id:
          format: int64
          type: integer
        request:
          $ref: '#/components/schemas/WebhookExecRequest'
        response:
          $ref: '#/components/schemas/WebhookExecResponse'
        result:
          $ref: '#/components/schemas/WebhookExecResult'
        retriggerOf:
          format: int64
          type: integer
        retriggerable:
          type: boolean
        triggerType:
          $ref: '#/components/schemas/Trigger'
        webhookId:
          format: int64
          type: integer
      type: object
    WebhookRequest:
      properties:
        description:
          type: string
        enabled:
          type: boolean
        extraHeaders:
          items:
            $ref: '#/components/schemas/ExtraHeader'
          type: array
        identifier:
          type: string
        insecure:
          type: boolean
        name:
          type: string
        secretIdentifier:
          type: string
        secretSpaceId:
          format: int64
          type: integer
        secretSpacePath:
          type: string
        triggers:
          items:
            $ref: '#/components/schemas/Trigger'
          type: array
        url:
          type: string
      required:
        - insecure
        - enabled
        - identifier
        - url
        - name
      type: object
    quarantinePath:
      description: quarantine path
      properties:
        artifactId:
          format: int64
          type: integer
        filePath:
          type: string
        id:
          type: string
        reason:
          type: string
        registryId:
          format: int64
          type: integer
        versionId:
          format: int64
          type: integer
      required:
        - id
        - registryId
        - artifactId
        - reason
      type: object
    quarantineRequest:
      properties:
        artifact:
          type: string
        filePath:
          type: string
        reason:
          type: string
        version:
          type: string
      required:
        - artifact
        - reason
      type: object
    ActivityMetadata:
      type: object
      properties:
        PlannedChangesCount:
          type: integer
          description: 'Deprecated: use resource_count_xxxx fields instead'
          default: 0
          example: 8450235443445063000
          format: int64
        activity_status:
          type: string
          description: The status of this activity
          example: failure
          enum:
            - success
            - failure
        activity_type:
          type: string
          description: The type of this activity
          example: drifted
          enum:
            - apply
            - destroy
            - plan
            - drifted
            - import
        cost_breakdown_uuid:
          type: string
          description: The ID of any associated cost breakdown data
          example: Dolorem ea odit nesciunt sapiente.
        cost_currency:
          type: string
          description: The currency used in cost data for this change
          example: Eaque esse est.
        cost_diff_total_monthly:
          type: string
          description: The currency used in cost data for this change
          example: Architecto similique.
        cost_diff_uuid:
          type: string
          description: The ID of any associated cost diff data
          example: Non pariatur.
        cost_past_total_monthly:
          type: string
          description: The currency used in cost data for this change
          example: Quia eum magni enim unde ab.
        cost_total_monthly:
          type: string
          description: The currency used in cost data for this change
          example: Mollitia nemo et optio.
        cost_total_monthly_percentage_change:
          type: string
          description: The currency used in cost data for this change
          example: Non repellat aut.
        drift_counts:
          $ref: '#/components/schemas/Counts'
        enable_solutions_factory:
          type: boolean
          description: Indicates if Harness Solution Factory functionality is enabled
          example: false
        git_branch:
          type: string
          description: Git branch associated with this execution
          example: In voluptate animi voluptas eos.
        git_commit_message:
          type: string
          description: Git commit message associated with this execution
          example: Quibusdam iusto reiciendis fugiat inventore et.
        git_commit_sha:
          type: string
          description: Git commit SHA associated with this execution
          example: Illo quia.
        git_repo:
          type: string
          description: Git repo associated with this execution
          example: Quos est consequuntur.
        modules_uuid:
          type: string
          description: The ID of any associated modules data
          example: In doloremque non.
        output_counts:
          $ref: '#/components/schemas/Counts'
        pipeline:
          type: string
          description: The unique identifier of any associated pipeline
          example: Assumenda nisi.
        pipeline_execution_id:
          type: string
          description: The unique identifier for any associated pipeline execution
          example: Aut ut minus aut.
        pipeline_execution_number:
          type: string
          description: The unique number for any associated pipeline execution
          example: Amet in qui.
        pipeline_name:
          type: string
          description: The name of any associated pipeline
          example: Saepe veritatis tenetur.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Nihil at qui.
        plan_uuid:
          type: string
          description: The ID of any associated plan data
          example: Minus earum qui et rerum praesentium.
        providers_uuid:
          type: string
          description: The ID of any associated providers data
          example: Sint sit nesciunt et.
        provisioner:
          type: string
          description: The provisioner in use
          example: Explicabo blanditiis.
        provisioner_version:
          type: string
          description: The current version of the provisioner in use
          example: Et velit ut.
        resource_counts:
          $ref: '#/components/schemas/Counts'
        state_checksum:
          type: string
          description: The checksum of the last-seen state file
          example: Repellendus quia nulla asperiores.
        state_uuid:
          type: string
          description: The ID of any associated state data
          example: Quia omnis rerum in facilis.
        trigger:
          type: object
          description: Trigger info for any associated pipeline execution
          example:
            Asperiores natus quis.: Dolore qui consequatur a inventore sunt.
            Eos error consequatur natus porro.: Error quisquam corrupti placeat sed consequatur.
            Non velit inventore non maxime.: Ut labore porro quibusdam doloribus recusandae.
          additionalProperties: true
      example:
        PlannedChangesCount: 7409014449808088000
        activity_status: success
        activity_type: destroy
        cost_breakdown_uuid: Dolorem ipsam incidunt quae.
        cost_currency: Distinctio magnam non.
        cost_diff_total_monthly: Delectus ipsam unde ea.
        cost_diff_uuid: Repudiandae voluptatum at dolorem voluptatem consequuntur voluptatem.
        cost_past_total_monthly: Eum quasi quisquam sed.
        cost_total_monthly: Animi necessitatibus voluptas similique.
        cost_total_monthly_percentage_change: Qui quia est molestiae cumque eius sit.
        drift_counts:
          added: 7449910667089618000
          changed: 148315669190400480
          deleted: 5683600417193213000
          imported: 3265651565371067000
          removed: 1371487732313499000
          unchanged: 4655105961323145000
        enable_solutions_factory: true
        git_branch: Est et sequi ut harum.
        git_commit_message: Repudiandae neque ut porro voluptate qui.
        git_commit_sha: Occaecati totam.
        git_repo: Asperiores nisi.
        modules_uuid: Voluptatem dolorem quia id.
        output_counts:
          added: 7449910667089618000
          changed: 148315669190400480
          deleted: 5683600417193213000
          imported: 3265651565371067000
          removed: 1371487732313499000
          unchanged: 4655105961323145000
        pipeline: Perspiciatis dolor mollitia nemo qui facere.
        pipeline_execution_id: Et veniam officiis et occaecati quis architecto.
        pipeline_execution_number: Atque magnam est aut.
        pipeline_name: Nostrum tempore harum tempore.
        pipeline_stage_id: Laboriosam repudiandae nesciunt autem.
        plan_uuid: Numquam fugiat voluptas et.
        providers_uuid: Et alias aspernatur nam.
        provisioner: Voluptatibus dolore est fugiat mollitia dolor adipisci.
        provisioner_version: Ut sunt sunt atque quaerat voluptatem.
        resource_counts:
          added: 7449910667089618000
          changed: 148315669190400480
          deleted: 5683600417193213000
          imported: 3265651565371067000
          removed: 1371487732313499000
          unchanged: 4655105961323145000
        state_checksum: Aut ducimus a explicabo nobis ipsum.
        state_uuid: Iure aperiam quis qui.
        trigger:
          Corporis impedit repudiandae debitis perspiciatis vel.: Voluptatibus dolorem dolores voluptatem accusamus.
          Repellat illo quo sit corrupti reiciendis neque.: Qui et beatae corporis hic aut.
          Sapiente illum deserunt aliquam dicta.: Libero temporibus eaque.
    ActivityResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmActivity'
      example:
        - account: w1
          created: 3526501583219228000
          id: Non ut velit alias quia et dolores.
          metadata:
            PlannedChangesCount: 6714032458437038000
            activity_status: success
            activity_type: plan
            cost_breakdown_uuid: Itaque quaerat voluptatum.
            cost_currency: Explicabo explicabo quaerat natus dolores.
            cost_diff_total_monthly: Cum ut.
            cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
            cost_past_total_monthly: Provident et error molestiae.
            cost_total_monthly: Aut aut eveniet est aliquam alias sint.
            cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
            drift_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            enable_solutions_factory: false
            git_branch: Provident dolor cum.
            git_commit_message: Voluptatem vel doloremque aut.
            git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
            git_repo: Provident nostrum soluta deserunt qui magnam.
            modules_uuid: Asperiores quo.
            output_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            pipeline: Consequatur sunt voluptatum.
            pipeline_execution_id: Suscipit excepturi.
            pipeline_execution_number: Dolor suscipit aliquam.
            pipeline_name: Enim nisi voluptatem quasi.
            pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
            plan_uuid: Provident sapiente voluptatibus doloremque.
            providers_uuid: Quaerat tempore quod ducimus.
            provisioner: Modi optio laborum expedita est.
            provisioner_version: Molestias esse eum.
            resource_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            state_checksum: Ea odit suscipit tenetur perferendis mollitia.
            state_uuid: Quo magni maxime aliquam excepturi quasi.
            trigger:
              A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
              Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
          org: usr
          project: glx
          workspace: Accusamus ut harum.
        - account: w1
          created: 3526501583219228000
          id: Non ut velit alias quia et dolores.
          metadata:
            PlannedChangesCount: 6714032458437038000
            activity_status: success
            activity_type: plan
            cost_breakdown_uuid: Itaque quaerat voluptatum.
            cost_currency: Explicabo explicabo quaerat natus dolores.
            cost_diff_total_monthly: Cum ut.
            cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
            cost_past_total_monthly: Provident et error molestiae.
            cost_total_monthly: Aut aut eveniet est aliquam alias sint.
            cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
            drift_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            enable_solutions_factory: false
            git_branch: Provident dolor cum.
            git_commit_message: Voluptatem vel doloremque aut.
            git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
            git_repo: Provident nostrum soluta deserunt qui magnam.
            modules_uuid: Asperiores quo.
            output_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            pipeline: Consequatur sunt voluptatum.
            pipeline_execution_id: Suscipit excepturi.
            pipeline_execution_number: Dolor suscipit aliquam.
            pipeline_name: Enim nisi voluptatem quasi.
            pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
            plan_uuid: Provident sapiente voluptatibus doloremque.
            providers_uuid: Quaerat tempore quod ducimus.
            provisioner: Modi optio laborum expedita est.
            provisioner_version: Molestias esse eum.
            resource_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            state_checksum: Ea odit suscipit tenetur perferendis mollitia.
            state_uuid: Quo magni maxime aliquam excepturi quasi.
            trigger:
              A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
              Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
          org: usr
          project: glx
          workspace: Accusamus ut harum.
        - account: w1
          created: 3526501583219228000
          id: Non ut velit alias quia et dolores.
          metadata:
            PlannedChangesCount: 6714032458437038000
            activity_status: success
            activity_type: plan
            cost_breakdown_uuid: Itaque quaerat voluptatum.
            cost_currency: Explicabo explicabo quaerat natus dolores.
            cost_diff_total_monthly: Cum ut.
            cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
            cost_past_total_monthly: Provident et error molestiae.
            cost_total_monthly: Aut aut eveniet est aliquam alias sint.
            cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
            drift_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            enable_solutions_factory: false
            git_branch: Provident dolor cum.
            git_commit_message: Voluptatem vel doloremque aut.
            git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
            git_repo: Provident nostrum soluta deserunt qui magnam.
            modules_uuid: Asperiores quo.
            output_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            pipeline: Consequatur sunt voluptatum.
            pipeline_execution_id: Suscipit excepturi.
            pipeline_execution_number: Dolor suscipit aliquam.
            pipeline_name: Enim nisi voluptatem quasi.
            pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
            plan_uuid: Provident sapiente voluptatibus doloremque.
            providers_uuid: Quaerat tempore quod ducimus.
            provisioner: Modi optio laborum expedita est.
            provisioner_version: Molestias esse eum.
            resource_counts:
              added: 7449910667089618000
              changed: 148315669190400480
              deleted: 5683600417193213000
              imported: 3265651565371067000
              removed: 1371487732313499000
              unchanged: 4655105961323145000
            state_checksum: Ea odit suscipit tenetur perferendis mollitia.
            state_uuid: Quo magni maxime aliquam excepturi quasi.
            trigger:
              A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
              Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
          org: usr
          project: glx
          workspace: Accusamus ut harum.
    AnsibleActivityMetadata:
      type: object
      properties:
        activity_status:
          type: string
          description: The status of this activity
          example: Qui explicabo.
        git_branch:
          type: string
          description: Git branch associated with this execution
          example: Eos itaque.
        git_commit_message:
          type: string
          description: Git commit message associated with this execution
          example: Rerum sit occaecati.
        git_commit_sha:
          type: string
          description: Git commit SHA associated with this execution
          example: Minus rerum qui.
        git_repo:
          type: string
          description: Git repo associated with this execution
          example: Ut quos necessitatibus voluptates.
        pipeline:
          type: string
          description: The unique identifier of any associated pipeline
          example: Nihil corporis veniam consequatur similique.
        pipeline_execution_id:
          type: string
          description: The unique identifier for any associated pipeline execution
          example: Deserunt ut ex et.
        pipeline_execution_number:
          type: string
          description: The unique number for any associated pipeline execution
          example: Consectetur adipisci in nesciunt praesentium aperiam quis.
        pipeline_name:
          type: string
          description: The name of any associated pipeline
          example: Eaque vel est sed quam incidunt.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Ipsa omnis beatae alias rem eveniet laudantium.
        results_uuid:
          type: string
          description: The ID of any associated results
          example: Cupiditate nemo facilis commodi.
        trigger:
          type: object
          description: Trigger info for any associated pipeline execution
          example:
            Et tempora quod quia voluptas aut assumenda.: Non qui cumque consectetur voluptas.
          additionalProperties: true
      example:
        activity_status: Quasi iusto ut.
        git_branch: Porro molestiae recusandae ut corporis soluta quaerat.
        git_commit_message: Quasi laboriosam blanditiis nam et quis.
        git_commit_sha: Occaecati hic itaque ullam ad quia ea.
        git_repo: Aut aut fuga qui pariatur.
        pipeline: Consequuntur corporis voluptatem sint ut.
        pipeline_execution_id: Libero harum tenetur esse odit.
        pipeline_execution_number: Similique et dolores aut reprehenderit.
        pipeline_name: Qui soluta et voluptates.
        pipeline_stage_id: Eum quia consequatur ducimus.
        results_uuid: Eum maxime reiciendis.
        trigger:
          Officiis dolor quia dolore fugit.: Ad beatae incidunt dolorem.
    AnsibleActivityResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmAnsibleactivity'
      example:
        - account: '9'
          created: 1627590400
          event_type: activity-execution
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          metadata:
            activity_status: Perferendis dolore laboriosam.
            git_branch: Et non dolorem cumque asperiores quo ad.
            git_commit_message: Repudiandae quos dignissimos et placeat.
            git_commit_sha: Et dolorem.
            git_repo: Et incidunt quis non ut natus deleniti.
            pipeline: Laborum ea non ab.
            pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
            pipeline_execution_number: Qui et vel consequatur sequi minima.
            pipeline_name: Molestiae blanditiis corrupti.
            pipeline_stage_id: Unde porro nihil magni.
            results_uuid: Quis laborum aut est rerum quia.
            trigger:
              Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
              Sed ea ad corporis in.: Nobis suscipit.
              Vel quae.: Eum eos amet eligendi accusamus.
          org: j9h
          playbooks:
            - init_webservers
          project: hje
        - account: '9'
          created: 1627590400
          event_type: activity-execution
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          metadata:
            activity_status: Perferendis dolore laboriosam.
            git_branch: Et non dolorem cumque asperiores quo ad.
            git_commit_message: Repudiandae quos dignissimos et placeat.
            git_commit_sha: Et dolorem.
            git_repo: Et incidunt quis non ut natus deleniti.
            pipeline: Laborum ea non ab.
            pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
            pipeline_execution_number: Qui et vel consequatur sequi minima.
            pipeline_name: Molestiae blanditiis corrupti.
            pipeline_stage_id: Unde porro nihil magni.
            results_uuid: Quis laborum aut est rerum quia.
            trigger:
              Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
              Sed ea ad corporis in.: Nobis suscipit.
              Vel quae.: Eum eos amet eligendi accusamus.
          org: j9h
          playbooks:
            - init_webservers
          project: hje
    AnsibleData:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: oov
          minLength: 1
          maxLength: 128
        data_type:
          type: string
          description: Type of data stored
          example: task_results
          enum:
            - task_results
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        org:
          type: string
          description: Org is the organisation identifier.
          example: fp
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Non sunt ut.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Est atque rerum dolorem.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Quisquam dolores voluptas corporis laboriosam illo.
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
        project:
          type: string
          description: Project is the project identifier.
          example: bj
          minLength: 1
          maxLength: 128
        stage_id:
          type: string
          description: The unique identifier for a stage
          example: Voluptas minus et in repellat porro.
      description: >-
        AnsibleData is the representation for a single item of data associated
        with an inventory and playbook.
      example:
        account: 8a
        data_type: task_results
        inventories:
          - webservers_europe
        org: '4'
        pipeline_execution_id: Eum id.
        pipeline_id: Aut sed quis.
        pipeline_stage_id: Dolorem rerum.
        playbooks:
          - init_webservers
        project: c
        stage_id: Sed sunt distinctio sed.
      required:
        - account
        - org
        - project
        - data_type
        - inventories
        - playbooks
    AnsibleDataInfo:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
      example:
        id: dc538c61-de48-4220-958c-5f3c4f983daa
      required:
        - id
    AnsibleDataResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmAnsibledata'
      example:
        - account: x67
          created: 7560972987616249000
          data_type: task_results
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          org: '2'
          pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
          pipeline_id: Doloremque ea.
          pipeline_stage_id: Sit quo.
          playbooks:
            - init_webservers
          project: 0f
          stage_id: Quia quo.
        - account: x67
          created: 7560972987616249000
          data_type: task_results
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          org: '2'
          pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
          pipeline_id: Doloremque ea.
          pipeline_stage_id: Sit quo.
          playbooks:
            - init_webservers
          project: 0f
          stage_id: Quia quo.
        - account: x67
          created: 7560972987616249000
          data_type: task_results
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          org: '2'
          pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
          pipeline_id: Doloremque ea.
          pipeline_stage_id: Sit quo.
          playbooks:
            - init_webservers
          project: 0f
          stage_id: Quia quo.
        - account: x67
          created: 7560972987616249000
          data_type: task_results
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          inventories:
            - webservers_europe
          org: '2'
          pipeline_execution_id: Voluptatum deleniti odit sit rerum quia.
          pipeline_id: Doloremque ea.
          pipeline_stage_id: Sit quo.
          playbooks:
            - init_webservers
          project: 0f
          stage_id: Quia quo.
    AnsibleEvent:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: v
          minLength: 1
          maxLength: 128
        event_type:
          type: string
          description: The type of event that occurred
          example: activity-execution
          enum:
            - activity-execution
            - activity-dry-run-execution
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        metadata:
          $ref: '#/components/schemas/AnsibleActivityMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: '26'
          minLength: 1
          maxLength: 128
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
        project:
          type: string
          description: Project is the project identifier.
          example: o
          minLength: 1
          maxLength: 128
      description: AnsibleEvent defines an individual ansible event
      example:
        account: '06'
        event_type: activity-execution
        inventories:
          - webservers_europe
        metadata:
          activity_status: Perferendis dolore laboriosam.
          git_branch: Et non dolorem cumque asperiores quo ad.
          git_commit_message: Repudiandae quos dignissimos et placeat.
          git_commit_sha: Et dolorem.
          git_repo: Et incidunt quis non ut natus deleniti.
          pipeline: Laborum ea non ab.
          pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
          pipeline_execution_number: Qui et vel consequatur sequi minima.
          pipeline_name: Molestiae blanditiis corrupti.
          pipeline_stage_id: Unde porro nihil magni.
          results_uuid: Quis laborum aut est rerum quia.
          trigger:
            Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
            Sed ea ad corporis in.: Nobis suscipit.
            Vel quae.: Eum eos amet eligendi accusamus.
        org: v
        playbooks:
          - init_webservers
        project: 8g
      required:
        - account
        - org
        - project
        - inventories
        - playbooks
        - event_type
    AnsibleGroup:
      type: object
      properties:
        hosts:
          type: object
          description: The hosts in the group
          example:
            host1.example.com:
              Var1:
                key: Var1
                value: value1
                value_type: string
            host2.example.com:
              Var2:
                key: Var2
                value: account.MySecret
                value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/AnsibleHost'
        vars:
          type: object
          description: The vars in the group
          example:
            704b228e-728d-4857-afca-b036c27abdd8:
              key: Var1
              value: value1
              value_type: string
            a213b035-1c48-42ed-b914-7056ca4ba73c:
              file_name: Var2
              key: Var2
              value: account.MySecret
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      description: >-
        AnsibleGroup is the representation for a single group associated with
        ansible.
      example:
        hosts:
          host1.example.com:
            Var1:
              key: Var1
              value: value1
              value_type: string
          host2.example.com:
            Var2:
              key: Var2
              value: account.MySecret
              value_type: secret
        vars:
          704b228e-728d-4857-afca-b036c27abdd8:
            key: Var1
            value: value1
            value_type: string
          a213b035-1c48-42ed-b914-7056ca4ba73c:
            file_name: Var2
            key: Var2
            value: account.MySecret
            value_type: secret
      required:
        - hosts
    AnsibleHost:
      type: object
      example:
        Aspernatur aut repellendus mollitia sunt fugit.:
          file_name: Nobis ut deserunt enim.
          key: z
          uuid: 123e4567-e89b-12d3-a456-426655440000
          value: Non velit aut odio.
          value_type: Doloremque voluptas sit nihil.
        Dolores esse hic blanditiis laborum.:
          file_name: Nobis ut deserunt enim.
          key: z
          uuid: 123e4567-e89b-12d3-a456-426655440000
          value: Non velit aut odio.
          value_type: Doloremque voluptas sit nihil.
        Voluptatum aut enim.:
          file_name: Nobis ut deserunt enim.
          key: z
          uuid: 123e4567-e89b-12d3-a456-426655440000
          value: Non velit aut odio.
          value_type: Doloremque voluptas sit nihil.
      additionalProperties:
        $ref: '#/components/schemas/AnsibleVariable'
    AnsibleVariable:
      type: object
      properties:
        file_name:
          type: string
          description: Filename is where to store the value of the secret.
          example: Odio minus quisquam voluptas maxime iste et.
        key:
          type: string
          description: Key is the identifier for the secret.
          example: t
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        uuid:
          type: string
          description: UUID is the unique identifier for the secret.
          example: 123e4567-e89b-12d3-a456-426655440000
        value:
          type: string
          description: Value is the value of the secret.
          example: Ullam reiciendis quos sit explicabo in est.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: Qui qui iste suscipit doloribus dolores mollitia.
      description: >-
        AnsibleVariable is the representation for a single variable associated
        with ansible.
      example:
        file_name: Voluptatum dignissimos aliquam error facere tempore et.
        key: acg
        uuid: 123e4567-e89b-12d3-a456-426655440000
        value: Aut eos tempore placeat velit officiis.
        value_type: Sint excepturi quae rerum aperiam voluptatem.
      required:
        - key
        - value
        - value_type
    Approval:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: s30
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: t2n
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Molestiae nesciunt quis sunt voluptatibus autem.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Ea provident dolor repellat.
        project:
          type: string
          description: Project is the project identifier.
          example: d74
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: Status of the approval resource
          default: pending
          example: pending
          enum:
            - pending
            - approved
            - rejected
        workspace_id:
          type: string
          description: The unique identifier for the workspace_id
          example: Sed soluta aliquid qui iure.
      example:
        account: tl4
        org: by
        pipeline_execution_id: Rem et unde alias consectetur qui.
        pipeline_stage_id: Velit quis laborum facere qui et nulla.
        project: 0rx
        status: pending
        workspace_id: Pariatur voluptatem pariatur reprehenderit facere voluptas sint.
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
    ApprovalIdentifier:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: oo
          minLength: 1
          maxLength: 128
        id:
          type: string
          example: e33693a7-c447-4a06-a30c-0a2c4e04b789
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: 7mu
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: yg3
          minLength: 1
          maxLength: 128
      example:
        account: 8r
        id: 89c91ed5-3a3d-4f22-bc4c-fedab5d72c8e
        org: a
        project: v2
      required:
        - account
        - org
        - project
        - id
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
    ApprovalResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmApproval'
      example:
        - account: e
          actioned_by: John Doe
          actioned_by_email: john.doe@example.com
          created: 8906516273673178000
          id: Porro eligendi et debitis aut dolorem deserunt.
          org: hdg
          pipeline_execution_id: Natus quidem est.
          pipeline_stage_id: Doloremque non natus natus voluptatum.
          project: tdy
          status: Quia deleniti ullam sed aut expedita.
          updated: 930279314053450400
          workspace_id: Corporis ut consequuntur eum fuga.
        - account: e
          actioned_by: John Doe
          actioned_by_email: john.doe@example.com
          created: 8906516273673178000
          id: Porro eligendi et debitis aut dolorem deserunt.
          org: hdg
          pipeline_execution_id: Natus quidem est.
          pipeline_stage_id: Doloremque non natus natus voluptatum.
          project: tdy
          status: Quia deleniti ullam sed aut expedita.
          updated: 930279314053450400
          workspace_id: Corporis ut consequuntur eum fuga.
        - account: e
          actioned_by: John Doe
          actioned_by_email: john.doe@example.com
          created: 8906516273673178000
          id: Porro eligendi et debitis aut dolorem deserunt.
          org: hdg
          pipeline_execution_id: Natus quidem est.
          pipeline_stage_id: Doloremque non natus natus voluptatum.
          project: tdy
          status: Quia deleniti ullam sed aut expedita.
          updated: 930279314053450400
          workspace_id: Corporis ut consequuntur eum fuga.
        - account: e
          actioned_by: John Doe
          actioned_by_email: john.doe@example.com
          created: 8906516273673178000
          id: Porro eligendi et debitis aut dolorem deserunt.
          org: hdg
          pipeline_execution_id: Natus quidem est.
          pipeline_stage_id: Doloremque non natus natus voluptatum.
          project: tdy
          status: Quia deleniti ullam sed aut expedita.
          updated: 930279314053450400
          workspace_id: Corporis ut consequuntur eum fuga.
    ApprovalUpdate:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: rj
          minLength: 1
          maxLength: 128
        actioned_by:
          type: string
          description: User that approved/rejected the step
          example: John Doe
        actioned_by_email:
          type: string
          description: Email of the user that approved/rejected the step
          example: john.doe@example.com
        id:
          type: string
          example: 0ff66bb5-229f-4e00-9ef2-25ba5e63a39f
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: s
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: ax2
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: Status update to be performed upon the Approval step
          default: pending
          example: pending
          enum:
            - approved
            - rejected
            - pending
      description: >-
        ApprovalUpdate defines the fields of an approval step that can be
        updated
      example:
        account: is
        actioned_by: John Doe
        actioned_by_email: john.doe@example.com
        id: 440727cd-0e74-428b-8568-7ac56255d871
        org: qib
        project: h
        status: approved
      required:
        - account
        - org
        - project
        - id
        - status
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
    ApprovalsCreateApprovalResponseBodyCreation:
      type: object
      properties:
        id:
          type: string
          example: Provident asperiores nemo quibusdam repudiandae doloremque.
      description: Create-ApprovalResponseBody result type (creation view)
      example:
        id: Aut aut vitae.
      required:
        - id
    ApprovalsShowApprovalResponseBodyStatusInfo:
      type: object
      properties:
        actioned_by:
          type: string
          description: User that approved/rejected the step
          example: John Doe
        actioned_by_email:
          type: string
          description: Email of the user that approved/rejected the step
          example: john.doe@example.com
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 8538782151982364000
          format: int64
        status:
          type: string
          description: Status of the approval resource
          default: pending
          example: Veniam amet rerum dolor in itaque ut.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 3420495334796364300
          format: int64
      description: Show-ApprovalResponseBody result type (statusInfo view)
      example:
        actioned_by: John Doe
        actioned_by_email: john.doe@example.com
        created: 7551980993169701000
        status: Et et est sit.
        updated: 5021384596370053000
      required:
        - status
        - created
        - updated
    AssociatedTemplate:
      type: object
      properties:
        template_id:
          type: string
          description: Template ID of the template associated to the Workspace.
          example: zx
          minLength: 1
          maxLength: 128
        version:
          type: string
          description: Version of the template associated to the Workspace.
          example: 38k
          minLength: 1
          maxLength: 64
      description: >-
        AssociatedTemplate defines the template details with template_id and
        version.
      example:
        template_id: m
        version: l
    Audit:
      type: object
      properties:
        git_audit_data:
          $ref: '#/components/schemas/GitAuditData'
      example:
        git_audit_data:
          hash: c
          name: Recusandae fugit officiis delectus.
          repo_url: a2
          type: branch, tag
    IaCMAuditEvent:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ly5
          minLength: 1
          maxLength: 128
        audit:
          $ref: '#/components/schemas/Audit'
        org:
          type: string
          description: Org is the organisation identifier.
          example: v55
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: Pipeline execution ID
          example: l
          minLength: 1
          maxLength: 128
        pipeline_stage_id:
          type: string
          description: Pipeline execution stage ID
          example: v
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 4j
          minLength: 1
          maxLength: 128
      example:
        account: z
        audit:
          git_audit_data:
            hash: c
            name: Recusandae fugit officiis delectus.
            repo_url: a2
            type: branch, tag
        org: h
        pipeline_execution_id: fe
        pipeline_stage_id: b
        project: w93
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
    ChangedCostsCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmChangedCosts'
      example:
        - currency: Voluptatem tenetur.
          diff:
            Itaque et dolorem perferendis et dolore.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
            Labore exercitationem ab at et tenetur voluptas.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
          diff_total_monthly_cost: Ratione reiciendis error.
          past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
          percentage_change_total_monthly_cost: 8071160406141093000
          stage_execution_id: Et enim dolores earum tempore totam porro.
          stage_id: Animi voluptatem.
          total_monthly_cost: Et quibusdam rerum et.
          workspace_id: Laboriosam labore illo magnam quae officia.
        - currency: Voluptatem tenetur.
          diff:
            Itaque et dolorem perferendis et dolore.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
            Labore exercitationem ab at et tenetur voluptas.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
          diff_total_monthly_cost: Ratione reiciendis error.
          past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
          percentage_change_total_monthly_cost: 8071160406141093000
          stage_execution_id: Et enim dolores earum tempore totam porro.
          stage_id: Animi voluptatem.
          total_monthly_cost: Et quibusdam rerum et.
          workspace_id: Laboriosam labore illo magnam quae officia.
        - currency: Voluptatem tenetur.
          diff:
            Itaque et dolorem perferendis et dolore.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
            Labore exercitationem ab at et tenetur voluptas.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
          diff_total_monthly_cost: Ratione reiciendis error.
          past_total_monthly_cost: Non adipisci recusandae amet cupiditate recusandae.
          percentage_change_total_monthly_cost: 8071160406141093000
          stage_execution_id: Et enim dolores earum tempore totam porro.
          stage_id: Animi voluptatem.
          total_monthly_cost: Et quibusdam rerum et.
          workspace_id: Laboriosam labore illo magnam quae officia.
    ChangedResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmChangedResource'
      example:
        - change: added
          change_count: 10
          changes:
            Et libero explicabo vel nihil incidunt.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
            Quas praesentium.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
          drift: false
          module: full_stack
          name: app_server
          provider: AWS
          type: S3 Bucket
        - change: added
          change_count: 10
          changes:
            Et libero explicabo vel nihil incidunt.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
            Quas praesentium.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
          drift: false
          module: full_stack
          name: app_server
          provider: AWS
          type: S3 Bucket
        - change: added
          change_count: 10
          changes:
            Et libero explicabo vel nihil incidunt.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
            Quas praesentium.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
          drift: false
          module: full_stack
          name: app_server
          provider: AWS
          type: S3 Bucket
    ChangedResourcesCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmChangedResources'
      example:
        - data_sources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          drift_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          outputs:
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
          pipeline_execution: Hic voluptatibus consequatur.
          pipeline_stage: Corporis sunt quisquam aliquam ullam.
          planned_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          resources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          stage_id: Dolor cumque.
          workspace_id: Velit assumenda adipisci quibusdam quia.
        - data_sources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          drift_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          outputs:
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
          pipeline_execution: Hic voluptatibus consequatur.
          pipeline_stage: Corporis sunt quisquam aliquam ullam.
          planned_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          resources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          stage_id: Dolor cumque.
          workspace_id: Velit assumenda adipisci quibusdam quia.
        - data_sources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          drift_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          outputs:
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
            - change: added
              name: instance_public_ip
              new: new value
              old: old value
              sensitive: true
          pipeline_execution: Hic voluptatibus consequatur.
          pipeline_stage: Corporis sunt quisquam aliquam ullam.
          planned_changes:
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
            - change: added
              change_count: 10
              changes:
                Et libero explicabo vel nihil incidunt.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
                Quas praesentium.:
                  change: added
                  drift: true
                  new: new value
                  old: old value
                  sensitive: true
              drift: false
              module: full_stack
              name: app_server
              provider: AWS
              type: S3 Bucket
          resources:
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
            - attributes:
                ami: ami-830c94ec
                instance_type: t2.micro
              drift_attributes:
                instance_type: t2.nano
              drift_status: changed
              mode: resource
              module: full_stack
              name: app_server
              path_id: namespace
              provider: AWS
              sensitive_attributes:
                - instance_type
              type: S3 Bucket
          stage_id: Dolor cumque.
          workspace_id: Velit assumenda adipisci quibusdam quia.
    CheckPushDataResponse:
      type: object
      properties:
        disabled:
          type: boolean
          description: Indicates if the data is allowed to be pushed
          example: true
      example:
        disabled: false
      required:
        - disabled
    CloneWorkspaceRequest:
      type: object
      properties:
        identifier:
          type: string
          description: Workspace identifier.
          example: xh
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
      example:
        identifier: v
        name: resource name
      required:
        - identifier
        - name
    ConnectorPermissions:
      type: object
      properties:
        canDelete:
          type: boolean
          example: false
      example:
        canDelete: false
      required:
        - canDelete
    CostResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmCostsresources'
      example:
        - account: cla
          cost: '12.13'
          created: 1672531200
          currency: USD
          org: 5vt
          pipeline: Dolores id laborum quia fugiat.
          pipeline_execution_id: Dolore ut labore voluptates.
          pipeline_stage_id: Numquam et hic in.
          project: qpj
          workspace: Iste quia quae libero debitis a eaque.
        - account: cla
          cost: '12.13'
          created: 1672531200
          currency: USD
          org: 5vt
          pipeline: Dolores id laborum quia fugiat.
          pipeline_execution_id: Dolore ut labore voluptates.
          pipeline_stage_id: Numquam et hic in.
          project: qpj
          workspace: Iste quia quae libero debitis a eaque.
        - account: cla
          cost: '12.13'
          created: 1672531200
          currency: USD
          org: 5vt
          pipeline: Dolores id laborum quia fugiat.
          pipeline_execution_id: Dolore ut labore voluptates.
          pipeline_stage_id: Numquam et hic in.
          project: qpj
          workspace: Iste quia quae libero debitis a eaque.
    CostResourcesCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmCostResource'
      example:
        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
          diff_monthly_cost: Tempora sed et animi consequuntur.
          name: Tenetur voluptas eum amet distinctio suscipit.
          percentage_change_monthly_cost: 3581947795968102000
          previous_monthly_cost: Dolorem ullam et autem.
          subresources:
            Neque odio qui.:
              current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
              percentage_change_monthly_cost: 5266508547392496000
              previous_monthly_cost: Aut aut.
        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
          diff_monthly_cost: Tempora sed et animi consequuntur.
          name: Tenetur voluptas eum amet distinctio suscipit.
          percentage_change_monthly_cost: 3581947795968102000
          previous_monthly_cost: Dolorem ullam et autem.
          subresources:
            Neque odio qui.:
              current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
              percentage_change_monthly_cost: 5266508547392496000
              previous_monthly_cost: Aut aut.
        - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
          diff_monthly_cost: Tempora sed et animi consequuntur.
          name: Tenetur voluptas eum amet distinctio suscipit.
          percentage_change_monthly_cost: 3581947795968102000
          previous_monthly_cost: Dolorem ullam et autem.
          subresources:
            Neque odio qui.:
              current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
              percentage_change_monthly_cost: 5266508547392496000
              previous_monthly_cost: Aut aut.
    Counts:
      type: object
      properties:
        added:
          type: integer
          description: Number added
          example: 4053387639772728000
          format: int64
        changed:
          type: integer
          description: Number changed
          example: 7891699466286707000
          format: int64
        deleted:
          type: integer
          description: Number deleted
          example: 2656712324640707000
          format: int64
        imported:
          type: integer
          description: Number imported
          example: 7886353476917331000
          format: int64
        removed:
          type: integer
          description: Number removed
          example: 1042438670808932500
          format: int64
        unchanged:
          type: integer
          description: Number unchanged
          example: 6085066610082501000
          format: int64
      example:
        added: 1790702690741287700
        changed: 2788414013632935400
        deleted: 7500576508441649000
        imported: 6878905176367138000
        removed: 6835361979838198000
        unchanged: 6498877051513293000
      required:
        - added
        - changed
        - deleted
        - unchanged
    CreateAnsibleDataResponse:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
      example:
        id: dc538c61-de48-4220-958c-5f3c4f983daa
      required:
        - id
    CreateApprovalRequest:
      type: object
      properties:
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Accusamus distinctio ad id.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Fuga nihil.
        status:
          type: string
          description: Status of the approval resource
          default: pending
          example: approved
          enum:
            - pending
            - approved
            - rejected
        workspace_id:
          type: string
          description: The unique identifier for the workspace_id
          example: Sunt nihil quasi nam veritatis non.
      example:
        pipeline_execution_id: Quod perspiciatis accusamus enim nemo.
        pipeline_stage_id: Magnam et autem exercitationem.
        status: rejected
        workspace_id: Voluptas aliquid corrupti ex.
      required:
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
    CreateDataResponse:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceDataPolicyEvaluation'
          description: Individual policy evaluation details
          example:
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
        policy_evaluation_message:
          type: string
          description: Pre-rendered message included when policy evaluation did not pass
          example: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status:
          type: string
          description: >-
            The overall status of policy evaluation (if it occurred) indicating
            whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
      example:
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          - message: Sint asperiores qui id.
            policy_id: Facere maxime amet.
            policy_name: Dolores quo quasi.
            policy_set_id: Dolorem aut animi.
            policy_set_name: Ad quae dicta dolores.
            policy_status: Quaerat aut amet.
          - message: Sint asperiores qui id.
            policy_id: Facere maxime amet.
            policy_name: Dolores quo quasi.
            policy_set_id: Dolorem aut animi.
            policy_set_name: Ad quae dicta dolores.
            policy_status: Quaerat aut amet.
        policy_evaluation_message: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status: error
      required:
        - id
    CreateDynamicGroup:
      type: object
      properties:
        configuration:
          $ref: '#/components/schemas/DynamicConfig'
        connector_identifier:
          type: string
          description: Connector Identifier is the identifier of the connector to use.
          example: my-group
        connector_type:
          type: string
          description: Connector Type is the type of connector to use.
          example: workspace
          enum:
            - workspace
            - aws
            - gcp
            - azure
        dynamic_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Dynamic Vars is the variables associated with the host.
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
      example:
        configuration:
          host_address_attribute: <+attributes.public_dns>
          resource_type: aws_instance
          selectors:
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
        connector_identifier: my-group
        connector_type: workspace
        dynamic_vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
        vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
      required:
        - connector_identifier
        - connector_type
    CreateExecutionRequest:
      type: object
      properties:
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Non fugiat tenetur ratione et minus.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Neque hic blanditiis impedit animi non.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Totam consequatur quos laboriosam voluptatibus maxime unde.
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Labore eum qui nulla voluptatem.
      example:
        pipeline: Voluptatem id ea.
        pipeline_execution_id: Voluptatem ut molestiae.
        pipeline_stage_id: Est dolor autem.
        workspace: Repellat debitis dolorem eligendi.
      required:
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
    CreateExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '9'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 6238050805394936000
          format: int64
        org:
          type: string
          description: Org is the organisation identifier.
          example: wt
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Ut quia.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Voluptatem ea quod quisquam voluptatum odio voluptatem.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Provident placeat reprehenderit est dicta cupiditate ut.
        project:
          type: string
          description: Project is the project identifier.
          example: nu
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The overall status of the execution
          example: none
          enum:
            - none
            - success
            - failure
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Autem unde placeat.
      example:
        account: 1b
        created: 1255440276583426000
        org: 9hi
        pipeline: Qui assumenda corrupti quod repellat delectus ut.
        pipeline_execution_id: Consectetur et tenetur ex officiis.
        pipeline_stage_id: Dicta aut culpa.
        project: '4'
        status: none
        workspace: Eum quibusdam perferendis ab et.
      required:
        - status
        - created
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
    CreateInventoryGroupRequest:
      type: object
      properties:
        configuration:
          $ref: '#/components/schemas/DynamicConfig'
        connector_type:
          type: string
          description: Connector Type is the type of connector to use.
          example: workspace
          enum:
            - workspace
            - aws
            - gcp
            - azure
        dynamic_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of dynamic variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of environment variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
        hosts:
          type: array
          items:
            type: string
            example: Autem nihil et aliquid ducimus.
          description: List of host addresses that belong to the group
          example:
            - Consequatur ut.
            - Quia ipsa.
            - Consequatur vel nisi molestiae fuga ut.
        identifier:
          type: string
          description: The identifier of the group
          example: test_group
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
      example:
        configuration:
          host_address_attribute: <+attributes.public_dns>
          resource_type: aws_instance
          selectors:
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
        connector_type: workspace
        dynamic_vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
        env_vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
        hosts:
          - Est fuga.
          - Enim culpa.
          - Repellat quaerat qui quasi id et fugiat.
        identifier: test_group
        vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
      required:
        - identifier
    CreateInventoryHostRequest:
      type: object
      properties:
        groups:
          type: array
          items:
            type: string
            example: Ad placeat dicta ad.
          description: Groups is the list of groups the host belongs to.
          example:
            - Aut repellendus.
            - Ut temporibus ea.
            - Modi blanditiis adipisci praesentium.
        host_address:
          type: string
          description: Host address is the address of the host.
          example: host1.example.com
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
      example:
        groups:
          - Voluptas impedit rerum.
          - Quo et accusantium est distinctio adipisci.
          - Id recusandae labore blanditiis sit repellat eveniet.
        host_address: host1.example.com
        vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
      required:
        - host_address
    CreateInventoryRequest:
      type: object
      properties:
        dynamic_groups:
          type: array
          items:
            $ref: '#/components/schemas/CreateDynamicGroup'
          description: Groups is the list of dynamic groups to use.
          example:
            - configuration:
                host_address_attribute: <+attributes.public_dns>
                include_conditions:
                  - attribute: tag.environment
                    operator: equals
                    value: prod
                resource_type: aws_instance
              connector_identifier: my-workspace
              connector_type: workspace
        groups:
          type: array
          items:
            $ref: '#/components/schemas/CreateManualGroup'
          description: Groups is the list of manual groups to use.
          example:
            - hosts:
                - host1.example.com: null
              name: my-group
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: dynamic
          enum:
            - manual
            - dynamic
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the list of manual variables to use.
          example:
            - name: my-var
              value: my-value
      example:
        dynamic_groups:
          - configuration:
              host_address_attribute: <+attributes.public_dns>
              include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              resource_type: aws_instance
            connector_identifier: my-workspace
            connector_type: workspace
        groups:
          - hosts:
              - host1.example.com: null
            name: my-group
        identifier: test_inventory
        name: test inventory
        type: manual
        vars:
          - name: my-var
            value: my-value
      required:
        - type
        - name
        - identifier
        - data
    CreateInventoryResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 6j
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: f4
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: yay
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: dynamic
          enum:
            - manual
            - dynamic
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
      example:
        account: hj
        created: 1627590400
        identifier: test_inventory
        name: test inventory
        org: o88
        project: 3n
        type: dynamic
        updated: 1627686800
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    CreateInventoryVarsRequest:
      type: object
      properties:
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
      example:
        env_vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
        vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
      required:
        - vars
    CreateManualGroup:
      type: object
      properties:
        hosts:
          type: array
          items:
            type: string
            example: Minus ipsa neque molestiae praesentium est.
          description: Groups is the list of hosts in the group.
          example:
            - Ut quo eius doloribus sed similique.
            - Est fuga.
            - Corporis perferendis.
            - Ipsum et est aut rerum et.
        name:
          type: string
          description: Name is the name of the group.
          example: my-group
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
      example:
        hosts:
          - Omnis asperiores exercitationem.
          - Ut consequatur temporibus sed.
          - Officiis hic provident.
        name: my-group
        vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
      required:
        - name
    CreateModuleDataRequest:
      type: object
      properties:
        download_url:
          type: string
          description: download url of the module
          example: Quos voluptatem dolorem quia dolor.
        error:
          type: object
          description: error from the tag operation
          example:
            Odit omnis et et ut ut.: Exercitationem accusamus.
          additionalProperties:
            type: string
            example: Ex maxime aut commodi.
        examples_paths:
          type: array
          items:
            type: string
            example: Voluptatibus et commodi hic.
          description: path of the examples relative to the module
          example:
            - Consequatur est perspiciatis non et aut.
            - Voluptates quis eligendi nisi occaecati voluptatem.
            - Enim sit quia.
        git_tag:
          type: string
          description: git tag of the module
          example: Nemo vel culpa.
        metadata:
          type: string
          description: metadata to be parsed
          example: Ex possimus et aut.
        repo_url:
          type: string
          description: url pointing to the repo
          example: Quidem porro eius vitae.
        submodule_name:
          type: string
          description: name of the submodule been processed
          example: Maxime magnam occaecati debitis sunt.
        submodule_paths:
          type: array
          items:
            type: string
            example: Tenetur provident maiores.
          description: path of the submodules relative to the module
          example:
            - Assumenda qui voluptas quia quibusdam earum.
            - Et reiciendis.
            - Est sunt minus sed repellendus voluptatem.
      example:
        download_url: Veniam facere ipsa deleniti unde et.
        error:
          Deserunt alias qui asperiores laudantium velit amet.: Eos aliquid.
        examples_paths:
          - Non quia architecto.
          - Eos quia similique atque expedita nemo.
          - Enim aliquam vitae accusamus.
        git_tag: Explicabo similique sit temporibus cumque.
        metadata: Dolor voluptatem unde voluptatem aliquid.
        repo_url: Saepe non eos quaerat veniam qui.
        submodule_name: Quaerat libero occaecati aperiam.
        submodule_paths:
          - Cupiditate earum laboriosam ipsam.
          - Quis facilis minus dolorem neque rem vel.
          - Sequi illum nobis.
          - Suscipit exercitationem voluptatum ut dolor beatae.
      required:
        - metadata
        - download_url
        - git_tag
    CreateModuleExecutionRequest:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: h9j
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: eun
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Possimus iure ad.
        pipelineExecutionId:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Ullam eos ea et.
        pipelineStageId:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Et quasi dolor et illum.
        project:
          type: string
          description: Project is the project identifier.
          example: s6
          minLength: 1
          maxLength: 128
      example:
        account: r
        org: l
        pipeline: Ratione natus quod illo sequi quod.
        pipelineExecutionId: Ea ea voluptas similique commodi sunt.
        pipelineStageId: Quae quia eos quidem dolorem vero aliquid.
        project: jz5
      required:
        - account
        - org
        - project
        - pipelineExecutionId
        - pipelineStageId
        - pipeline
    CreateModuleExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: d
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 8737432810134521000
          format: int64
        metadata:
          $ref: '#/components/schemas/ModuleExecutionMetadata'
        moduleId:
          type: string
          description: The unique identifier for the associated module
          example: Sit sunt aut.
        org:
          type: string
          description: Org is the organisation identifier.
          example: y7b
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: d
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The overall status of the execution
          example: Enim sequi nihil voluptatem quod laboriosam sunt.
      example:
        account: p
        created: 4950540408672157000
        metadata:
          pipeline: Facilis laboriosam debitis ad explicabo.
          pipeline_execution_id: Reprehenderit nobis aperiam dolorem dolorum reprehenderit nisi.
          pipeline_execution_number: Repellendus delectus quo.
          pipeline_name: Autem necessitatibus inventore corrupti sequi.
          pipeline_stage_id: Quasi et.
          trigger:
            Asperiores magnam omnis inventore numquam minima repellendus.: Molestiae expedita.
            Enim ad dolor quam sit maiores.: Ut ea.
            Mollitia et et.: Eaque iste necessitatibus officia ipsum id.
        moduleId: Adipisci quibusdam veritatis esse.
        org: s
        project: '4'
        status: Quo perferendis aut.
      required:
        - status
        - created
        - account
        - org
        - project
        - pipelineExecutionId
        - pipelineStageId
        - moduleId
        - pipeline
    CreateModuleRequest:
      type: object
      properties:
        description:
          type: string
          description: description of the module
          example: Impedit modi consequatur eligendi.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Est accusantium qui.
        name:
          type: string
          description: module name
          example: erj
          minLength: 1
          maxLength: 128
        onboarding_pipeline:
          type: string
          description: Onboarding Pipeline
          example: Sint vel soluta.
        onboarding_pipeline_org:
          type: string
          description: Onboarding Pipeline Org
          example: Nisi consequatur placeat inventore ut.
        onboarding_pipeline_project:
          type: string
          description: Onboarding Pipeline Project
          example: Aut velit inventore magni sequi.
        org:
          type: string
          description: org that owns the module
          example: 4v
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: d1
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Voluptate sapiente et.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Harum et incidunt suscipit id voluptas sunt.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: s2
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Cumque eum rem voluptatibus debitis sed.
      example:
        description: At est debitis.
        git_tag_style: Maiores cupiditate nesciunt natus aut.
        name: pik
        onboarding_pipeline: Voluptates minus itaque eum.
        onboarding_pipeline_org: Voluptatem molestias consequatur tempora sapiente.
        onboarding_pipeline_project: Sapiente excepturi.
        org: s
        project: n2
        repository: Atque veniam ea id.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Omnis explicabo id dolores suscipit.
        repository_path: ''
        system: w
        tags: Doloribus tempora nemo inventore consequatur porro.
      required:
        - name
        - system
    CreateModuleTagsRequest:
      type: object
      properties:
        error:
          type: object
          description: error from the tag operation
          example:
            Qui nisi eligendi rerum occaecati delectus veniam.: Ipsa qui tempora non id.
            Rerum modi quia nobis.: Sequi qui aliquam.
          additionalProperties:
            type: string
            example: Sed voluptatum.
        tags:
          type: array
          items:
            type: string
            example: Nihil mollitia dolorum facere alias veniam aperiam.
          description: tags defining the module
          example:
            - Labore aut tempora est eos inventore.
            - Repellendus maxime sint voluptates sed et.
      example:
        error:
          Deleniti expedita in reprehenderit quas.: Quod ut.
          Id placeat doloribus dicta voluptatem enim placeat.: Omnis ut.
          Ipsum debitis voluptas.: Repellat culpa porro voluptas.
        tags:
          - Eligendi sunt commodi blanditiis tempora doloribus.
          - Nemo dolores id.
    CreatePlaybookRequest:
      type: object
      properties:
        env_vars:
          type: object
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Et aut est soluta.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        vars:
          type: object
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Qui exercitationem minus quia.
        name: test playbook
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - identifier
        - name
        - repository_path
    CreatePlaybookResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: hb8
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        env_vars:
          type: string
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Itaque dolor distinctio id placeat cupiditate nisi.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: 0iz
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: lu
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
        vars:
          type: string
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
      example:
        account: 5r
        created: 1627590400
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Et porro cum in.
        name: test playbook
        org: ni8
        project: qvx
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        updated: 1627686800
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - repository_path
    CreatePlaybookVarRequest:
      type: object
      properties:
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
      example:
        env_vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
        vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
      required:
        - vars
    CreateProviderVersionRequestBody:
      type: object
      properties:
        gpg_key_id:
          type: string
          description: GPG key ID
          example: '1234567890'
        protocol:
          type: array
          items:
            type: string
            example: Nam cupiditate qui quasi illo aut.
          description: Supported Terraform protocol versions
          example:
            - '4.0'
        version:
          type: string
          description: Provider version
          example: 1.0.0
      example:
        gpg_key_id: '1234567890'
        protocol:
          - '4.0'
        version: 1.0.0
      required:
        - version
        - protocol
        - gpg_key_id
    CreateRemoteExecutionRequest:
      type: object
      properties:
        custom_arguments:
          type: object
          description: The arguments supplied to the plan.
          example:
            Et reiciendis magni rerum.:
              - Est ut at harum.
              - Quibusdam necessitatibus sequi.
              - Non omnis voluptatum sit quis et.
              - Et aliquid cupiditate deleniti ipsam.
            Rem neque.:
              - Iure inventore officiis voluptate sit.
              - Eum non aut earum aperiam ut.
              - Omnis eaque adipisci libero impedit hic eaque.
              - Ullam architecto eaque facere reiciendis.
            Velit ea.:
              - Deleniti quis nam quas nostrum ut blanditiis.
              - Voluptate voluptatibus nihil blanditiis.
              - Nostrum perferendis sit.
              - Quis autem ratione eaque eligendi illo.
          additionalProperties:
            type: array
            items:
              type: string
              example: Rem doloremque quis sit voluptatem quos.
            example:
              - Fuga amet dolorem sit odit.
              - Facere magnam modi qui repudiandae est debitis.
      example:
        custom_arguments:
          Magni eligendi.:
            - Laboriosam eligendi modi.
            - Adipisci dignissimos totam rerum.
            - Aut architecto assumenda sequi omnis aspernatur deserunt.
      required:
        - id
        - pipeline_execution_id
        - pipeline_execution_url
        - created
        - updated
        - executed
        - sha256_checksum
    CreateRemoteExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: s0p
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 4502941511827892000
          format: int64
        custom_arguments:
          type: object
          description: The arguments supplied to the plan.
          example:
            Nostrum harum aperiam sunt voluptatum repellat.:
              - Laboriosam sit placeat est omnis.
              - Magnam nihil reprehenderit.
          additionalProperties:
            type: array
            items:
              type: string
              example: Explicabo saepe accusamus.
            example:
              - Quasi omnis.
              - Quae praesentium ea.
        executed:
          type: boolean
          description: >-
            The boolean value indicating if the remote execution has been
            executed.
          example: false
        id:
          type: string
          description: The ID of the remote execution.
          example: 66eacebc-846d-46c1-8035-b2fa3f104861
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: g
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: >-
            The pipeline execution ID of the pipeline executing the remote
            execution
          example: Mollitia harum repellat illum itaque.
        pipeline_execution_url:
          type: string
          description: >-
            The pipeline execution URL of the pipeline executing the remote
            execution
          example: Dignissimos voluptates.
        project:
          type: string
          description: Project is the project identifier.
          example: 'y'
          minLength: 1
          maxLength: 128
        sha256_checksum:
          type: string
          description: >-
            The checksum of the patch file of changes that the remote execution
            will run against.
          example: Explicabo eaque.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 7419693912475467000
          format: int64
        workspace:
          type: string
          description: The workspace associated with the remote execution.
          example: Qui asperiores deleniti.
      example:
        account: 44z
        created: 1026540025761493000
        custom_arguments:
          Eaque enim quam similique.:
            - Sapiente quia quia aperiam laborum dolorem veritatis.
            - Atque libero quos aliquam maxime.
          Et ad nulla perferendis cum quaerat.:
            - Rem est.
            - Rerum in sit praesentium eligendi.
            - Minima qui iusto.
        executed: true
        id: e381a3a4-8c14-462a-9fac-02bb4f32fb47
        org: 7k9
        pipeline_execution_id: Qui sint voluptate id.
        pipeline_execution_url: Accusantium voluptatem qui vitae at nihil.
        project: 'y'
        sha256_checksum: Et ex qui veniam.
        updated: 1486608406336826000
        workspace: Iure quam aut illo cum ullam.
      required:
        - account
        - org
        - project
        - id
        - workspace
        - pipeline_execution_id
        - pipeline_execution_url
        - created
        - updated
        - executed
        - sha256_checksum
    CreateTestingPipelineRequest:
      type: object
      properties:
        org:
          type: string
          description: Org is the organisation identifier.
          example: 7d
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '00'
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: type of the pipeline to create
          default: test
          example: Ea voluptatem labore quis est.
      example:
        org: rxr
        project: e
        type: Sit omnis quae quam praesentium possimus.
      required:
        - org
        - project
    CreateVariableSetRequestAccScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Aut quidem consequatur sed corrupti sapiente aut.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Non fuga ab saepe mollitia.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3543512447578841000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: 2s
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Et minima.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Non qui praesentium voluptas numquam.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Sit mollitia molestiae.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Corrupti cupiditate quia tempora.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Voluptatibus laborum similique et alias nemo.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 829061125213541400
        identifier: xs
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Accusamus reiciendis sapiente quisquam aliquid id illo.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Impedit saepe earum voluptas.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Quisquam et error quisquam possimus.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - identifier
        - name
    CreateVariableSetRequestOrgScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Illum sint.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Sed nihil ea cumque rerum ipsa.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3452801483799840300
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: i3x
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Enim ratione ut quia ex temporibus id.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Est reprehenderit ut fugit optio.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Occaecati unde incidunt occaecati.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 6320100992332981000
        identifier: i0
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Asperiores debitis dolor incidunt aspernatur.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Illum rerum officiis.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - identifier
        - name
    CreateVariableSetRequestProjScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Velit unde temporibus.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 8719959319756618000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: l
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Corporis perspiciatis reprehenderit rerum.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Eos illo dolor.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Vel quisquam numquam.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Animi laudantium id id.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Illum necessitatibus ut ad eum nesciunt illo.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Occaecati eos dicta laudantium.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 3069327762059037700
        identifier: '6'
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Minus id autem laboriosam est perferendis.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - identifier
        - name
    CreateWorkspaceRequest:
      type: object
      properties:
        associated_template:
          $ref: '#/components/schemas/AssociatedTemplate'
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.2404291
          format: float
        cost_breakdown_json:
          type: string
          description: >-
            cost_breakdown_json is the identifier to the breakdown cost file
            from the current execution that was applied successfully
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json:
          type: string
          description: >-
            cost_diff_json is the identifier to the diff cost file between the
            previous and current successful executions
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Perferendis culpa.:
              project_pipeline: Sint natus sint quos enim magni.
              workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
            Sapiente placeat quos assumenda sed in iusto.:
              project_pipeline: Sint natus sint quos enim magni.
              workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Nesciunt voluptas.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
            Voluptatem vero enim beatae libero vel.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3812533945629312000
          format: int64
        identifier:
          type: string
          description: Workspace identifier.
          example: '94'
          minLength: 1
          maxLength: 128
        modules_json:
          type: string
          description: >-
            modules_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Ut iure voluptas saepe dolor sit ducimus.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
        providers_json:
          type: string
          description: >-
            providers_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Dolores nihil laborum et accusantium tempore magnam.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Omnis est nobis eligendi.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Qui natus sunt eveniet architecto voluptatem voluptatibus.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Ut consectetur.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Ducimus velit sapiente corporis nulla libero nihil.
        state_checksum:
          type: string
          description: state_checksum is the sha-256 checksum of terraform state file
          example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_plan_json:
          type: string
          description: >-
            terraform_plan_json is the identifier to the current state file only
            in JSON format.
          example: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state:
          type: string
          description: >-
            terraform_state is the identifier to the plan file used to create
            the latest state.
          example: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json:
          type: string
          description: >-
            terraform_state_json is the identifier to the plan file used to
            create the latest state only in JSON format.
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Est inventore earum quasi pariatur architecto.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
            Nisi non.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: true
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Sit aut.
        variable_sets:
          type: array
          items:
            type: string
            example: Quam et.
          description: Attached Variable Sets references
          example:
            - Sed autem.
            - Consequatur perspiciatis.
            - Perferendis assumenda id quaerat.
            - Quas suscipit non temporibus.
      example:
        associated_template:
          template_id: h
          version: ck
        budget: 0.32983452
        cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled: true
        default_pipelines:
          Qui ipsum dicta.:
            project_pipeline: Sint natus sint quos enim magni.
            workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Enim reprehenderit ut ut dolor aliquid non.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
          Quo omnis impedit enim soluta facere aut.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
        id: 3806233341503601700
        identifier: '2'
        modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        name: resource name
        provider_connector: Non esse nihil porro quae ad.
        provider_connectors:
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
        providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner: Fuga est cum ea consectetur ipsa quia.
        provisioner_version: Corporis et provident.
        prune_sensitive_data: true
        repository: Earum modi dolore.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Est et dolorem.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: false
        sparse_checkout: Repellat ratione.
        state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        tags:
          foo: bar
        terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Delectus sit vel sint voluptas dolores.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
        terragrunt_provider: false
        terragrunt_version: Fuga assumenda velit.
        variable_sets:
          - Dolor voluptates officiis.
          - Quis autem dolorem qui autem.
          - Veniam provident esse consectetur nobis veritatis exercitationem.
          - Omnis nihil.
      required:
        - identifier
        - name
        - provider_connector
        - provisioner
        - terraform_variables
        - environment_variables
    CreateWorkspaceTemplateRequest:
      type: object
      properties:
        template_id:
          type: string
          description: Template identifier
          example: 9kl
          minLength: 1
          maxLength: 128
        version:
          type: string
          description: Template version
          example: b
          minLength: 1
          maxLength: 64
        workspace_id:
          type: string
          description: Workspace identifier
          example: a
          minLength: 1
          maxLength: 128
      example:
        template_id: z3
        version: y8
        workspace_id: x2
      required:
        - workspace_id
        - template_id
        - version
    CreateWorkspaceTemplateResponse:
      type: object
      properties:
        account:
          type: string
          description: Account identifier.
          example: c
          minLength: 1
          maxLength: 128
        created_at:
          type: integer
          description: Timestamp when the workspace-template association was created.
          example: 1627590400
          format: int64
        org:
          type: string
          description: Organization identifier.
          example: az
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier.
          example: l
          minLength: 1
          maxLength: 128
        template_id:
          type: string
          description: Template identifier.
          example: uo
          minLength: 1
          maxLength: 128
        updated_at:
          type: integer
          description: Timestamp when the workspace-template association was last updated.
          example: 1627686800
          format: int64
        version:
          type: string
          description: Template version associated with the workspace.
          example: uz7
          minLength: 1
          maxLength: 32
        workspace_id:
          type: string
          description: Workspace identifier.
          example: tu8
          minLength: 1
          maxLength: 128
      example:
        account: r
        created_at: 1627590400
        org: j
        project: 0k1
        template_id: 6z
        updated_at: 1627686800
        version: vcp
        workspace_id: ax2
      required:
        - workspace_id
        - template_id
        - created_at
        - updated_at
        - account
        - project
        - org
    CreateWorkspaceVariableRequest:
      type: object
      properties:
        key:
          type: string
          description: Key is the identifier for the secret.
          example: gy
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: env
          enum:
            - env
            - tf
        value:
          type: string
          description: Value is the value of the secret.
          example: Magnam quod.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: string
          enum:
            - string
            - secret
      example:
        key: d3p
        kind: tf
        value: Reprehenderit libero nam temporibus commodi expedita.
        value_type: secret
      required:
        - key
        - value
        - value_type
        - kind
    CreateWorkspaceVariableResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: yfw
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 6223160094267986000
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: t
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: env
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: 0r9
          minLength: 1
          maxLength: 128
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
        project:
          type: string
          description: Project is the project identifier.
          example: '4'
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 4131215482915194000
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Quo dolores maxime.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: string
          enum:
            - string
            - secret
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Et quaerat assumenda fugit.
      example:
        account: wzg
        created: 458882827220047100
        key: np
        kind: tf
        org: '6'
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
        project: 6p
        updated: 5072838441819016000
        value: Unde molestiae doloribus expedita.
        value_type: string
        workspace: Ab et assumenda officiis explicabo velit.
      required:
        - account
        - org
        - project
        - workspace
        - key
        - value
        - value_type
        - kind
        - created
        - updated
    DefaultPipelineCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmDefaultpipeline'
      example:
        - account: Officia eligendi assumenda placeat vero dolorem.
          operation: plan
          org: Sint aut et sit quis.
          pipeline: testpipeline
          project: Dolores delectus aut eum alias.
          provisioner: opentofu
          updated: 1636669297674
          workspace: plan
        - account: Officia eligendi assumenda placeat vero dolorem.
          operation: plan
          org: Sint aut et sit quis.
          pipeline: testpipeline
          project: Dolores delectus aut eum alias.
          provisioner: opentofu
          updated: 1636669297674
          workspace: plan
        - account: Officia eligendi assumenda placeat vero dolorem.
          operation: plan
          org: Sint aut et sit quis.
          pipeline: testpipeline
          project: Dolores delectus aut eum alias.
          provisioner: opentofu
          updated: 1636669297674
          workspace: plan
    DefaultPipelineIdentifier:
      type: object
      properties:
        account:
          type: string
          example: Sunt itaque.
        operation:
          type: string
          description: The default pipeline is associated with this operation
          example: plan
          enum:
            - plan
            - apply
            - destroy
            - drift
        org:
          type: string
          example: Expedita commodi occaecati a.
        project:
          type: string
          example: Quod sapiente.
        provisioner:
          type: string
          description: The default pipeline is associated with this provisioner
          example: opentofu
          enum:
            - terraform
            - opentofu
            - terragrunt
        workspace:
          type: string
          description: The default pipeline is associated with this workspace if specified
          default: ''
          example: plan
      example:
        account: Nisi minus.
        operation: plan
        org: Et esse quas aliquid.
        project: Sint nihil voluptatem autem in.
        provisioner: opentofu
        workspace: plan
      required:
        - account
        - org
        - project
        - provisioner
        - operation
    DefaultPipelineOverride:
      type: object
      properties:
        project_pipeline:
          type: string
          description: Default pipeline assigned as the project-level
          example: Ipsa iusto qui.
        workspace_pipeline:
          type: string
          description: Default pipeline assigned as the workspace-level
          example: Sed et voluptatem autem expedita.
      description: Per-workspace override to the assigned default pipelines.
      example:
        project_pipeline: Doloremque ut.
        workspace_pipeline: Amet provident laboriosam soluta voluptatem.
    DeleteDefaultPipelineRequest:
      type: object
      properties:
        operation:
          type: string
          description: The default pipeline is associated with this operation
          example: plan
          enum:
            - plan
            - apply
            - destroy
            - drift
        provisioner:
          type: string
          description: The default pipeline is associated with this provisioner
          example: opentofu
          enum:
            - terraform
            - opentofu
            - terragrunt
        workspace:
          type: string
          description: The default pipeline is associated with this workspace if specified
          default: ''
          example: plan
      example:
        operation: plan
        provisioner: opentofu
        workspace: plan
      required:
        - provisioner
        - operation
    DeleteInventoryVarsRequest:
      type: object
      properties:
        vars:
          type: array
          items:
            type: string
            example: Eligendi debitis perspiciatis commodi ut aut.
          example:
            - Et nesciunt hic.
            - Sint est.
      example:
        vars:
          - Nisi voluptatem voluptatum voluptas.
          - Pariatur animi dolorum asperiores deserunt et.
          - Voluptates explicabo voluptas qui quibusdam.
      required:
        - vars
    DeletePlaybookVarsRequest:
      type: object
      properties:
        vars:
          type: array
          items:
            type: string
            example: Ut aut neque et voluptas hic.
          example:
            - Nulla sint dolor vel.
            - Dolor nam tenetur ut.
            - Aspernatur voluptatem laboriosam.
            - Debitis ipsa eum dolorem quaerat.
      example:
        vars:
          - Eligendi quo explicabo minima.
          - Maiores quis.
      required:
        - vars
    DeleteResourcesRequest:
      type: object
      properties:
        resources:
          type: array
          items:
            $ref: '#/components/schemas/ResourceDelete'
          example:
            - module: Accusantium aspernatur rerum dicta magni velit eveniet.
              name: Pariatur itaque sed ut.
              path_id: Id eum ab voluptatem officiis omnis.
              provider: Pariatur ut aperiam fugiat qui architecto.
              type: Et consequatur voluptas est temporibus minima.
            - module: Accusantium aspernatur rerum dicta magni velit eveniet.
              name: Pariatur itaque sed ut.
              path_id: Id eum ab voluptatem officiis omnis.
              provider: Pariatur ut aperiam fugiat qui architecto.
              type: Et consequatur voluptas est temporibus minima.
            - module: Accusantium aspernatur rerum dicta magni velit eveniet.
              name: Pariatur itaque sed ut.
              path_id: Id eum ab voluptatem officiis omnis.
              provider: Pariatur ut aperiam fugiat qui architecto.
              type: Et consequatur voluptas est temporibus minima.
            - module: Accusantium aspernatur rerum dicta magni velit eveniet.
              name: Pariatur itaque sed ut.
              path_id: Id eum ab voluptatem officiis omnis.
              provider: Pariatur ut aperiam fugiat qui architecto.
              type: Et consequatur voluptas est temporibus minima.
      example:
        resources:
          - module: Accusantium aspernatur rerum dicta magni velit eveniet.
            name: Pariatur itaque sed ut.
            path_id: Id eum ab voluptatem officiis omnis.
            provider: Pariatur ut aperiam fugiat qui architecto.
            type: Et consequatur voluptas est temporibus minima.
          - module: Accusantium aspernatur rerum dicta magni velit eveniet.
            name: Pariatur itaque sed ut.
            path_id: Id eum ab voluptatem officiis omnis.
            provider: Pariatur ut aperiam fugiat qui architecto.
            type: Et consequatur voluptas est temporibus minima.
      required:
        - resources
    DeleteResourcesResponse:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/ResourceDeleteResult'
          example:
            - error: Libero iste sit quibusdam doloremque.
              module: Neque cum consectetur ut nulla.
              name: Laborum facilis vel illo sit aut ad.
              provider: Suscipit hic voluptatem beatae.
              status: deleted
              type: Corporis voluptatem velit non fuga.
            - error: Libero iste sit quibusdam doloremque.
              module: Neque cum consectetur ut nulla.
              name: Laborum facilis vel illo sit aut ad.
              provider: Suscipit hic voluptatem beatae.
              status: deleted
              type: Corporis voluptatem velit non fuga.
            - error: Libero iste sit quibusdam doloremque.
              module: Neque cum consectetur ut nulla.
              name: Laborum facilis vel illo sit aut ad.
              provider: Suscipit hic voluptatem beatae.
              status: deleted
              type: Corporis voluptatem velit non fuga.
        summary:
          $ref: '#/components/schemas/ResourceDeleteSummary'
      example:
        results:
          - error: Libero iste sit quibusdam doloremque.
            module: Neque cum consectetur ut nulla.
            name: Laborum facilis vel illo sit aut ad.
            provider: Suscipit hic voluptatem beatae.
            status: deleted
            type: Corporis voluptatem velit non fuga.
          - error: Libero iste sit quibusdam doloremque.
            module: Neque cum consectetur ut nulla.
            name: Laborum facilis vel illo sit aut ad.
            provider: Suscipit hic voluptatem beatae.
            status: deleted
            type: Corporis voluptatem velit non fuga.
        summary:
          deleted: 6250241410445223000
          failed: 5629116169965849000
          skipped: 119490300577806300
          total: 1196836203758572300
      required:
        - results
        - summary
    DependenciesMetadata:
      type: object
      properties:
        dependency_name:
          type: string
          description: Dependency name
          example: Rem provident.
        dependency_source:
          type: string
          description: Dependency source
          example: Temporibus vero.
        dependency_version:
          type: string
          description: Dependency version
          example: Quis facere id fugiat ducimus.
      example:
        dependency_name: Dolor quia corporis quam soluta repudiandae aut.
        dependency_source: Distinctio perspiciatis nam esse voluptatem.
        dependency_version: Dolores velit odit impedit blanditiis.
    DestroyWorkspaceVariableResponse:
      type: object
      properties:
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
      example:
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
    DownloadModuleResponse:
      type: object
      properties:
        location:
          type: string
          description: location of the artifact
          example: Eveniet alias.
      example:
        location: Sint assumenda id aspernatur praesentium aut quasi.
    DynamicConfig:
      type: object
      properties:
        host_address_attribute:
          type: string
          description: Host address is the address of the host.
          example: <+attributes.public_dns>
        resource_type:
          type: string
          description: Type is the type of resource to select.
          example: aws_instance
        selectors:
          type: array
          items:
            $ref: '#/components/schemas/ResourcesSelectorConditions'
          example:
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
      example:
        host_address_attribute: <+attributes.public_dns>
        resource_type: aws_instance
        selectors:
          - attribute: <+attributes.region>
            operator: equals
            value: europe
          - attribute: <+attributes.region>
            operator: equals
            value: europe
    DynamicGroup:
      type: object
      properties:
        configuration:
          $ref: '#/components/schemas/DynamicConfig'
        connector_identifier:
          type: string
          description: Connector Identifier is the identifier of the connector to use.
          example: my-workspace
        connector_type:
          type: string
          description: Connector Type is the type of connector to use.
          example: workspace
          enum:
            - workspace
            - aws
            - gcp
            - azure
        dynamic_vars:
          type: object
          description: The vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdd8:
              key: region
              value: <+attributes.tags.region>
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        vars:
          type: object
          description: The vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdd8:
              key: ansible_ssh_private_key_file
              value: ssh-key
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        configuration:
          host_address_attribute: <+attributes.public_dns>
          include_conditions:
            - attribute: tag.environment
              operator: equals
              value: prod
          resource_type: aws_instance
        connector_identifier: my-workspace
        connector_type: workspace
        dynamic_vars:
          704b228e-728d-4857-afca-b036c27abdd8:
            key: region
            value: <+attributes.tags.region>
        vars:
          704b228e-728d-4857-afca-b036c27abdd8:
            key: ansible_ssh_private_key_file
            value: ssh-key
            value_type: secret
      required:
        - connector_type
        - connector_identifier
    DynamicInventory:
      type: object
      properties:
        env_vars:
          type: object
          description: The environment vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdb9:
              key: MY_ENV_VAR
              value: value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        groups:
          type: array
          items:
            $ref: '#/components/schemas/DynamicGroup'
          description: Groups is the list of dynamic groups to use.
          example:
            - configuration:
                host_address_attribute: <+attributes.public_dns>
                include_conditions:
                  - attribute: tag.environment
                    operator: equals
                    value: prod
                resource_type: aws_instance
              connector_identifier: my-workspace
              connector_type: workspace
        vars:
          type: object
          description: The vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdd8:
              key: ansible_ssh_private_key_file
              value: ssh-key
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        env_vars:
          704b228e-728d-4857-afca-b036c27abdb9:
            key: MY_ENV_VAR
            value: value
            value_type: string
        groups:
          - configuration:
              host_address_attribute: <+attributes.public_dns>
              include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              resource_type: aws_instance
            connector_identifier: my-workspace
            connector_type: workspace
        vars:
          704b228e-728d-4857-afca-b036c27abdd8:
            key: ansible_ssh_private_key_file
            value: ssh-key
            value_type: secret
      required:
        - groups
    DynamicInventoryResource:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '2'
          minLength: 1
          maxLength: 128
        data:
          $ref: '#/components/schemas/DynamicInventory'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: d
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: z
          minLength: 1
          maxLength: 128
      example:
        account: sy
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: g6
        project: poc
      required:
        - account
        - org
        - project
        - identifier
        - name
        - data
        - type
    EnableTestingRequest:
      type: object
      properties:
        org:
          type: string
          description: Org is the organisation identifier.
          example: m
          minLength: 1
          maxLength: 128
        pipeline_id:
          type: array
          items:
            type: string
            example: Reprehenderit sint aspernatur animi rerum animi.
          description: >-
            pipelines to create the webhooks to trigger the executions for
            testing
          example:
            - Et rem in.
            - Et inventore nobis et.
            - Itaque aut.
        project:
          type: string
          description: Project is the project identifier.
          example: '4'
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: provider connector
          example: Optio natus.
        provisioner_type:
          type: string
          description: provisioner type
          example: Vel maxime illo nihil accusantium cum.
        provisioner_version:
          type: string
          description: provisioner version
          example: Expedita qui sequi qui eos.
        release_pipeline:
          type: string
          description: pipeline to create the webhooks for releases
          example: Impedit quas non distinctio qui occaecati cum.
      example:
        org: 9u
        pipeline_id:
          - Laudantium aut sint et eaque mollitia.
          - Molestiae nam unde repellendus magni aut et.
          - Impedit et facere unde qui.
          - Voluptatem a velit dolorem.
        project: '1'
        provider_connector: Mollitia sequi.
        provisioner_type: Libero tempora quo deserunt.
        provisioner_version: Sunt minus at officia repellendus.
        release_pipeline: In neque id exercitationem quam dolore.
      required:
        - org
        - project
        - provider_connector
        - provisioner_type
        - provisioner_version
    IaCMError:
      type: object
      properties:
        fault:
          type: boolean
          description: Is the error a server-side fault?
          example: false
        id:
          type: string
          description: >-
            ID is a unique identifier for this particular occurrence of the
            problem.
          example: 123abc
        message:
          type: string
          description: >-
            Message is a human-readable explanation specific to this occurrence
            of the problem.
          example: parameter 'p' must be an integer
        name:
          type: string
          description: Name is the name of this class of errors.
          example: bad_request
        temporary:
          type: boolean
          description: Is the error temporary?
          example: false
        timeout:
          type: boolean
          description: Is the error a timeout?
          example: true
      example:
        fault: false
        id: 123abc
        message: parameter 'p' must be an integer
        name: bad_request
        temporary: false
        timeout: true
      required:
        - name
        - id
        - message
        - temporary
        - timeout
        - fault
    EvaluateDataResponse:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceDataPolicyEvaluation'
          description: Individual policy evaluation details
          example:
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
            - message: Sint asperiores qui id.
              policy_id: Facere maxime amet.
              policy_name: Dolores quo quasi.
              policy_set_id: Dolorem aut animi.
              policy_set_name: Ad quae dicta dolores.
              policy_status: Quaerat aut amet.
        policy_evaluation_message:
          type: string
          description: Pre-rendered message included when policy evaluation did not pass
          example: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status:
          type: string
          description: >-
            The overall status of policy evaluation (if it occurred) indicating
            whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
      example:
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          - message: Sint asperiores qui id.
            policy_id: Facere maxime amet.
            policy_name: Dolores quo quasi.
            policy_set_id: Dolorem aut animi.
            policy_set_name: Ad quae dicta dolores.
            policy_status: Quaerat aut amet.
          - message: Sint asperiores qui id.
            policy_id: Facere maxime amet.
            policy_name: Dolores quo quasi.
            policy_set_id: Dolorem aut animi.
            policy_set_name: Ad quae dicta dolores.
            policy_status: Quaerat aut amet.
          - message: Sint asperiores qui id.
            policy_id: Facere maxime amet.
            policy_name: Dolores quo quasi.
            policy_set_id: Dolorem aut animi.
            policy_set_name: Ad quae dicta dolores.
            policy_status: Quaerat aut amet.
        policy_evaluation_message: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status: error
      required:
        - id
    IaCMEvaluatedPolicy:
      type: object
      properties:
        deny_messages:
          type: array
          items:
            type: string
            example: Est enim aliquam pariatur eligendi.
          description: The values of any `deny` rego rules as returned by the rego engine
          example:
            - >-
              deployment stage 'example-stage' does not have a HarnessApproval
              step
            - >-
              deployment stage 'example-stage' has step 'run-script' that is
              forbidden type 'ShellScript'
        output:
          description: >-
            The output returned by the rego engine when this policy was
            evaluated
          example: |-
            {
                "deny": [
                    "deployment stage 'deploy' does not have a HarnessApproval step"
                ],
                "stages_with_approval": []
            }
        policy:
          $ref: '#/components/schemas/IaCMPolicy'
        rego_error:
          type: string
          description: >-
            Any errors returned by the rego engine when this policy was
            evaluated
          example: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
        status:
          type: string
          description: >-
            The overall status for this individual policy indicating whether it
            passed
          example: error
          enum:
            - error
            - warning
            - pass
      example:
        deny_messages:
          - >-
            deployment stage 'example-stage' does not have a HarnessApproval
            step
          - >-
            deployment stage 'example-stage' has step 'run-script' that is
            forbidden type 'ShellScript'
        output: |-
          {
              "deny": [
                  "deployment stage 'deploy' does not have a HarnessApproval step"
              ],
              "stages_with_approval": []
          }
        policy:
          account_id: eBqAoNchMLKigC_qZ5EdC
          created: 1636669297674
          identifier: policy-1
          name: Pipeline Approval
          org_id: test-org
          project_id: test-project
          rego: ''
          updated: 1636669297674
        rego_error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
        status: error
      required:
        - status
        - policy
        - output
        - deny_messages
        - rego_error
    IaCMEvaluation:
      type: object
      properties:
        account_id:
          type: string
          description: The Harness account in which the evaluation was performed
          example: XRQAjvT37acOiXx9PRaQMF
        action:
          type: string
          description: The action that triggered evaluation
          example: onrun
        created:
          type: integer
          description: >-
            The time at which the evaluation was performed in Unix time
            milliseconds
          example: 1636370209475
          format: int64
        details:
          type: array
          items:
            $ref: '#/components/schemas/IaCMEvaluationDetail'
          description: The detailed results of te evaluation
          example:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
        entity:
          type: string
          description: >-
            An arbitrary user-supplied string that globally identifies the
            entity under evaluation
          example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        entity_metadata:
          type: string
          description: >-
            Additional arbitrary user-supplied metadata about the entity under
            evaluation
          example: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        id:
          type: integer
          description: The ID of this evaluation
          example: 123
          format: int64
        input:
          description: The input provided at evaluation time
          example: ''
        org_id:
          type: string
          description: The Harness organisation in which the evaluation was performed
          example: test-org
        project_id:
          type: string
          description: The Harness project in which the evaluation was performed
          example: test-project
        status:
          type: string
          description: The overall status of the evaluation indicating whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
        type:
          type: string
          description: The types of the entity under evaluation
          example: pipeline,service
      description: The result of a single evaluation
      example:
        account_id: XRQAjvT37acOiXx9PRaQMF
        action: onrun
        created: 1636370209475
        details:
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            action: onrun
            created: 1636669297674
            description: Captures critical production policies
            details:
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
              - deny_messages:
                  - >-
                    deployment stage 'example-stage' does not have a
                    HarnessApproval step
                  - >-
                    deployment stage 'example-stage' has step 'run-script' that
                    is forbidden type 'ShellScript'
                output: |-
                  {
                      "deny": [
                          "deployment stage 'deploy' does not have a HarnessApproval step"
                      ],
                      "stages_with_approval": []
                  }
                policy:
                  account_id: eBqAoNchMLKigC_qZ5EdC
                  created: 1636669297674
                  identifier: policy-1
                  name: Pipeline Approval
                  org_id: test-org
                  project_id: test-project
                  rego: ''
                  updated: 1636669297674
                rego_error: >-
                  policy.rego:25: rego_parse_error: non-terminated string m ==
                  "test
                status: error
            enabled: true
            identifier: policyset-1
            name: Production Policies
            org_id: test-org
            project_id: test-project
            status: error
            type: pipeline
            updated: 1636669297674
        entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
        id: 123
        input: ''
        org_id: test-org
        project_id: test-project
        status: error
        type: pipeline,service
      required:
        - id
        - status
        - entity
        - entity_metadata
        - type
        - action
        - account_id
        - org_id
        - project_id
        - created
        - input
        - details
    IaCMEvaluationDetail:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy set
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        created:
          type: integer
          description: Time the policy set was created
          example: 1636669297674
          format: int64
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        details:
          type: array
          items:
            $ref: '#/components/schemas/IaCMEvaluatedPolicy'
          example:
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                project_id: test-project
                rego: ''
                updated: 1636669297674
              rego_error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              status: error
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                project_id: test-project
                rego: ''
                updated: 1636669297674
              rego_error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              status: error
            - deny_messages:
                - >-
                  deployment stage 'example-stage' does not have a
                  HarnessApproval step
                - >-
                  deployment stage 'example-stage' has step 'run-script' that is
                  forbidden type 'ShellScript'
              output: |-
                {
                    "deny": [
                        "deployment stage 'deploy' does not have a HarnessApproval step"
                    ],
                    "stages_with_approval": []
                }
              policy:
                account_id: eBqAoNchMLKigC_qZ5EdC
                created: 1636669297674
                identifier: policy-1
                name: Pipeline Approval
                org_id: test-org
                project_id: test-project
                rego: ''
                updated: 1636669297674
              rego_error: >-
                policy.rego:25: rego_parse_error: non-terminated string m ==
                "test
              status: error
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        identifier:
          type: string
          description: Identifier of the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy set
          default: ''
          example: test-org
        project_id:
          type: string
          description: Harness project ID associated with this policy set
          default: ''
          example: test-project
        status:
          type: string
          description: The overall status for this policy set indicating whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
          minLength: 1
        updated:
          type: integer
          description: Time the policy set was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        action: onrun
        created: 1636669297674
        description: Captures critical production policies
        details:
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              updated: 1636669297674
            rego_error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            status: error
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              updated: 1636669297674
            rego_error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            status: error
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              updated: 1636669297674
            rego_error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            status: error
          - deny_messages:
              - >-
                deployment stage 'example-stage' does not have a HarnessApproval
                step
              - >-
                deployment stage 'example-stage' has step 'run-script' that is
                forbidden type 'ShellScript'
            output: |-
              {
                  "deny": [
                      "deployment stage 'deploy' does not have a HarnessApproval step"
                  ],
                  "stages_with_approval": []
              }
            policy:
              account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              updated: 1636669297674
            rego_error: 'policy.rego:25: rego_parse_error: non-terminated string m == "test'
            status: error
        enabled: true
        identifier: policyset-1
        name: Production Policies
        org_id: test-org
        project_id: test-project
        status: error
        type: pipeline
        updated: 1636669297674
      required:
        - status
        - details
        - identifier
        - name
        - action
        - type
        - enabled
        - created
        - updated
        - account_id
        - org_id
        - project_id
        - entity_selector
    Execution:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: a
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: vzw
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Saepe quidem doloremque officia.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Quo aut totam quo vitae.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Pariatur inventore alias at et eligendi.
        project:
          type: string
          description: Project is the project identifier.
          example: '1'
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Occaecati molestiae autem qui.
      description: Execution defines an individual execution of a workspace workflow
      example:
        account: '3'
        org: 8z7
        pipeline: Eum saepe suscipit sint vero nisi sit.
        pipeline_execution_id: Cupiditate enim unde voluptates et illo in.
        pipeline_stage_id: Dignissimos quisquam excepturi corporis aut exercitationem.
        project: 4dc
        workspace: Rerum nisi perferendis voluptatem.
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
    ExecutionResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmExecution'
      example:
        - account: x
          created: 6110074494449943000
          org: 3pa
          pipeline: Incidunt voluptatem voluptatem est labore dolores.
          pipeline_execution_id: Ut ea dolore qui et sit facilis.
          pipeline_stage_id: Fugiat beatae.
          project: yed
          status: failure
          workspace: Cumque enim.
        - account: x
          created: 6110074494449943000
          org: 3pa
          pipeline: Incidunt voluptatem voluptatem est labore dolores.
          pipeline_execution_id: Ut ea dolore qui et sit facilis.
          pipeline_stage_id: Fugiat beatae.
          project: yed
          status: failure
          workspace: Cumque enim.
    GPGKey:
      type: object
      properties:
        ascii_armor:
          type: string
          description: ASCII-armored GPG public key
          example: >-
            Exercitationem consectetur qui asperiores consequuntur fugit
            molestiae.
        key_id:
          type: string
          description: GPG key ID
          example: Ab similique quas velit quasi quo delectus.
      description: GPG key information for provider verification
      example:
        ascii_armor: Reprehenderit at sed modi porro impedit et.
        key_id: Dolorum voluptatibus omnis in veniam quae.
      required:
        - key_id
        - ascii_armor
    GetProviderDownloadResponse:
      type: object
      properties:
        arch:
          type: string
          description: Architecture
          example: Possimus nobis in doloremque a dicta.
        download_url:
          type: string
          description: URL to download the provider binary
          example: Fugiat temporibus iste.
        filename:
          type: string
          description: Provider binary filename
          example: Inventore libero nesciunt beatae possimus.
        os:
          type: string
          description: Operating system
          example: Error aut ratione atque.
        protocols:
          type: array
          items:
            type: string
            example: Nobis sed molestiae veritatis.
          description: Supported Terraform protocol versions
          example:
            - Officia debitis aut molestiae excepturi.
            - Quia aut corrupti quisquam impedit dolorem.
        shasum:
          type: string
          description: SHA256 checksum of the provider binary
          example: Distinctio tenetur iure voluptatem.
        shasums_signature_url:
          type: string
          description: URL to download the checksums signature
          example: Eos excepturi ut.
        shasums_url:
          type: string
          description: URL to download the checksums file
          example: Similique sed hic placeat voluptatibus.
        signing_keys:
          $ref: '#/components/schemas/HarnessIacmProviderRegistrySigningKeys'
      description: Provider download information
      example:
        arch: Et aut quia velit.
        download_url: Eos est mollitia quia nesciunt aut et.
        filename: Voluptatem porro necessitatibus fugit voluptatem.
        os: Quia fugiat doloribus eos consectetur suscipit.
        protocols:
          - Dolor commodi enim.
          - Dicta amet beatae facilis.
          - Mollitia mollitia a consequatur.
          - Ipsam vero iure omnis temporibus.
        shasum: Perspiciatis et.
        shasums_signature_url: Hic provident.
        shasums_url: Sint suscipit qui.
        signing_keys:
          gpg_public_keys:
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
      required:
        - protocols
        - os
        - arch
        - filename
        - download_url
        - shasums_url
        - shasums_signature_url
        - shasum
        - signing_keys
    IaCMGetProviderResponse:
      type: object
      properties:
        account:
          type: string
          description: Account that owns the provider
          example: Et eveniet.
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 5795036615228299000
          format: int64
        description:
          type: string
          description: Description of the provider
          example: Omnis illum non sunt architecto iusto veniam.
        id:
          type: string
          description: Provider ID
          example: Labore quia voluptates maxime.
        type:
          type: string
          description: Provider type
          example: Modi eius eius.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 3722914984142410000
          format: int64
        versions:
          type: array
          items:
            $ref: >-
              #/components/schemas/HarnessIacmProviderRegistryProviderVersionMetadata
          description: Provider versions
          example:
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
      description: Provider
      example:
        account: Quis porro aliquam quaerat sit ut.
        created: 5061768122971100000
        description: Voluptatem veritatis.
        id: Dolores eum qui laudantium ut beatae dolore.
        type: Molestiae earum iste ut officia.
        updated: 4980712680689722000
        versions:
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
      required:
        - id
        - account
        - type
        - description
        - versions
        - created
        - updated
    GetProviderVersionResponseBody:
      type: object
      properties:
        gpg_key_id:
          type: string
          description: GPG key ID
          example: '1234567890'
        id:
          type: string
          description: Provider version ID
          example: '1'
        protocols:
          type: array
          items:
            type: string
            example: Quasi consequuntur.
          description: Supported Terraform protocol versions
          example:
            - '4.0'
      example:
        gpg_key_id: '1234567890'
        id: '1'
        protocols:
          - '4.0'
      required:
        - id
        - gpg_key_id
        - protocols
    GetVariablesAndProvidersResponse:
      type: object
      properties:
        environment_variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableWithPermissions'
          example:
            - associatedTemplate: Sequi molestiae.
              associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
              created: 7854777466879569000
              inUse: false
              includeInWorkspace: true
              isLocked: false
              key: Voluptatem quis quae ut atque et.
              kind: Non qui.
              permissions:
                canDelete: false
                canEditKey: true
                canEditValue: false
                canEditValueType: true
              source: workspace
              updated: 2304535647252161500
              uuid: Sint qui.
              value: Deserunt repellendus pariatur quo sit ipsam.
              value_type: Animi veniam.
            - associatedTemplate: Sequi molestiae.
              associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
              created: 7854777466879569000
              inUse: false
              includeInWorkspace: true
              isLocked: false
              key: Voluptatem quis quae ut atque et.
              kind: Non qui.
              permissions:
                canDelete: false
                canEditKey: true
                canEditValue: false
                canEditValueType: true
              source: workspace
              updated: 2304535647252161500
              uuid: Sint qui.
              value: Deserunt repellendus pariatur quo sit ipsam.
              value_type: Animi veniam.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/ProviderConnectorWithPermissions'
          example:
            - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
              associatedVariableSet: Qui modi tenetur quia perferendis.
              connector_ref: Et recusandae placeat excepturi aut sed.
              created: 8271516165869049000
              inUse: true
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: variableSet
              type: azure
              updated: 8272095620861659000
              uuid: Voluptatem velit maxime quis.
            - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
              associatedVariableSet: Qui modi tenetur quia perferendis.
              connector_ref: Et recusandae placeat excepturi aut sed.
              created: 8271516165869049000
              inUse: true
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: variableSet
              type: azure
              updated: 8272095620861659000
              uuid: Voluptatem velit maxime quis.
            - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
              associatedVariableSet: Qui modi tenetur quia perferendis.
              connector_ref: Et recusandae placeat excepturi aut sed.
              created: 8271516165869049000
              inUse: true
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: variableSet
              type: azure
              updated: 8272095620861659000
              uuid: Voluptatem velit maxime quis.
            - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
              associatedVariableSet: Qui modi tenetur quia perferendis.
              connector_ref: Et recusandae placeat excepturi aut sed.
              created: 8271516165869049000
              inUse: true
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: variableSet
              type: azure
              updated: 8272095620861659000
              uuid: Voluptatem velit maxime quis.
        terraform_variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableWithPermissions'
          example:
            - associatedTemplate: Sequi molestiae.
              associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
              created: 7854777466879569000
              inUse: false
              includeInWorkspace: true
              isLocked: false
              key: Voluptatem quis quae ut atque et.
              kind: Non qui.
              permissions:
                canDelete: false
                canEditKey: true
                canEditValue: false
                canEditValueType: true
              source: workspace
              updated: 2304535647252161500
              uuid: Sint qui.
              value: Deserunt repellendus pariatur quo sit ipsam.
              value_type: Animi veniam.
            - associatedTemplate: Sequi molestiae.
              associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
              created: 7854777466879569000
              inUse: false
              includeInWorkspace: true
              isLocked: false
              key: Voluptatem quis quae ut atque et.
              kind: Non qui.
              permissions:
                canDelete: false
                canEditKey: true
                canEditValue: false
                canEditValueType: true
              source: workspace
              updated: 2304535647252161500
              uuid: Sint qui.
              value: Deserunt repellendus pariatur quo sit ipsam.
              value_type: Animi veniam.
            - associatedTemplate: Sequi molestiae.
              associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
              created: 7854777466879569000
              inUse: false
              includeInWorkspace: true
              isLocked: false
              key: Voluptatem quis quae ut atque et.
              kind: Non qui.
              permissions:
                canDelete: false
                canEditKey: true
                canEditValue: false
                canEditValueType: true
              source: workspace
              updated: 2304535647252161500
              uuid: Sint qui.
              value: Deserunt repellendus pariatur quo sit ipsam.
              value_type: Animi veniam.
        variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableFileWithPermissions'
          example:
            - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
              associatedVariableSet: Ut iste aut.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Laboriosam iure excepturi quam.
              repository_branch: At quia harum exercitationem non.
              repository_commit: Amet id dicta omnis expedita quae.
              repository_connector: Sint hic sit libero ea maiores aut.
              repository_path: Autem numquam incidunt nesciunt quas.
              repository_sha: Ut et id optio voluptatem quasi.
              source: template
              uuid: Dignissimos dolorum velit et porro pariatur.
            - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
              associatedVariableSet: Ut iste aut.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Laboriosam iure excepturi quam.
              repository_branch: At quia harum exercitationem non.
              repository_commit: Amet id dicta omnis expedita quae.
              repository_connector: Sint hic sit libero ea maiores aut.
              repository_path: Autem numquam incidunt nesciunt quas.
              repository_sha: Ut et id optio voluptatem quasi.
              source: template
              uuid: Dignissimos dolorum velit et porro pariatur.
            - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
              associatedVariableSet: Ut iste aut.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Laboriosam iure excepturi quam.
              repository_branch: At quia harum exercitationem non.
              repository_commit: Amet id dicta omnis expedita quae.
              repository_connector: Sint hic sit libero ea maiores aut.
              repository_path: Autem numquam incidunt nesciunt quas.
              repository_sha: Ut et id optio voluptatem quasi.
              source: template
              uuid: Dignissimos dolorum velit et porro pariatur.
            - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
              associatedVariableSet: Ut iste aut.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Laboriosam iure excepturi quam.
              repository_branch: At quia harum exercitationem non.
              repository_commit: Amet id dicta omnis expedita quae.
              repository_connector: Sint hic sit libero ea maiores aut.
              repository_path: Autem numquam incidunt nesciunt quas.
              repository_sha: Ut et id optio voluptatem quasi.
              source: template
              uuid: Dignissimos dolorum velit et porro pariatur.
      example:
        environment_variables:
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
        provider_connectors:
          - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
            associatedVariableSet: Qui modi tenetur quia perferendis.
            connector_ref: Et recusandae placeat excepturi aut sed.
            created: 8271516165869049000
            inUse: true
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: variableSet
            type: azure
            updated: 8272095620861659000
            uuid: Voluptatem velit maxime quis.
          - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
            associatedVariableSet: Qui modi tenetur quia perferendis.
            connector_ref: Et recusandae placeat excepturi aut sed.
            created: 8271516165869049000
            inUse: true
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: variableSet
            type: azure
            updated: 8272095620861659000
            uuid: Voluptatem velit maxime quis.
          - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
            associatedVariableSet: Qui modi tenetur quia perferendis.
            connector_ref: Et recusandae placeat excepturi aut sed.
            created: 8271516165869049000
            inUse: true
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: variableSet
            type: azure
            updated: 8272095620861659000
            uuid: Voluptatem velit maxime quis.
          - associatedTemplate: Aut odit vel distinctio necessitatibus voluptatem deserunt.
            associatedVariableSet: Qui modi tenetur quia perferendis.
            connector_ref: Et recusandae placeat excepturi aut sed.
            created: 8271516165869049000
            inUse: true
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: variableSet
            type: azure
            updated: 8272095620861659000
            uuid: Voluptatem velit maxime quis.
        terraform_variables:
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
          - associatedTemplate: Sequi molestiae.
            associatedVariableSet: Voluptatibus natus maxime adipisci consequatur.
            created: 7854777466879569000
            inUse: false
            includeInWorkspace: true
            isLocked: false
            key: Voluptatem quis quae ut atque et.
            kind: Non qui.
            permissions:
              canDelete: false
              canEditKey: true
              canEditValue: false
              canEditValueType: true
            source: workspace
            updated: 2304535647252161500
            uuid: Sint qui.
            value: Deserunt repellendus pariatur quo sit ipsam.
            value_type: Animi veniam.
        variable_files:
          - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
            associatedVariableSet: Ut iste aut.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Laboriosam iure excepturi quam.
            repository_branch: At quia harum exercitationem non.
            repository_commit: Amet id dicta omnis expedita quae.
            repository_connector: Sint hic sit libero ea maiores aut.
            repository_path: Autem numquam incidunt nesciunt quas.
            repository_sha: Ut et id optio voluptatem quasi.
            source: template
            uuid: Dignissimos dolorum velit et porro pariatur.
          - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
            associatedVariableSet: Ut iste aut.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Laboriosam iure excepturi quam.
            repository_branch: At quia harum exercitationem non.
            repository_commit: Amet id dicta omnis expedita quae.
            repository_connector: Sint hic sit libero ea maiores aut.
            repository_path: Autem numquam incidunt nesciunt quas.
            repository_sha: Ut et id optio voluptatem quasi.
            source: template
            uuid: Dignissimos dolorum velit et porro pariatur.
          - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
            associatedVariableSet: Ut iste aut.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Laboriosam iure excepturi quam.
            repository_branch: At quia harum exercitationem non.
            repository_commit: Amet id dicta omnis expedita quae.
            repository_connector: Sint hic sit libero ea maiores aut.
            repository_path: Autem numquam incidunt nesciunt quas.
            repository_sha: Ut et id optio voluptatem quasi.
            source: template
            uuid: Dignissimos dolorum velit et porro pariatur.
          - associatedTemplate: Labore dolor quo voluptas laboriosam asperiores.
            associatedVariableSet: Ut iste aut.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Laboriosam iure excepturi quam.
            repository_branch: At quia harum exercitationem non.
            repository_commit: Amet id dicta omnis expedita quae.
            repository_connector: Sint hic sit libero ea maiores aut.
            repository_path: Autem numquam incidunt nesciunt quas.
            repository_sha: Ut et id optio voluptatem quasi.
            source: template
            uuid: Dignissimos dolorum velit et porro pariatur.
      required:
        - terraform_variables
        - environment_variables
        - provider_connectors
        - variable_files
    GetWorkspaceTemplateReconciliationDiffResponse:
      type: object
      properties:
        currentWorkspaceYaml:
          type: string
          description: Current workspace YAML
          example: Voluptatem sint est.
        reconcilableWorkspaceYaml:
          type: string
          description: Workspace YAML after applying changes from the template
          example: Delectus in velit ad et nulla minima.
        requiresReconciliation:
          type: boolean
          description: Indicates if the workspace needs template-based reconciliation
          example: true
      example:
        currentWorkspaceYaml: Et cumque temporibus recusandae sint nam enim.
        reconcilableWorkspaceYaml: Dolorem vitae est.
        requiresReconciliation: true
      required:
        - currentWorkspaceYaml
        - reconcilableWorkspaceYaml
        - requiresReconciliation
    GitAuditData:
      type: object
      properties:
        hash:
          type: string
          description: Hash of the git branch used
          example: k1
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: The name of the branch or tag used
          example: Ut ut sint id ullam vel.
        repo_url:
          type: string
          description: Url of the repo used
          example: mm
          minLength: 1
        type:
          type: string
          description: Type of fetch used to get the data
          example: branch, tag
          enum:
            - branch
            - tag
      example:
        hash: bn
        name: Quaerat a voluptas provident delectus consequatur accusamus.
        repo_url: 6r
        type: branch, tag
      required:
        - hash
        - repo_url
    HarnessIacmActivity:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: h4o
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2752964169761691000
          format: int64
        id:
          type: string
          description: The unique identifier for this activity
          example: Sequi dolore vel.
        metadata:
          $ref: '#/components/schemas/ActivityMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: c4
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: uk
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Autem explicabo.
      description: >-
        Activity defines an individual significant event in the history of
        aworkspace
      example:
        account: k
        created: 3999650101714703000
        id: Qui non voluptas sint.
        metadata:
          PlannedChangesCount: 6714032458437038000
          activity_status: success
          activity_type: plan
          cost_breakdown_uuid: Itaque quaerat voluptatum.
          cost_currency: Explicabo explicabo quaerat natus dolores.
          cost_diff_total_monthly: Cum ut.
          cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
          cost_past_total_monthly: Provident et error molestiae.
          cost_total_monthly: Aut aut eveniet est aliquam alias sint.
          cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
          drift_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          enable_solutions_factory: false
          git_branch: Provident dolor cum.
          git_commit_message: Voluptatem vel doloremque aut.
          git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
          git_repo: Provident nostrum soluta deserunt qui magnam.
          modules_uuid: Asperiores quo.
          output_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          pipeline: Consequatur sunt voluptatum.
          pipeline_execution_id: Suscipit excepturi.
          pipeline_execution_number: Dolor suscipit aliquam.
          pipeline_name: Enim nisi voluptatem quasi.
          pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
          plan_uuid: Provident sapiente voluptatibus doloremque.
          providers_uuid: Quaerat tempore quod ducimus.
          provisioner: Modi optio laborum expedita est.
          provisioner_version: Molestias esse eum.
          resource_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          state_checksum: Ea odit suscipit tenetur perferendis mollitia.
          state_uuid: Quo magni maxime aliquam excepturi quasi.
          trigger:
            A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
            Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
        org: jbz
        project: 0lo
        workspace: Ratione aut sed eius voluptatem aut.
      required:
        - account
        - org
        - project
        - id
        - workspace
        - metadata
        - created
    HarnessIacmAnsibleactivity:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '27'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        event_type:
          type: string
          description: The type of event that occurred
          example: activity-execution
          enum:
            - activity-execution
            - activity-dry-run-execution
        id:
          type: string
          description: The unique identifier for this activity
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        metadata:
          $ref: '#/components/schemas/AnsibleActivityMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: s
          minLength: 1
          maxLength: 128
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
        project:
          type: string
          description: Project is the project identifier.
          example: w
          minLength: 1
          maxLength: 128
      example:
        account: b
        created: 1627590400
        event_type: activity-execution
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          - webservers_europe
        metadata:
          activity_status: Perferendis dolore laboriosam.
          git_branch: Et non dolorem cumque asperiores quo ad.
          git_commit_message: Repudiandae quos dignissimos et placeat.
          git_commit_sha: Et dolorem.
          git_repo: Et incidunt quis non ut natus deleniti.
          pipeline: Laborum ea non ab.
          pipeline_execution_id: Rerum vitae quos id aut similique perspiciatis.
          pipeline_execution_number: Qui et vel consequatur sequi minima.
          pipeline_name: Molestiae blanditiis corrupti.
          pipeline_stage_id: Unde porro nihil magni.
          results_uuid: Quis laborum aut est rerum quia.
          trigger:
            Placeat porro quaerat hic beatae ullam.: Vel consectetur sunt facilis ipsam.
            Sed ea ad corporis in.: Nobis suscipit.
            Vel quae.: Eum eos amet eligendi accusamus.
        org: 8d
        playbooks:
          - init_webservers
        project: 6y
      required:
        - account
        - org
        - project
        - inventories
        - playbooks
        - id
        - metadata
        - created
        - event_type
    HarnessIacmAnsibledata:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: f
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 3835302293331368400
          format: int64
        data_type:
          type: string
          description: Type of data stored
          example: task_results
          enum:
            - task_results
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        org:
          type: string
          description: Org is the organisation identifier.
          example: t
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Nisi qui doloribus a.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Id modi labore beatae iusto vero.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Explicabo repudiandae consequatur animi et rerum quia.
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
        project:
          type: string
          description: Project is the project identifier.
          example: c8
          minLength: 1
          maxLength: 128
        stage_id:
          type: string
          description: The unique identifier for a stage
          example: Deserunt quis iure est.
      description: >-
        AnsibleDataResource is the representation for a single item of data
        associated with an ansible run.
      example:
        account: y8l
        created: 1838063849298443500
        data_type: task_results
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          - webservers_europe
        org: '8'
        pipeline_execution_id: Quidem quia.
        pipeline_id: Molestias adipisci aut veritatis.
        pipeline_stage_id: Ut qui ut eveniet molestiae.
        playbooks:
          - init_webservers
        project: a
        stage_id: Aut amet aliquid adipisci architecto quam esse.
      required:
        - account
        - org
        - project
        - created
        - id
        - data_type
        - inventories
        - playbooks
    HarnessIacmApproval:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: vg
          minLength: 1
          maxLength: 128
        actioned_by:
          type: string
          description: User that approved/rejected the step
          example: John Doe
        actioned_by_email:
          type: string
          description: Email of the user that approved/rejected the step
          example: john.doe@example.com
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 5204399660304524000
          format: int64
        id:
          type: string
          example: Quia possimus qui laudantium.
        org:
          type: string
          description: Org is the organisation identifier.
          example: nrl
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Non laboriosam doloribus.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Deleniti alias dolores totam est.
        project:
          type: string
          description: Project is the project identifier.
          example: g
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: Status of the approval resource
          default: pending
          example: Perferendis reiciendis et sint laborum aut.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 6394601811628121000
          format: int64
        workspace_id:
          type: string
          description: The unique identifier for the workspace_id
          example: Voluptatibus illum ipsam voluptatibus aut mollitia.
      description: Approval is the representation for a single approval
      example:
        account: p4g
        actioned_by: John Doe
        actioned_by_email: john.doe@example.com
        created: 2475289065981569000
        id: Adipisci eligendi.
        org: rl
        pipeline_execution_id: Voluptate et voluptatum corrupti dolore exercitationem rerum.
        pipeline_stage_id: Magni a iste voluptate.
        project: d9m
        status: Eos placeat id.
        updated: 3680744906251282400
        workspace_id: Consequatur eligendi doloremque veniam aut inventore et.
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
        - id
        - status
        - created
        - updated
    HarnessIacmChangedCosts:
      type: object
      properties:
        currency:
          type: string
          description: Currency of the costs
          example: Quia assumenda nesciunt.
        diff:
          type: object
          description: Map of the type of resources and their costs.
          example:
            Distinctio sit fugit ut.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
            Ipsam nam optio nulla eum.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
          additionalProperties:
            $ref: '#/components/schemas/HarnessIacmCostResourcesByType'
        diff_total_monthly_cost:
          type: string
          description: Difference of cost between workspaces per month
          example: Ut quod sunt qui.
        past_total_monthly_cost:
          type: string
          description: Total cost of the resources per month for the last workspace
          example: Voluptatem animi.
        percentage_change_total_monthly_cost:
          type: integer
          description: The change between the costs per month represented as a percentage
          example: 3111257401051037700
          format: int64
        stage_execution_id:
          type: string
          description: The stage execution ID
          example: Tempore voluptatem similique.
        stage_id:
          type: string
          description: The stage ID
          example: Sint vero ut hic hic distinctio.
        total_monthly_cost:
          type: string
          description: Total cost of the resources per month
          example: Repellat minus.
        workspace_id:
          type: string
          description: The workspace identifier
          example: Explicabo ut labore incidunt qui temporibus.
      description: Contains the difference in cost of the resources that are changing
      example:
        currency: Voluptas sunt id.
        diff:
          Qui non sed fugit error.:
            current_monthly_cost: Ratione iste sequi dolorem sed.
            diff:
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
            diff_monthly_cost: Est veniam molestias eos numquam quis.
            percentage_change_monthly_cost: 7543237256298908000
            previous_monthly_cost: Minus omnis consequatur et ad et amet.
          Voluptate asperiores odio corrupti et.:
            current_monthly_cost: Ratione iste sequi dolorem sed.
            diff:
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
            diff_monthly_cost: Est veniam molestias eos numquam quis.
            percentage_change_monthly_cost: 7543237256298908000
            previous_monthly_cost: Minus omnis consequatur et ad et amet.
        diff_total_monthly_cost: Repellendus asperiores libero.
        past_total_monthly_cost: Vel officia minus quae.
        percentage_change_total_monthly_cost: 8773870956611021000
        stage_execution_id: Aspernatur voluptatem ad omnis quibusdam nobis.
        stage_id: Quisquam illum perferendis aut magnam omnis consequuntur.
        total_monthly_cost: Ut placeat nemo assumenda rem voluptatem magni.
        workspace_id: Harum rem adipisci sapiente ut voluptatem ipsa.
      required:
        - currency
        - diff
        - total_monthly_cost
        - past_total_monthly_cost
        - diff_total_monthly_cost
        - percentage_change_total_monthly_cost
        - stage_id
        - stage_execution_id
        - workspace_id
    HarnessIacmChangedOutput:
      type: object
      properties:
        change:
          type: string
          description: Change made to this resource.
          example: added
          enum:
            - added
            - changed
            - deleted
            - unchanged
        name:
          type: string
          description: Name associated with the output.
          example: instance_public_ip
        new:
          type: string
          description: Updated value
          example: new value
        old:
          type: string
          description: Previous value.
          example: old value
        sensitive:
          type: boolean
          description: Indicates whether this value is sensitive
          example: true
      description: Represents an individual output variable.
      example:
        change: added
        name: instance_public_ip
        new: new value
        old: old value
        sensitive: true
      required:
        - change
        - name
        - value
        - sensitive
    HarnessIacmChangedResource:
      type: object
      properties:
        change:
          type: string
          description: Change made to this resource.
          example: added
          enum:
            - added
            - changed
            - deleted
            - unchanged
            - imported
            - removed
        change_count:
          type: integer
          description: Count of changes made to this resource.
          example: 10
          format: int64
        changes:
          type: object
          description: New values for this resource
          example:
            Eaque sed sunt et velit a.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
            Neque reprehenderit quia libero quos minus.:
              change: added
              drift: true
              new: new value
              old: old value
              sensitive: true
          additionalProperties:
            $ref: '#/components/schemas/ValueChange'
        drift:
          type: boolean
          description: Indicates whether this resource is experiencing drift
          example: false
        module:
          type: string
          description: Module associated with the resource.
          example: full_stack
        name:
          type: string
          description: Name associated with the resource.
          example: app_server
        provider:
          type: string
          description: Cloud provider associated with the resource.
          example: AWS
        type:
          type: string
          description: Type of the provisioned resource.
          example: S3 Bucket
      description: Represents a change to an individual provisioned resource.
      example:
        change: added
        change_count: 10
        changes:
          Enim quae quisquam.:
            change: added
            drift: true
            new: new value
            old: old value
            sensitive: true
        drift: true
        module: full_stack
        name: app_server
        provider: AWS
        type: S3 Bucket
      required:
        - provider
        - type
        - name
        - module
        - drift
        - change
        - change_count
        - changes
        - mode
        - path_id
        - attributes
        - drift_status
        - drift_attributes
        - sensitive_attributes
    HarnessIacmChangedResources:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        drift_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection2'
        pipeline_execution:
          type: string
          description: the identifier of the pipeline execution changes were made from.
          example: Tempora illum.
        pipeline_stage:
          type: string
          description: >-
            the identifier of the pipeline stage execution changes were made
            from.
          example: Ullam ipsa impedit qui.
        planned_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
        stage_id:
          type: string
          description: The stage ID
          example: Sunt omnis perspiciatis.
        workspace_id:
          type: string
          description: identifier of the workspace associated with the data
          example: Officia voluptatem molestiae quibusdam sint eos harum.
      description: Contains changed resources and outputs.
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        drift_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        outputs:
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
        pipeline_execution: Aspernatur id.
        pipeline_stage: Soluta ex deleniti.
        planned_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        stage_id: Cum quis culpa quos est.
        workspace_id: Dignissimos amet laborum.
      required:
        - pipeline_execution
        - drift_changes
        - planned_changes
        - resources
        - data_sources
        - outputs
        - workspace_id
        - stage_id
    HarnessIacmCostResource:
      type: object
      properties:
        current_monthly_cost:
          type: string
          example: Accusamus aut eligendi explicabo.
        diff_monthly_cost:
          type: string
          example: Debitis autem ad nostrum tempore beatae.
        name:
          type: string
          example: Maxime esse quas.
        percentage_change_monthly_cost:
          type: integer
          example: 6028448738194450000
          format: int64
        previous_monthly_cost:
          type: string
          example: Quam unde eveniet eligendi esse.
        subresources:
          type: object
          description: List of subresources for a resource
          example:
            Ullam sunt pariatur.:
              current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
              diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
              percentage_change_monthly_cost: 5266508547392496000
              previous_monthly_cost: Aut aut.
          additionalProperties:
            $ref: '#/components/schemas/HarnessIacmCostSubresource'
      description: Cost of the given resource
      example:
        current_monthly_cost: Facilis rerum et perspiciatis et.
        diff_monthly_cost: Veritatis excepturi.
        name: Porro dicta ad facilis sunt eum.
        percentage_change_monthly_cost: 1860680955756666600
        previous_monthly_cost: Debitis fugit suscipit dolor.
        subresources:
          Et provident.:
            current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
            percentage_change_monthly_cost: 5266508547392496000
            previous_monthly_cost: Aut aut.
          Odit numquam sequi nemo reprehenderit a sed.:
            current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
            percentage_change_monthly_cost: 5266508547392496000
            previous_monthly_cost: Aut aut.
          Tempora et molestias ut maiores quod.:
            current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
            diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
            percentage_change_monthly_cost: 5266508547392496000
            previous_monthly_cost: Aut aut.
      required:
        - name
        - current_monthly_cost
        - previous_monthly_cost
        - diff_monthly_cost
        - percentage_change_monthly_cost
    HarnessIacmCostResourcesByType:
      type: object
      properties:
        current_monthly_cost:
          type: string
          example: Vitae corporis eum aperiam sunt beatae.
        diff:
          $ref: '#/components/schemas/CostResourcesCollection'
        diff_monthly_cost:
          type: string
          example: Molestiae aut rerum dolores.
        percentage_change_monthly_cost:
          type: integer
          example: 7932531495229691000
          format: int64
        previous_monthly_cost:
          type: string
          example: Placeat architecto.
      example:
        current_monthly_cost: Quo excepturi iusto quod voluptates.
        diff:
          - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
            diff_monthly_cost: Tempora sed et animi consequuntur.
            name: Tenetur voluptas eum amet distinctio suscipit.
            percentage_change_monthly_cost: 3581947795968102000
            previous_monthly_cost: Dolorem ullam et autem.
            subresources:
              Neque odio qui.:
                current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                percentage_change_monthly_cost: 5266508547392496000
                previous_monthly_cost: Aut aut.
          - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
            diff_monthly_cost: Tempora sed et animi consequuntur.
            name: Tenetur voluptas eum amet distinctio suscipit.
            percentage_change_monthly_cost: 3581947795968102000
            previous_monthly_cost: Dolorem ullam et autem.
            subresources:
              Neque odio qui.:
                current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                percentage_change_monthly_cost: 5266508547392496000
                previous_monthly_cost: Aut aut.
          - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
            diff_monthly_cost: Tempora sed et animi consequuntur.
            name: Tenetur voluptas eum amet distinctio suscipit.
            percentage_change_monthly_cost: 3581947795968102000
            previous_monthly_cost: Dolorem ullam et autem.
            subresources:
              Neque odio qui.:
                current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                percentage_change_monthly_cost: 5266508547392496000
                previous_monthly_cost: Aut aut.
          - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
            diff_monthly_cost: Tempora sed et animi consequuntur.
            name: Tenetur voluptas eum amet distinctio suscipit.
            percentage_change_monthly_cost: 3581947795968102000
            previous_monthly_cost: Dolorem ullam et autem.
            subresources:
              Neque odio qui.:
                current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                percentage_change_monthly_cost: 5266508547392496000
                previous_monthly_cost: Aut aut.
        diff_monthly_cost: Autem dolor consequatur.
        percentage_change_monthly_cost: 4389931985341869000
        previous_monthly_cost: Accusantium accusamus asperiores nihil et necessitatibus.
      required:
        - diff
        - current_monthly_cost
        - previous_monthly_cost
        - diff_monthly_cost
        - percentage_change_monthly_cost
    HarnessIacmCostSubresource:
      type: object
      properties:
        current_monthly_cost:
          type: string
          example: Vitae consectetur aut mollitia quod.
        diff_monthly_cost:
          type: string
          example: Voluptatum molestiae.
        percentage_change_monthly_cost:
          type: integer
          example: 6665638733049406000
          format: int64
        previous_monthly_cost:
          type: string
          example: Accusantium delectus quos.
      description: Cost of the given subresource
      example:
        current_monthly_cost: Perspiciatis occaecati sint.
        diff_monthly_cost: Vel nisi ullam eius.
        percentage_change_monthly_cost: 5623210060167978000
        previous_monthly_cost: Omnis voluptatem dolor.
      required:
        - current_monthly_cost
        - previous_monthly_cost
        - diff_monthly_cost
        - percentage_change_monthly_cost
    HarnessIacmCostsresources:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 4d
          minLength: 1
          maxLength: 128
        cost:
          type: string
          description: The cost associated to the execution metadata
          example: '12.13'
        created:
          type: integer
          description: The epoch time for the cost
          example: 1672531200
          format: int64
        currency:
          type: string
          description: The currency for the cost
          example: USD
        org:
          type: string
          description: Org is the organisation identifier.
          example: c4
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Similique voluptatem repellendus voluptatem fugit.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Fugit aut cumque similique veritatis.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Fuga enim aperiam vel suscipit veniam aut.
        project:
          type: string
          description: Project is the project identifier.
          example: bo
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Accusantium vel voluptas magnam rerum.
      description: >-
        CostResource is the representation for a single workspace of the cost
        and metadata that ties the cost to an execution.
      example:
        account: g
        cost: '12.13'
        created: 1672531200
        currency: USD
        org: djq
        pipeline: Aperiam exercitationem dolorem accusantium laboriosam.
        pipeline_execution_id: Placeat quasi necessitatibus eos culpa.
        pipeline_stage_id: Enim optio commodi odio facilis.
        project: jh
        workspace: Dolores voluptas.
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
        - workspace_id
        - workspace_name
        - currency
        - cost
        - created
    HarnessIacmDefaultpipeline:
      type: object
      properties:
        account:
          type: string
          example: Dolor ea maiores aliquam perferendis molestias et.
        operation:
          type: string
          description: The default pipeline is associated with this operation
          example: plan
          enum:
            - plan
            - apply
            - destroy
            - drift
        org:
          type: string
          example: Accusantium occaecati.
        pipeline:
          type: string
          description: The default pipeline associated with the provisioner operation
          example: testpipeline
        project:
          type: string
          example: Aut odit quos eos vel.
        provisioner:
          type: string
          description: The default pipeline is associated with this provisioner
          example: opentofu
          enum:
            - terraform
            - opentofu
            - terragrunt
        updated:
          type: integer
          description: Time the default pipeline was last updated
          example: 1636669297674
          format: int64
        workspace:
          type: string
          description: The default pipeline is associated with this workspace if specified
          default: ''
          example: plan
      example:
        account: Et quis.
        operation: plan
        org: Voluptatem ullam quis labore.
        pipeline: testpipeline
        project: Suscipit qui.
        provisioner: opentofu
        updated: 1636669297674
        workspace: plan
      required:
        - account
        - org
        - project
        - provisioner
        - operation
        - pipeline
        - updated
    HarnessIacmDisablepush:
      type: object
      properties:
        disabled:
          type: boolean
          description: Indicates if the data is allowed to be pushed
          example: true
      example:
        disabled: true
      required:
        - disabled
    HarnessIacmExecution:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: z
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 7905223060374518000
          format: int64
        org:
          type: string
          description: Org is the organisation identifier.
          example: 5d
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Maxime facere sint enim quam ad repellendus.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Velit eligendi modi doloribus voluptas illo.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Ratione qui perferendis.
        project:
          type: string
          description: Project is the project identifier.
          example: k
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The overall status of the execution
          example: success
          enum:
            - none
            - success
            - failure
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Libero voluptatem iure possimus dolorem.
      description: ExecutionResource is the representation for a single workflow execution.
      example:
        account: '6'
        created: 3200872005107794000
        org: 3oj
        pipeline: Dolores vitae aut culpa cumque.
        pipeline_execution_id: Est et.
        pipeline_stage_id: Eum quibusdam.
        project: iaf
        status: success
        workspace: Minima iure ipsam velit qui architecto.
      required:
        - status
        - created
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
    HarnessIacmInventory:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '63'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: znv
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: e
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: manual
          enum:
            - manual
            - dynamic
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
      example:
        account: '0'
        created: 1627590400
        identifier: test_inventory
        name: test inventory
        org: evh
        project: z
        type: dynamic
        updated: 1627686800
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    HarnessIacmInventoryCreate:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: w2
          minLength: 1
          maxLength: 128
        dynamic_groups:
          type: array
          items:
            $ref: '#/components/schemas/CreateDynamicGroup'
          description: Groups is the list of dynamic groups to use.
          example:
            - configuration:
                host_address_attribute: <+attributes.public_dns>
                include_conditions:
                  - attribute: tag.environment
                    operator: equals
                    value: prod
                resource_type: aws_instance
              connector_identifier: my-workspace
              connector_type: workspace
        groups:
          type: array
          items:
            $ref: '#/components/schemas/CreateManualGroup'
          description: Groups is the list of manual groups to use.
          example:
            - hosts:
                - host1.example.com: null
              name: my-group
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: m
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: db
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: dynamic
          enum:
            - manual
            - dynamic
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the list of manual variables to use.
          example:
            - name: my-var
              value: my-value
      example:
        account: q8d
        dynamic_groups:
          - configuration:
              host_address_attribute: <+attributes.public_dns>
              include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              resource_type: aws_instance
            connector_identifier: my-workspace
            connector_type: workspace
        groups:
          - hosts:
              - host1.example.com: null
            name: my-group
        identifier: test_inventory
        name: test inventory
        org: rg2
        project: m1
        type: dynamic
        vars:
          - name: my-var
            value: my-value
      required:
        - account
        - org
        - project
        - type
        - name
        - identifier
        - data
    HarnessIacmInventoryDetail:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 81n
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        data:
          type: string
          description: The data representing the inventory
          example: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: 0df
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 0f
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: manual
          enum:
            - manual
            - dynamic
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
      example:
        account: 6cy
        created: 1627590400
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: egq
        project: c4
        type: dynamic
        updated: 1627686800
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    HarnessIacmInventoryGroup:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: y8w
          minLength: 1
          maxLength: 128
        configuration:
          $ref: '#/components/schemas/DynamicConfig'
        connector_type:
          type: string
          description: Connector Type is the type of connector to use.
          example: workspace
          enum:
            - workspace
            - aws
            - gcp
            - azure
        dynamic_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of dynamic variables that belong to the group
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of environment variables that belong to the group
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        hosts:
          type: array
          items:
            type: string
            example: Et minima sit a blanditiis.
          description: List of host addresses that belong to the group
          example:
            - Voluptas ut dolorem magnam voluptatem quisquam.
            - Ex corporis et dolores assumenda at.
        identifier:
          type: string
          description: The identifier of the group
          example: test_group
        inventory_identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        org:
          type: string
          description: Org is the organisation identifier.
          example: 2n
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: ivt
          minLength: 1
          maxLength: 128
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of variables that belong to the group
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
      example:
        account: ax
        configuration:
          host_address_attribute: <+attributes.public_dns>
          resource_type: aws_instance
          selectors:
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
        connector_type: workspace
        dynamic_vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
        env_vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
        hosts:
          - Non et ex voluptas voluptatem voluptatem vel.
          - Et ut minus enim repellendus.
          - Quidem animi.
        identifier: test_group
        inventory_identifier: test_inventory
        org: hz
        project: f
        vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
      required:
        - account
        - org
        - project
        - inventory_identifier
        - identifier
    HarnessIacmInventoryHost:
      type: object
      properties:
        created:
          type: string
          example: Ratione dolore ad.
        groups:
          type: array
          items:
            type: string
            example: Ex illo ut corrupti.
          description: Groups is the list of groups the host belongs to.
          example:
            - Et placeat dolorem.
            - Voluptas ut itaque.
            - Tempore non aut doloribus.
            - Sed aliquid assumenda quia.
        host_address:
          type: string
          description: Host address is the address of the host.
          example: host1.example.com
        updated:
          type: string
          example: Vel maiores exercitationem tenetur dolores quis.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
      example:
        created: Aut blanditiis exercitationem quod et voluptates.
        groups:
          - Necessitatibus quasi autem in doloremque.
          - Porro commodi est exercitationem aut.
          - Dicta itaque ut.
          - Deleniti natus nesciunt dolorem provident iusto est.
        host_address: host1.example.com
        updated: Enim et nam aut voluptatem tempora.
        vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
      required:
        - host_address
    HarnessIacmInventoryVar:
      type: object
      properties:
        created:
          type: string
          description: Created is the timestamp of the creation.
          example: Soluta debitis tempora sit aut itaque.
        file_name:
          type: string
          description: Filename is where to store the value of the secret.
          example: Culpa qui voluptatibus et.
        key:
          type: string
          description: Key is the identifier for the secret.
          example: c4x
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        updated:
          type: string
          description: Updated is the timestamp of the last update.
          example: Et ratione quo sunt est.
        uuid:
          type: string
          description: UUID is the unique identifier for the secret.
          example: 123e4567-e89b-12d3-a456-426655440000
        value:
          type: string
          description: Value is the value of the secret.
          example: Iure consequatur.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: Ut velit excepturi aut.
        var_type:
          type: string
          description: The type of variable
          example: Et numquam quam.
      example:
        created: Saepe vel suscipit.
        file_name: Qui in.
        key: o
        updated: Qui modi eos quidem quia ut distinctio.
        uuid: 123e4567-e89b-12d3-a456-426655440000
        value: Ea non expedita omnis rerum et omnis.
        value_type: Pariatur molestiae officiis autem ea.
        var_type: Et ullam.
      required:
        - key
        - value
        - value_type
    HarnessIacmInventoryVarCreate:
      type: object
      properties:
        file_name:
          type: string
          description: Filename is where to store the value of the secret.
          example: Reiciendis officiis ut consequuntur.
        key:
          type: string
          description: Key is the identifier for the secret.
          example: d
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        uuid:
          type: string
          description: UUID is the unique identifier for the secret.
          example: 123e4567-e89b-12d3-a456-426655440000
        value:
          type: string
          description: Value is the value of the secret.
          example: Magnam commodi accusamus incidunt blanditiis.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: Deleniti non provident dolores.
        var_type:
          type: string
          description: 'The type of variable. eg: var, env_var'
          example: Qui ut minus in totam aut.
      example:
        file_name: Vitae veritatis quidem et ipsum.
        key: z
        uuid: 123e4567-e89b-12d3-a456-426655440000
        value: Quasi rerum voluptatum in adipisci nisi.
        value_type: Quia omnis et magni harum minima soluta.
        var_type: Et occaecati perferendis iusto.
      required:
        - key
        - value
        - value_type
    HarnessIacmInventoryVars:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: sjh
          minLength: 1
          maxLength: 128
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        org:
          type: string
          description: Org is the organisation identifier.
          example: a
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '7'
          minLength: 1
          maxLength: 128
        vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
      example:
        account: mj
        env_vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
        identifier: test_inventory
        org: 5c
        project: k
        vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
      required:
        - account
        - org
        - project
        - identifier
        - vars
    HarnessIacmLockinfo:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: vp
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Time that the lock was taken.
          example: '2023-07-03T20:16:18.382839Z'
          format: int64
        id:
          type: string
          description: Unique ID for the lock. Generated by the terraform cli.
          example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
          minLength: 1
        info:
          type: string
          description: Extra information to store with the lock.
          default: ''
          example: production workspace lock
        operation:
          type: string
          description: Terraform operation.
          example: OperationTypePlan
        org:
          type: string
          description: Org is the organisation identifier.
          example: t8r
          minLength: 1
          maxLength: 128
        path:
          type: string
          description: Path to the state file when applicable.
          default: ''
          example: >-
            /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        project:
          type: string
          description: Project is the project identifier.
          example: e
          minLength: 1
          maxLength: 128
        version:
          type: string
          description: Terraform version.
          example: 1.0.0
        who:
          type: string
          description: The machine user who is performing the operation.
          default: ''
          example: user1
        workspace:
          type: string
          description: Workspace identifier
          example: workspace123
      description: Terraform lock information resource.
      example:
        account: r0
        created: '2023-07-03T20:16:18.382839Z'
        id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
        info: production workspace lock
        operation: OperationTypePlan
        org: 'n'
        path: >-
          /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        project: xws
        version: 1.0.0
        who: user1
        workspace: workspace123
      required:
        - account
        - org
        - project
        - workspace
        - id
        - operation
        - version
        - created
    HarnessIacmMigrationTrigger:
      type: object
      properties:
        message:
          type: string
          description: Confirmation message
          example: Migration job started successfully
      description: Acknowledgement that the migration job was triggered
      example:
        message: Migration job started successfully
      required:
        - message
    HarnessIacmModuleRegistryCreateModule:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: dst
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 6521989032450672000
          format: int64
        description:
          type: string
          description: description of the module
          example: Molestias occaecati delectus.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Est at rerum veritatis voluptas cupiditate neque.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name:
          type: string
          description: module name
          example: 8a
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Inventore officiis totam quidem omnis.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Nam velit et modi.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: dav
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Sunt omnis non consequatur.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 615260066424756200
          format: int64
      example:
        account: b3w
        created: 238182509029842370
        description: Voluptas animi odio explicabo et soluta error.
        git_tag_style: Laudantium sequi commodi perferendis magni laudantium cum.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name: 7sb
        repository: Aspernatur velit est iste.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Ut omnis qui quam debitis.
        repository_path: ''
        system: 39u
        tags: Dolorem quos esse rerum.
        updated: 8894218481371691000
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
    HarnessIacmModuleRegistryDownload:
      type: object
      properties:
        location:
          type: string
          description: location of the artifact
          example: Aut quam ut ducimus nam.
        url:
          type: string
          description: url of the module for a given version
          example: Ea voluptates qui laborum eaque eos voluptas.
      description: DownloadModule returns the url of the module for a given version
      example:
        location: Et qui sequi quibusdam dolor quos.
        url: Et natus consequuntur.
      required:
        - url
    HarnessIacmModuleRegistryListVersions:
      type: object
      properties:
        modules:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmModuleRegistryVersions'
          description: list of versions for a given module
          example:
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
      description: ListVersions returns the list of versions for a given module
      example:
        modules:
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
      required:
        - modules
    HarnessIacmModuleRegistryModule:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: '9'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 4114799823187389000
          format: int64
        description:
          type: string
          description: description of the module
          example: Consequatur sit incidunt unde aut.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Et eos quod ut reiciendis ad occaecati.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name:
          type: string
          description: module name
          example: cg
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Blanditiis tempore eos dolorem dolores facere.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Labore maxime.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: k
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Tempora in iste sit ad.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 2311079263663253000
          format: int64
      description: >-
        Type that describes the attributes stored in the iac-server related with
        a specific module
      example:
        account: 3l
        created: 5565158343241051000
        description: Accusamus aut eligendi.
        git_tag_style: Et ab minus et eos quis.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name: x45
        repository: Iste molestiae consequatur.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Illum vel.
        repository_path: ''
        system: kw2
        tags: Vitae eaque ut tenetur.
        updated: 8707871222333062000
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
    HarnessIacmModuleRegistryModuleList:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: muo
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 4461262831039441000
          format: int64
        description:
          type: string
          description: description of the module
          example: Aliquam sed praesentium qui aut id et.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Nihil nostrum.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error:
          type: string
          description: error while retrieving the module
          example: Doloremque suscipit qui dolorem.
        name:
          type: string
          description: module name
          example: nzf
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: org that owns the module
          example: mpc
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: mej
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Quia quia sed.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Error voluptatem dolorem sit vitae aspernatur facere.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_url:
          type: string
          description: Repository url.
          example: Consequatur voluptate odio nihil omnis.
        synced:
          type: integer
          description: >-
            Synced is the unix timestamp at which the resource was synced for
            the last time in milliseconds.
          example: 3505779982190786000
          format: int64
        system:
          type: string
          description: system name
          example: f
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Provident facere qui reiciendis voluptatum voluptas.
        testing_enabled:
          type: boolean
          description: testing enabled
          example: true
        testing_metadata:
          $ref: '#/components/schemas/HarnessIacmModuleRegistryModuleTestingMetadata'
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 8333975811650161000
          format: int64
        versions:
          type: array
          items:
            type: string
            example: Possimus ut perferendis.
          description: versions
          example:
            - Esse fugiat rerum.
            - Porro esse vel autem.
            - Non repudiandae temporibus non dolores voluptatem.
            - Aut molestiae voluptas totam sunt debitis incidunt.
      example:
        account: df
        created: 3767592177392475600
        description: Minima corrupti reiciendis.
        git_tag_style: Qui enim labore alias beatae.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error: Deleniti dolorem et fugit.
        name: 'n'
        org: r
        project: c4e
        repository: Soluta deleniti ducimus nobis dolorem.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Quisquam in quam.
        repository_path: ''
        repository_url: Libero officia nemo natus voluptatum.
        synced: 8066075426185261000
        system: zx
        tags: Maiores pariatur possimus exercitationem dolores dolores.
        testing_enabled: false
        testing_metadata:
          account: '67'
          org: o4
          pipelines:
            - Veniam quo quia veniam est velit vel.
            - Fugit corrupti consequatur dignissimos voluptas.
          project: xua
          provider_connector: Qui accusantium ipsum commodi.
          provisioner_type: Consequatur voluptatem.
          provisioner_version: Molestiae corrupti ipsam fugit mollitia magnam.
          release_pipeline: Atque beatae ullam explicabo omnis ut.
        updated: 7477958248117276000
        versions:
          - Eos aliquam.
          - Nemo animi quis exercitationem assumenda cum.
          - Assumenda non.
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
        - synced
    HarnessIacmModuleRegistryModuleMetadata:
      type: object
      properties:
        account:
          type: string
          description: account name
          example: Saepe est amet pariatur.
        dependencies:
          type: array
          items:
            $ref: '#/components/schemas/DependenciesMetadata'
          description: Dependencies of the module
          example:
            - dependency_name: Eum sunt eum fugiat.
              dependency_source: Alias aut eaque voluptate.
              dependency_version: Perspiciatis neque.
            - dependency_name: Eum sunt eum fugiat.
              dependency_source: Alias aut eaque voluptate.
              dependency_version: Perspiciatis neque.
        metadata_error:
          type: string
          description: error while retrieving the module
          example: Doloribus dolores dicta earum libero.
        module_version:
          type: string
          description: module version
          example: Eius quo aliquam reprehenderit dignissimos.
        name:
          type: string
          description: module name
          example: Ducimus ipsum officia minus.
        outputs:
          type: array
          items:
            $ref: '#/components/schemas/OutputMetadata'
          description: Outputs of the module
          example:
            - output_description: Numquam pariatur.
              output_name: Et vero hic corporis delectus non consectetur.
              output_sensitive: true
            - output_description: Numquam pariatur.
              output_name: Et vero hic corporis delectus non consectetur.
              output_sensitive: true
            - output_description: Numquam pariatur.
              output_name: Et vero hic corporis delectus non consectetur.
              output_sensitive: true
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderMetadata'
          description: Providers of the module
          example:
            - provider_name: Repellendus et exercitationem nihil ut numquam.
              provider_source: Non suscipit commodi ipsa nihil.
              provider_version: Rem animi sint suscipit et.
            - provider_name: Repellendus et exercitationem nihil ut numquam.
              provider_source: Non suscipit commodi ipsa nihil.
              provider_version: Rem animi sint suscipit et.
            - provider_name: Repellendus et exercitationem nihil ut numquam.
              provider_source: Non suscipit commodi ipsa nihil.
              provider_version: Rem animi sint suscipit et.
            - provider_name: Repellendus et exercitationem nihil ut numquam.
              provider_source: Non suscipit commodi ipsa nihil.
              provider_version: Rem animi sint suscipit et.
        resources:
          type: array
          items:
            $ref: '#/components/schemas/ResourceMetadata'
          description: Resources of the module
          example:
            - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
              resource_type: Sit sit aut eum.
            - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
              resource_type: Sit sit aut eum.
            - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
              resource_type: Sit sit aut eum.
        submodule:
          type: array
          items:
            type: string
            example: Rem voluptatem sint quia saepe aut.
          description: Submodules of the module
          example:
            - Ad harum commodi eius eius sint culpa.
            - Dolor est accusamus distinctio aut eligendi.
        system:
          type: string
          description: system name
          example: Ullam nam.
        variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableMetadata'
          description: Variables of the module
          example:
            - variable_default: Rerum reiciendis quasi voluptate.
              variable_description: Commodi fuga aut itaque corrupti dignissimos.
              variable_name: Atque quaerat quasi eveniet nostrum.
              variable_required: false
              variable_sensitive: true
              variable_type: Eum modi atque cum.
            - variable_default: Rerum reiciendis quasi voluptate.
              variable_description: Commodi fuga aut itaque corrupti dignissimos.
              variable_name: Atque quaerat quasi eveniet nostrum.
              variable_required: false
              variable_sensitive: true
              variable_type: Eum modi atque cum.
            - variable_default: Rerum reiciendis quasi voluptate.
              variable_description: Commodi fuga aut itaque corrupti dignissimos.
              variable_name: Atque quaerat quasi eveniet nostrum.
              variable_required: false
              variable_sensitive: true
              variable_type: Eum modi atque cum.
      description: >-
        Type that describes the metadata stored in the iac-server related with a
        specific module and version
      example:
        account: Beatae beatae sunt quod.
        dependencies:
          - dependency_name: Eum sunt eum fugiat.
            dependency_source: Alias aut eaque voluptate.
            dependency_version: Perspiciatis neque.
          - dependency_name: Eum sunt eum fugiat.
            dependency_source: Alias aut eaque voluptate.
            dependency_version: Perspiciatis neque.
          - dependency_name: Eum sunt eum fugiat.
            dependency_source: Alias aut eaque voluptate.
            dependency_version: Perspiciatis neque.
          - dependency_name: Eum sunt eum fugiat.
            dependency_source: Alias aut eaque voluptate.
            dependency_version: Perspiciatis neque.
        metadata_error: Sit nihil exercitationem tempore velit.
        module_version: Aliquid maxime est minus ut voluptatum et.
        name: Deserunt neque non totam ut ut possimus.
        outputs:
          - output_description: Numquam pariatur.
            output_name: Et vero hic corporis delectus non consectetur.
            output_sensitive: true
          - output_description: Numquam pariatur.
            output_name: Et vero hic corporis delectus non consectetur.
            output_sensitive: true
        providers:
          - provider_name: Repellendus et exercitationem nihil ut numquam.
            provider_source: Non suscipit commodi ipsa nihil.
            provider_version: Rem animi sint suscipit et.
          - provider_name: Repellendus et exercitationem nihil ut numquam.
            provider_source: Non suscipit commodi ipsa nihil.
            provider_version: Rem animi sint suscipit et.
          - provider_name: Repellendus et exercitationem nihil ut numquam.
            provider_source: Non suscipit commodi ipsa nihil.
            provider_version: Rem animi sint suscipit et.
        resources:
          - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
            resource_type: Sit sit aut eum.
          - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
            resource_type: Sit sit aut eum.
          - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
            resource_type: Sit sit aut eum.
          - resource_name: Quia cum accusantium repellendus pariatur dolorum nisi.
            resource_type: Sit sit aut eum.
        submodule:
          - Porro ad tenetur autem.
          - Voluptatum mollitia repellendus velit qui veniam.
          - Quo enim velit.
        system: Explicabo eveniet aut.
        variables:
          - variable_default: Rerum reiciendis quasi voluptate.
            variable_description: Commodi fuga aut itaque corrupti dignissimos.
            variable_name: Atque quaerat quasi eveniet nostrum.
            variable_required: false
            variable_sensitive: true
            variable_type: Eum modi atque cum.
          - variable_default: Rerum reiciendis quasi voluptate.
            variable_description: Commodi fuga aut itaque corrupti dignissimos.
            variable_name: Atque quaerat quasi eveniet nostrum.
            variable_required: false
            variable_sensitive: true
            variable_type: Eum modi atque cum.
          - variable_default: Rerum reiciendis quasi voluptate.
            variable_description: Commodi fuga aut itaque corrupti dignissimos.
            variable_name: Atque quaerat quasi eveniet nostrum.
            variable_required: false
            variable_sensitive: true
            variable_type: Eum modi atque cum.
          - variable_default: Rerum reiciendis quasi voluptate.
            variable_description: Commodi fuga aut itaque corrupti dignissimos.
            variable_name: Atque quaerat quasi eveniet nostrum.
            variable_required: false
            variable_sensitive: true
            variable_type: Eum modi atque cum.
      required:
        - account
        - name
        - system
        - module_version
        - outputs
        - providers
        - resources
        - variables
    HarnessIacmModuleRegistryModuleTestingMetadata:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '23'
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: r6
          minLength: 1
          maxLength: 128
        pipelines:
          type: array
          items:
            type: string
            example: Voluptate repellendus consequatur dolorem.
          description: pipelines where the testing is enabled
          example:
            - Quisquam velit officiis soluta beatae cum beatae.
            - Sit delectus commodi non eum qui consequuntur.
            - Est et et quisquam et.
        project:
          type: string
          description: Project is the project identifier.
          example: sg
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: provider connector for testing purposes
          example: Facilis asperiores blanditiis non.
        provisioner_type:
          type: string
          description: provisioner type for testing purposes
          example: Tempore et qui quo cumque asperiores.
        provisioner_version:
          type: string
          description: provisioner version for testing purposes
          example: Non provident.
        release_pipeline:
          type: string
          description: release pipeline
          example: Temporibus est omnis nulla officia mollitia.
      example:
        account: qsh
        org: il9
        pipelines:
          - Esse ipsam error cupiditate numquam libero tenetur.
          - Enim quod molestias.
          - Sed et ratione accusamus cum repellendus.
          - Est vero quidem est voluptatibus.
        project: '6'
        provider_connector: Porro iusto pariatur accusantium.
        provisioner_type: Eaque rerum et.
        provisioner_version: Odit est occaecati quas rerum.
        release_pipeline: Beatae nostrum est illo minima voluptatem.
      required:
        - account
        - org
        - project
        - provisioner_type
        - provisioner_version
        - provider_connector
        - pipelines
    HarnessIacmModuleRegistryServiceDiscovery:
      type: object
      properties:
        modules.v1:
          type: string
          description: url for the module registry
          example: Voluptates facere voluptatem maiores consectetur ullam.
        providers.v1:
          type: string
          description: url for the provider registry
          example: Beatae repellendus.
      description: DiscoveryResponse returns the actions that the service provides
      example:
        modules.v1: Voluptatem ullam.
        providers.v1: Qui voluptatem suscipit voluptas quia.
      required:
        - modules.v1
        - providers.v1
    HarnessIacmModuleRegistryVersionTypes:
      type: object
      properties:
        git_version:
          type: string
          description: git version
          example: Error magnam dolor.
        module_version:
          type: string
          description: module version
          example: Facilis rerum nisi ea ducimus eum.
      description: Returns the module_version and git_version for a specific module
      example:
        git_version: Cum et odit id et fugit.
        module_version: Aspernatur dolorum dolorem corporis.
      required:
        - module_version
        - git_version
    HarnessIacmModuleRegistryVersions:
      type: object
      properties:
        versions:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmModuleRegistryVersionTypes'
          description: list of versions for a given module
          example:
            - git_version: Earum qui.
              module_version: Pariatur explicabo velit in dolor optio iusto.
            - git_version: Earum qui.
              module_version: Pariatur explicabo velit in dolor optio iusto.
            - git_version: Earum qui.
              module_version: Pariatur explicabo velit in dolor optio iusto.
      description: Versions returns the list of versions for a given module
      example:
        versions:
          - git_version: Earum qui.
            module_version: Pariatur explicabo velit in dolor optio iusto.
          - git_version: Earum qui.
            module_version: Pariatur explicabo velit in dolor optio iusto.
          - git_version: Earum qui.
            module_version: Pariatur explicabo velit in dolor optio iusto.
          - git_version: Earum qui.
            module_version: Pariatur explicabo velit in dolor optio iusto.
      required:
        - versions
    HarnessIacmModuleexecutionresource:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 8u
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 3772650067599344000
          format: int64
        metadata:
          $ref: '#/components/schemas/ModuleExecutionMetadata'
        moduleId:
          type: string
          description: The unique identifier for the associated module
          example: Consequatur rerum nihil.
        org:
          type: string
          description: Org is the organisation identifier.
          example: aj
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: r5a
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The overall status of the execution
          example: Dolorem fuga.
      description: >-
        ModuleExecutionResource is the representation for a single module
        execution.
      example:
        account: q
        created: 5193060788567723000
        metadata:
          pipeline: Illo dolor architecto repellendus excepturi accusamus saepe.
          pipeline_execution_id: Aut voluptas aut voluptatem eaque.
          pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
          pipeline_name: Occaecati unde sapiente est.
          pipeline_stage_id: Voluptatem aspernatur necessitatibus commodi rem laboriosam sit.
          trigger:
            Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
            Velit et odio nam.: Ipsam sed et.
        moduleId: Doloremque qui maxime est.
        org: e6
        project: vx
        status: Consequatur unde architecto enim velit aspernatur.
      required:
        - status
        - created
        - account
        - org
        - project
        - pipelineExecutionId
        - pipelineStageId
        - moduleId
        - pipeline
    HarnessIacmMonthlycost:
      type: object
      properties:
        cost:
          type: string
          description: The cost associated to the execution metadata
          example: '12.13'
        created:
          type: integer
          description: The epoch time for the cost
          example: 1672531200
          format: int64
        currency:
          type: string
          description: The currency for the cost
          example: USD
        workspace_id:
          type: string
          example: Et suscipit repudiandae.
        workspace_name:
          type: string
          example: Sint voluptatem qui eos et.
      description: MonthlyCost is the cost of a workspace per month
      example:
        cost: '12.13'
        created: 1672531200
        currency: USD
        workspace_id: Occaecati porro deleniti nobis quo officia.
        workspace_name: Non ut ea est autem.
      required:
        - workspace_id
        - workspace_name
        - currency
        - cost
        - created
    HarnessIacmOutput:
      type: object
      properties:
        name:
          type: string
          description: Name associated with the output.
          example: instance_public_ip
        sensitive:
          type: boolean
          description: Indicates whether this value is sensitive
          example: true
        value:
          type: string
          description: Value associated with the output.
          example: Sunt saepe labore.
      description: Represents an individual output variable.
      example:
        name: instance_public_ip
        sensitive: true
        value: Nam enim ea doloribus.
      required:
        - name
        - value
        - sensitive
    HarnessIacmPlaybook:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 9y
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        env_vars:
          type: string
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Repellendus non blanditiis dolorem.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: cx
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '23'
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
        vars:
          type: string
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
      example:
        account: oy9
        created: 1627590400
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Cupiditate architecto fugit voluptates.
        name: test playbook
        org: h58
        project: 2h2
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        updated: 1627686800
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - repository_path
    HarnessIacmPluginversion:
      type: object
      properties:
        commit:
          type: string
          description: Build identifier
          example: 96381692bf3a2bd7904769c6886e832435768b57
        version:
          type: string
          description: Version number
          example: 0.2.0
      description: Plugin version
      example:
        commit: 96381692bf3a2bd7904769c6886e832435768b57
        version: 0.2.0
    HarnessIacmProviderRegistryGpgPublicKey:
      type: object
      properties:
        ascii_armor:
          type: string
          description: ASCII-armored GPG public key
          example: Itaque facilis ut sed dolores qui illum.
        key_id:
          type: string
          description: GPG key ID
          example: Facilis vero eum culpa et nihil.
      description: GPGPublicKey contains a GPG public key for provider verification
      example:
        ascii_armor: Quae quia.
        key_id: Minima earum quibusdam voluptatem quam rerum.
      required:
        - key_id
        - ascii_armor
    HarnessIacmProviderRegistryPlatform:
      type: object
      properties:
        arch:
          type: string
          description: Architecture
          example: Reprehenderit atque earum ducimus distinctio voluptates.
        os:
          type: string
          description: Operating system
          example: Perferendis ut dolorem magnam.
      description: Platform defines an operating system and architecture combination
      example:
        arch: Nesciunt voluptas qui et.
        os: Corrupti voluptatem commodi nemo ut.
      required:
        - os
        - arch
    HarnessIacmProviderRegistryProvider:
      type: object
      properties:
        account:
          type: string
          description: Account that owns the provider
          example: Temporibus dolores mollitia molestiae saepe eum.
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2944774417192445400
          format: int64
        description:
          type: string
          description: Description of the provider
          example: Rerum incidunt cumque sit.
        id:
          type: string
          description: Provider ID
          example: Harum sint sit aut aspernatur et.
        type:
          type: string
          description: Provider type
          example: Quia quo.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 3690366541021274600
          format: int64
        versions:
          type: array
          items:
            $ref: >-
              #/components/schemas/HarnessIacmProviderRegistryProviderVersionMetadata
          description: Provider versions
          example:
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
            - files:
                - Labore quo reprehenderit.
                - Alias voluptate animi accusamus quia et.
              synced: true
              version: Ad dolores exercitationem aut.
      description: Provider contains information about a Terraform provider
      example:
        account: Voluptas nihil.
        created: 1294382669256006400
        description: Laborum veniam aliquam et quasi.
        id: Repellat ea itaque nostrum.
        type: Quisquam nisi.
        updated: 4521076232910039000
        versions:
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
          - files:
              - Labore quo reprehenderit.
              - Alias voluptate animi accusamus quia et.
            synced: true
            version: Ad dolores exercitationem aut.
      required:
        - id
        - account
        - type
        - description
        - versions
        - created
        - updated
    HarnessIacmProviderRegistryProviderDownload:
      type: object
      properties:
        arch:
          type: string
          description: Architecture
          example: Qui repellendus placeat iure fuga.
        download_url:
          type: string
          description: URL to download the provider binary
          example: Alias eum ducimus.
        filename:
          type: string
          description: Provider binary filename
          example: Voluptates placeat incidunt excepturi.
        os:
          type: string
          description: Operating system
          example: Quo molestiae non tempora.
        protocols:
          type: array
          items:
            type: string
            example: Dolor dolores aut inventore officia unde.
          description: Supported Terraform protocol versions
          example:
            - Fugiat autem.
            - Commodi necessitatibus et.
            - Quaerat quo corporis quasi optio doloremque.
            - Dolorum vitae ex cum ab et voluptas.
        shasum:
          type: string
          description: SHA256 checksum of the provider binary
          example: Voluptatem explicabo dicta commodi ipsum ipsum.
        shasums_signature_url:
          type: string
          description: URL to download the checksums signature
          example: Qui occaecati.
        shasums_url:
          type: string
          description: URL to download the checksums file
          example: Consequatur in voluptates debitis.
        signing_keys:
          $ref: '#/components/schemas/HarnessIacmProviderRegistrySigningKeys'
      description: ProviderDownloadResponse contains information for downloading a provider
      example:
        arch: Numquam et nihil modi esse.
        download_url: Voluptate fugit et cupiditate nisi et enim.
        filename: Id in eos totam maxime voluptatem accusamus.
        os: Nam sit unde asperiores quos.
        protocols:
          - Ut nihil.
          - Error quae qui repellendus vero.
        shasum: Qui esse repudiandae tempore aut repudiandae odio.
        shasums_signature_url: Iusto vel optio voluptas laboriosam quas voluptatibus.
        shasums_url: Nulla omnis ut doloremque tempora qui asperiores.
        signing_keys:
          gpg_public_keys:
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
      required:
        - protocols
        - os
        - arch
        - filename
        - download_url
        - shasums_url
        - shasums_signature_url
        - shasum
        - signing_keys
    HarnessIacmProviderRegistryProviderVersion:
      type: object
      properties:
        platforms:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmProviderRegistryPlatform'
          description: Supported platforms
          example:
            - arch: Sed reprehenderit.
              os: Minus qui voluptatibus voluptate ea eos.
            - arch: Sed reprehenderit.
              os: Minus qui voluptatibus voluptate ea eos.
            - arch: Sed reprehenderit.
              os: Minus qui voluptatibus voluptate ea eos.
            - arch: Sed reprehenderit.
              os: Minus qui voluptatibus voluptate ea eos.
        protocols:
          type: array
          items:
            type: string
            example: Esse vitae sint id consequuntur deleniti.
          description: Supported Terraform protocol versions
          example:
            - Voluptatibus quas quam.
            - Commodi minus nemo sint dolores non.
            - Adipisci eaque doloribus quia vero enim.
            - Possimus fuga omnis est aut quo.
        version:
          type: string
          description: Provider version
          example: Et quia tenetur.
      description: ProviderVersion contains information about a specific provider version
      example:
        platforms:
          - arch: Sed reprehenderit.
            os: Minus qui voluptatibus voluptate ea eos.
          - arch: Sed reprehenderit.
            os: Minus qui voluptatibus voluptate ea eos.
          - arch: Sed reprehenderit.
            os: Minus qui voluptatibus voluptate ea eos.
          - arch: Sed reprehenderit.
            os: Minus qui voluptatibus voluptate ea eos.
        protocols:
          - Consequatur sapiente possimus unde eum.
          - Quae odit fugit consectetur.
        version: Iste esse optio ipsum qui vel nam.
      required:
        - version
        - protocols
        - platforms
    HarnessIacmProviderRegistryProviderVersionMetadata:
      type: object
      properties:
        files:
          type: array
          items:
            type: string
            example: Fugit non et soluta.
          description: Uploaded provider files
          example:
            - Aliquid et praesentium vero quos dignissimos rerum.
            - Et nihil voluptas amet provident ipsum.
            - Ut qui ut beatae sed debitis culpa.
        synced:
          type: boolean
          description: Provider version synced
          example: true
        version:
          type: string
          description: Provider version
          example: Nulla inventore dolores ut qui dolor veritatis.
      description: >-
        ProviderVersionMetadata contains metadata about a specific provider
        version
      example:
        files:
          - Veritatis et unde optio eius alias.
          - Alias consequatur tenetur tenetur fugiat quibusdam.
          - Tempore autem enim natus.
          - Modi doloremque ex et et atque.
        synced: false
        version: Ratione qui quis.
      required:
        - version
        - synced
        - files
    HarnessIacmProviderRegistryProviderVersions:
      type: object
      properties:
        versions:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmProviderRegistryProviderVersion'
          description: List of available provider versions
          example:
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
      description: >-
        ProviderVersionsResponse returns the list of available versions for a
        provider
      example:
        versions:
          - platforms:
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
            protocols:
              - Neque quasi.
              - Fugiat illo esse suscipit eius dolores voluptas.
              - Quam qui blanditiis ipsam modi.
              - Nihil quis voluptatem tenetur quia.
            version: Aut quaerat aut unde est unde esse.
          - platforms:
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
            protocols:
              - Neque quasi.
              - Fugiat illo esse suscipit eius dolores voluptas.
              - Quam qui blanditiis ipsam modi.
              - Nihil quis voluptatem tenetur quia.
            version: Aut quaerat aut unde est unde esse.
          - platforms:
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
            protocols:
              - Neque quasi.
              - Fugiat illo esse suscipit eius dolores voluptas.
              - Quam qui blanditiis ipsam modi.
              - Nihil quis voluptatem tenetur quia.
            version: Aut quaerat aut unde est unde esse.
      required:
        - versions
    HarnessIacmProviderRegistrySigningKey:
      type: object
      properties:
        ascii_armor:
          type: string
          description: ASCII-armored GPG public key
          example: Dolore velit quis et rerum natus illo.
        created_at:
          type: string
          description: Creation timestamp
          example: Omnis ut.
        id:
          type: string
          description: ID of the signing key
          example: Id ratione molestiae dolorum voluptatum accusamus omnis.
        key_id:
          type: string
          description: GPG key ID
          example: Dolorem voluptas consectetur veniam et minima blanditiis.
        key_name:
          type: string
          description: GPG key name
          example: Quia nihil tempora quasi molestiae nemo nihil.
        updated_at:
          type: string
          description: Last updated timestamp
          example: Ad qui deleniti dolor.
        user:
          type: string
          description: User who uploaded the key
          example: Eos laudantium laudantium.
      description: SigningKey contains a GPG key for provider verification
      example:
        ascii_armor: Excepturi ipsa et eos voluptas voluptates odit.
        created_at: Inventore deserunt omnis qui rerum dolores consectetur.
        id: Ducimus ea earum non et quas.
        key_id: Iste explicabo laudantium nobis quasi.
        key_name: Et rerum.
        updated_at: Molestias dolorem assumenda enim.
        user: Quidem modi aut cumque.
      required:
        - id
        - key_id
        - ascii_armor
        - key_name
        - created_at
        - updated_at
        - user
    HarnessIacmProviderRegistrySigningKeys:
      type: object
      properties:
        gpg_public_keys:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmProviderRegistryGpgPublicKey'
          description: GPG public keys
          example:
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
            - ascii_armor: Sequi et nisi in reprehenderit ut.
              key_id: Culpa est minima excepturi qui eaque molestiae.
      description: SigningKeys contains GPG public keys used for provider verification
      example:
        gpg_public_keys:
          - ascii_armor: Sequi et nisi in reprehenderit ut.
            key_id: Culpa est minima excepturi qui eaque molestiae.
          - ascii_armor: Sequi et nisi in reprehenderit ut.
            key_id: Culpa est minima excepturi qui eaque molestiae.
          - ascii_armor: Sequi et nisi in reprehenderit ut.
            key_id: Culpa est minima excepturi qui eaque molestiae.
          - ascii_armor: Sequi et nisi in reprehenderit ut.
            key_id: Culpa est minima excepturi qui eaque molestiae.
      required:
        - gpg_public_keys
    HarnessIacmResource:
      type: object
      properties:
        attributes:
          type: object
          description: A map of values related to the resource
          example:
            ami: ami-830c94ec
            instance_type: t2.micro
          additionalProperties: true
        drift_attributes:
          type: object
          description: A map of values related to the resource
          example:
            instance_type: t2.nano
          additionalProperties: true
        drift_status:
          type: string
          description: Indicates if this resource is experiencing drift.
          example: changed
          enum:
            - changed
            - deleted
            - unchanged
        mode:
          type: string
          description: Mode associated with the resource.
          example: resource
          enum:
            - resource
            - data
            - output
        module:
          type: string
          description: Module associated with the resource.
          example: full_stack
        name:
          type: string
          description: Name associated with the resource.
          example: app_server
        path_id:
          type: string
          description: >-
            Path associated with the resource. Could be namespace, environment
            or stack id.
          example: namespace
        provider:
          type: string
          description: Cloud provider associated with the resource.
          example: AWS
        sensitive_attributes:
          type: array
          items:
            example: Aut eligendi quibusdam ut quae.
          description: 'A list of the sensitive attribute keys '
          example:
            - instance_type
        type:
          type: string
          description: Type of the provisioned resource.
          example: S3 Bucket
      description: Represents an individual provisioned resource.
      example:
        attributes:
          ami: ami-830c94ec
          instance_type: t2.micro
        drift_attributes:
          instance_type: t2.nano
        drift_status: changed
        mode: resource
        module: full_stack
        name: app_server
        path_id: namespace
        provider: AWS
        sensitive_attributes:
          - instance_type
        type: S3 Bucket
      required:
        - provider
        - type
        - name
        - module
        - mode
        - path_id
        - attributes
        - drift_status
        - drift_attributes
        - sensitive_attributes
    HarnessIacmResources:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
      description: Contains provisioned resources and outputs.
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        outputs:
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
      required:
        - resources
        - data_sources
        - outputs
    HarnessIacmVariableSet:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 9vh
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        env_vars_count:
          type: integer
          description: Number of environment variables defined in Variable Set.
          example: 3678462446854849000
          format: int64
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Enim et quos numquam.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Quis expedita ut molestiae aut sit.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Quo quidem praesentium laudantium non et.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 4735765215198050000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: gc
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: nzn
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: w4l
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Aut nihil nostrum laborum est.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Est dolores aspernatur sit.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Ut exercitationem dolor explicabo voluptatem libero cum.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        tf_vars_count:
          type: integer
          description: Number of TF variables defined in Variable Set.
          example: 2679079003961251000
          format: int64
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
        var_files_count:
          type: integer
          description: Number of variable files defined in Variable Set.
          example: 3855883909016746000
          format: int64
      description: >-
        VariableSetResource is the representation for a variable-set
        association.
      example:
        account: tdf
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        env_vars_count: 4677232613648184000
        environment_variables:
          Et aliquam.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Nulla optio veniam suscipit nulla quis commodi.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Quasi delectus.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 421011062546551940
        identifier: x
        name: resource name
        org: 'n'
        project: lx8
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          A vero ut quod.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Aut est voluptatem.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Voluptate voluptatibus voluptatem vero veniam.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        tf_vars_count: 662449067924566000
        updated: 1627686800
        var_files_count: 1880681213776341800
      required:
        - account
        - org
        - project
        - identifier
        - name
        - env_vars_count
        - tf_vars_count
        - var_files_count
    HarnessIacmVariableSetList:
      type: object
      properties:
        items:
          $ref: '#/components/schemas/VariableSetResourceCollection'
      example:
        items:
          - account: v
            connectors:
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
            created: 1627590400
            description: this is a more detailed explanation of the resource.
            env_vars_count: 3495156499201020400
            environment_variables:
              Assumenda non minima.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
              Sunt omnis deserunt error nobis in.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            id: 6831056336778097000
            identifier: kf
            name: resource name
            org: 18v
            project: k
            terraform_variable_files:
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
            terraform_variables:
              Odio ea dolores perferendis eos esse ut.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            tf_vars_count: 7273079195395788000
            updated: 1627686800
            var_files_count: 1842691425972299300
          - account: v
            connectors:
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
            created: 1627590400
            description: this is a more detailed explanation of the resource.
            env_vars_count: 3495156499201020400
            environment_variables:
              Assumenda non minima.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
              Sunt omnis deserunt error nobis in.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            id: 6831056336778097000
            identifier: kf
            name: resource name
            org: 18v
            project: k
            terraform_variable_files:
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
            terraform_variables:
              Odio ea dolores perferendis eos esse ut.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            tf_vars_count: 7273079195395788000
            updated: 1627686800
            var_files_count: 1842691425972299300
          - account: v
            connectors:
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
            created: 1627590400
            description: this is a more detailed explanation of the resource.
            env_vars_count: 3495156499201020400
            environment_variables:
              Assumenda non minima.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
              Sunt omnis deserunt error nobis in.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            id: 6831056336778097000
            identifier: kf
            name: resource name
            org: 18v
            project: k
            terraform_variable_files:
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
            terraform_variables:
              Odio ea dolores perferendis eos esse ut.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            tf_vars_count: 7273079195395788000
            updated: 1627686800
            var_files_count: 1842691425972299300
          - account: v
            connectors:
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
              - connector_ref: 2bx
                created: 1627590400
                id: 740081176343001300
                type: gcp
                updated: 1627686800
            created: 1627590400
            description: this is a more detailed explanation of the resource.
            env_vars_count: 3495156499201020400
            environment_variables:
              Assumenda non minima.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
              Sunt omnis deserunt error nobis in.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            id: 6831056336778097000
            identifier: kf
            name: resource name
            org: 18v
            project: k
            terraform_variable_files:
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
              - created: 1627590400
                id: 3061502594466213000
                repository: Vel nam et.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Officiis praesentium et distinctio magni voluptas magni.
                repository_path: ''
                repository_sha: abc10ed
                updated: 1627686800
            terraform_variables:
              Odio ea dolores perferendis eos esse ut.:
                created: 1627590400
                id: 7766730759644117000
                key: lzd
                updated: 1627686800
                value: Earum et qui exercitationem accusantium porro animi.
                value_type: secret
            tf_vars_count: 7273079195395788000
            updated: 1627686800
            var_files_count: 1842691425972299300
    HarnessIacmVariableSetSaveresult:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: u1
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Assumenda tempore numquam recusandae.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Voluptatem aliquam.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 7848017276444476000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: f
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: d9
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 1mb
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            In repellendus totam quas ut in quam.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        account: rr
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Delectus magnam expedita.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 449142169595734800
        identifier: x
        name: resource name
        org: xg1
        project: tyw
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Tenetur architecto magni.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - org
        - project
        - identifier
        - name
    HarnessIacmWorkspace:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 05f
          minLength: 1
          maxLength: 128
        associated_template:
          $ref: '#/components/schemas/AssociatedTemplate'
        backend_locked:
          type: boolean
          description: Defines if the remote backend is locked or not
          default: false
          example: true
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.2192055
          format: float
        cost_breakdown_json:
          type: string
          description: >-
            cost_breakdown_json is the identifier to the breakdown cost file
            from the current execution that was applied successfully
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json:
          type: string
          description: >-
            cost_diff_json is the identifier to the diff cost file between the
            previous and current successful executions
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 8664693999843391000
          format: int64
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Minima est aut quam.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
            Possimus maxime occaecati.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Consequatur ut quidem et.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Voluptatibus sit eum dolores nemo.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3846424459900327000
          format: int64
        identifier:
          type: string
          description: Workspace identifier.
          example: '5'
          minLength: 1
          maxLength: 128
        modules_json:
          type: string
          description: >-
            modules_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: 'n'
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 96t
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Sed quia.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
        providers_json:
          type: string
          description: >-
            providers_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Dolor beatae sed.
        provisioner_data:
          type: string
          example: Dolore numquam deleniti consectetur repudiandae voluptas non.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Molestiae labore ullam rem eius rem in.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Veritatis quae provident error.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Exercitationem sapiente sunt asperiores et at.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Ad laborum.
        state_checksum:
          type: string
          description: state_checksum is the sha-256 checksum of terraform state file
          example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status:
          type: string
          description: The status of the workspace
          example: destroying
          enum:
            - active
            - inactive
            - provisioning
            - destroying
            - failed
            - unknown
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_plan_json:
          type: string
          description: >-
            terraform_plan_json is the identifier to the current state file only
            in JSON format.
          example: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state:
          type: string
          description: >-
            terraform_state is the identifier to the plan file used to create
            the latest state.
          example: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json:
          type: string
          description: >-
            terraform_state_json is the identifier to the plan file used to
            create the latest state only in JSON format.
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Aspernatur veniam reprehenderit natus eveniet.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Qui ex perferendis ut et minus.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: true
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Iusto sit molestiae saepe.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 2797639501297334300
          format: int64
        variable_sets:
          type: array
          items:
            type: string
            example: Soluta et.
          description: Attached Variable Sets references
          example:
            - Officiis rerum.
            - Autem quae.
            - Impedit repellendus sed veritatis et.
      description: >-
        WorkspaceResource is the representation for a single workspace
        definition.
      example:
        account: f6n
        associated_template:
          template_id: '9'
          version: 9ks
        backend_locked: false
        budget: 0.7985665
        cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled: true
        created: 2451113105315366000
        default_pipelines:
          Molestias soluta magnam accusamus.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Corrupti reprehenderit.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Nemo est.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
        id: 6331302897874128000
        identifier: jj
        modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        name: resource name
        org: '3'
        project: jw6
        provider_connector: Suscipit assumenda.
        provider_connectors:
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
        providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner: At totam velit voluptas doloribus.
        provisioner_data: Corporis facilis deleniti non iste delectus suscipit.
        provisioner_version: Rerum omnis corporis.
        prune_sensitive_data: true
        repository: Rerum enim ut aliquam ut.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Nisi numquam ea excepturi sint.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: false
        sparse_checkout: Ea recusandae harum autem aperiam.
        state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status: destroying
        tags:
          foo: bar
        terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Rem et.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Sed neque commodi.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
        terragrunt_provider: true
        terragrunt_version: Eaque et.
        updated: 8108631468783322000
        variable_sets:
          - Voluptatem assumenda excepturi vel odio rem.
          - Praesentium accusamus dolor saepe inventore.
      required:
        - account
        - org
        - project
        - identifier
        - name
        - provider_connector
        - provisioner
        - repository_connector
        - terraform_variables
        - environment_variables
        - created
        - updated
        - provisioner_data
        - status
        - tags
    HarnessIacmWorkspaceCreateresult:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '2'
          minLength: 1
          maxLength: 128
        associated_template:
          $ref: '#/components/schemas/AssociatedTemplate'
        backend_locked:
          type: boolean
          description: Defines if the remote backend is locked or not
          default: false
          example: false
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.89964515
          format: float
        cost_breakdown_json:
          type: string
          description: >-
            cost_breakdown_json is the identifier to the breakdown cost file
            from the current execution that was applied successfully
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json:
          type: string
          description: >-
            cost_diff_json is the identifier to the diff cost file between the
            previous and current successful executions
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 3632906456070417400
          format: int64
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Aliquam est quae officiis soluta aut voluptatum.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
            Similique officiis dolores est.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Aliquid autem quae quibusdam perferendis.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        id:
          type: integer
          description: ID PK for internal uses
          example: 1616806528504734200
          format: int64
        identifier:
          type: string
          description: Workspace identifier.
          example: qc
          minLength: 1
          maxLength: 128
        modules_json:
          type: string
          description: >-
            modules_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: wfo
          minLength: 1
          maxLength: 128
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
        project:
          type: string
          description: Project is the project identifier.
          example: m
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Sunt debitis perspiciatis repellendus et qui blanditiis.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
        providers_json:
          type: string
          description: >-
            providers_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Sint doloribus sapiente harum temporibus.
        provisioner_data:
          type: string
          example: Nisi quo omnis id rerum delectus.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Deleniti facere quis vel.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Sequi expedita officiis nihil labore magni.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Voluptatum sint molestias optio quia.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Dolor quia sit.
        state_checksum:
          type: string
          description: state_checksum is the sha-256 checksum of terraform state file
          example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status:
          type: string
          description: The status of the workspace
          example: destroying
          enum:
            - active
            - inactive
            - provisioning
            - destroying
            - failed
            - unknown
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_plan_json:
          type: string
          description: >-
            terraform_plan_json is the identifier to the current state file only
            in JSON format.
          example: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state:
          type: string
          description: >-
            terraform_state is the identifier to the plan file used to create
            the latest state.
          example: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json:
          type: string
          description: >-
            terraform_state_json is the identifier to the plan file used to
            create the latest state only in JSON format.
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Distinctio quia aut.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Est dolore ut.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: false
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Blanditiis ab fugit accusamus vero.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 769748159295286100
          format: int64
        variable_sets:
          type: array
          items:
            type: string
            example: Sint modi quia.
          description: Attached Variable Sets references
          example:
            - Et id aperiam nobis officiis eaque.
            - Et et ut cupiditate ipsam quasi sed.
            - Impedit ea laboriosam voluptas numquam.
            - Expedita quia omnis at qui.
      example:
        account: 8gb
        associated_template:
          template_id: '9'
          version: 9ks
        backend_locked: false
        budget: 0.775196
        cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled: true
        created: 2562813252140019000
        default_pipelines:
          Non voluptate incidunt asperiores.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Ipsa ipsam nihil sunt et.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Minima sed aut omnis.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Saepe vel consequatur et nisi enim.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
        id: 8167057943775999000
        identifier: '5'
        modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        name: resource name
        org: '1'
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
        project: yh4
        provider_connector: Id omnis vel.
        provider_connectors:
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
        providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner: Quis et.
        provisioner_data: Voluptatem recusandae atque dolores cupiditate.
        provisioner_version: Quos cum eos assumenda sint consequuntur.
        prune_sensitive_data: true
        repository: Blanditiis quia rerum consequuntur et.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Nihil mollitia reiciendis odit autem culpa quibusdam.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: true
        sparse_checkout: Alias enim veniam.
        state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status: active
        tags:
          foo: bar
        terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Aut nobis provident voluptatem.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Dolor adipisci fugit odio tempore eligendi reiciendis.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
          Dolorem porro quo distinctio reprehenderit.:
            created: 7004477956953783000
            key: u8p
            updated: 2029366920103826400
            value: Animi natus repellendus ut vel.
            value_type: string
        terragrunt_provider: false
        terragrunt_version: Ut maxime in tempore ut debitis.
        updated: 6286152077296374000
        variable_sets:
          - Maxime excepturi iusto voluptas consequuntur quo rerum.
          - Labore maxime rerum nulla.
          - In rerum ea.
      required:
        - account
        - org
        - project
        - identifier
        - name
        - provider_connector
        - provisioner
        - repository_connector
        - terraform_variables
        - environment_variables
        - created
        - updated
        - provisioner_data
        - status
        - tags
    HarnessIacmWorkspaceList:
      type: object
      properties:
        items:
          $ref: '#/components/schemas/WorkspaceResourceCollection'
      example:
        items:
          - account: o9k
            associated_template:
              template_id: '9'
              version: 9ks
            backend_locked: false
            budget: 0.26886165
            cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_estimation_enabled: true
            created: 5458079498988329000
            default_pipelines:
              Et autem.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
              Voluptatem consequatur occaecati sapiente est.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
            description: this is a more detailed explanation of the resource.
            environment_variables:
              Aut quia quisquam dolorem sequi fuga ipsum.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Dolor natus eum eaque natus.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Soluta optio et.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            id: 3067592544267795500
            identifier: '9'
            modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            name: resource name
            org: 8c
            project: w
            provider_connector: Accusantium odio nesciunt mollitia.
            provider_connectors:
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
            providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            provisioner: Nesciunt aut voluptas velit sapiente vel.
            provisioner_data: Eos est excepturi illum et.
            provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
            prune_sensitive_data: true
            repository: Repudiandae est optio totam a.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Enim molestiae porro totam.
            repository_path: ''
            repository_sha: abc10ed
            repository_submodules: recursive
            run_all: false
            sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
            state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
            status: active
            tags:
              foo: bar
            terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
            terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
            terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            terraform_variable_files:
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
            terraform_variables:
              Et dolores.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            terragrunt_provider: true
            terragrunt_version: Aut et.
            updated: 2837326796703995400
            variable_sets:
              - Et consequatur rerum quidem.
              - Est dignissimos ut doloremque nihil nam doloribus.
              - Delectus dolor id fuga ratione sit fuga.
          - account: o9k
            associated_template:
              template_id: '9'
              version: 9ks
            backend_locked: false
            budget: 0.26886165
            cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_estimation_enabled: true
            created: 5458079498988329000
            default_pipelines:
              Et autem.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
              Voluptatem consequatur occaecati sapiente est.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
            description: this is a more detailed explanation of the resource.
            environment_variables:
              Aut quia quisquam dolorem sequi fuga ipsum.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Dolor natus eum eaque natus.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Soluta optio et.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            id: 3067592544267795500
            identifier: '9'
            modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            name: resource name
            org: 8c
            project: w
            provider_connector: Accusantium odio nesciunt mollitia.
            provider_connectors:
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
            providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            provisioner: Nesciunt aut voluptas velit sapiente vel.
            provisioner_data: Eos est excepturi illum et.
            provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
            prune_sensitive_data: true
            repository: Repudiandae est optio totam a.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Enim molestiae porro totam.
            repository_path: ''
            repository_sha: abc10ed
            repository_submodules: recursive
            run_all: false
            sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
            state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
            status: active
            tags:
              foo: bar
            terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
            terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
            terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            terraform_variable_files:
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
            terraform_variables:
              Et dolores.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            terragrunt_provider: true
            terragrunt_version: Aut et.
            updated: 2837326796703995400
            variable_sets:
              - Et consequatur rerum quidem.
              - Est dignissimos ut doloremque nihil nam doloribus.
              - Delectus dolor id fuga ratione sit fuga.
          - account: o9k
            associated_template:
              template_id: '9'
              version: 9ks
            backend_locked: false
            budget: 0.26886165
            cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            cost_estimation_enabled: true
            created: 5458079498988329000
            default_pipelines:
              Et autem.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
              Voluptatem consequatur occaecati sapiente est.:
                project_pipeline: Aut dolorum quis illum.
                workspace_pipeline: Saepe quaerat modi.
            description: this is a more detailed explanation of the resource.
            environment_variables:
              Aut quia quisquam dolorem sequi fuga ipsum.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Dolor natus eum eaque natus.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
              Soluta optio et.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            id: 3067592544267795500
            identifier: '9'
            modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            name: resource name
            org: 8c
            project: w
            provider_connector: Accusantium odio nesciunt mollitia.
            provider_connectors:
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
              - connector_ref: b
                created: 1627590400
                id: 7841704743406482000
                terragrunt_provider: true
                type: aws
                updated: 1627686800
                workspace_id: 5631387644666327000
            providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            provisioner: Nesciunt aut voluptas velit sapiente vel.
            provisioner_data: Eos est excepturi illum et.
            provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
            prune_sensitive_data: true
            repository: Repudiandae est optio totam a.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Enim molestiae porro totam.
            repository_path: ''
            repository_sha: abc10ed
            repository_submodules: recursive
            run_all: false
            sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
            state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
            status: active
            tags:
              foo: bar
            terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
            terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
            terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
            terraform_variable_files:
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
              - repository: Ut ut id neque voluptatem doloremque.
                repository_branch: main
                repository_commit: abc10ed
                repository_connector: Est reiciendis error id.
                repository_path: ''
                repository_sha: abc10ed
            terraform_variables:
              Et dolores.:
                created: 7004477956953783000
                key: u8p
                updated: 2029366920103826400
                value: Animi natus repellendus ut vel.
                value_type: string
            terragrunt_provider: true
            terragrunt_version: Aut et.
            updated: 2837326796703995400
            variable_sets:
              - Et consequatur rerum quidem.
              - Est dignissimos ut doloremque nihil nam doloribus.
              - Delectus dolor id fuga ratione sit fuga.
    HarnessIacmWorkspaceProvisionerRatio:
      type: object
      properties:
        provisioner:
          type: object
          description: Provisioner name
          example:
            Dolorem officia quasi placeat consequatur aut.: 0.2318645479528283
          additionalProperties:
            type: number
            example: 0.7698716991709879
            format: double
        total:
          type: number
          description: Total number of workspaces
          example: 0.3149469457124346
          format: double
      description: Represents the ratio of providers used by workspaces.
      example:
        provisioner:
          Odit asperiores nulla rerum est odit.: 0.7067673422649147
          Officiis rerum repellendus repellendus molestiae distinctio id.: 0.4495337164520908
        total: 0.01606883781175937
      required:
        - provisioner
        - total
    HarnessIacmWorkspaceTemplate:
      type: object
      properties:
        account:
          type: string
          description: Account identifier.
          example: o
          minLength: 1
          maxLength: 128
        created_at:
          type: integer
          description: Timestamp when the workspace-template association was created.
          example: 1627590400
          format: int64
        org:
          type: string
          description: Organization identifier.
          example: '0'
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier.
          example: d
          minLength: 1
          maxLength: 128
        template_id:
          type: string
          description: Template identifier.
          example: gm
          minLength: 1
          maxLength: 128
        updated_at:
          type: integer
          description: Timestamp when the workspace-template association was last updated.
          example: 1627686800
          format: int64
        version:
          type: string
          description: Template version associated with the workspace.
          example: j
          minLength: 1
          maxLength: 32
        workspace_id:
          type: string
          description: Workspace identifier.
          example: c8
          minLength: 1
          maxLength: 128
      description: >-
        WorkspaceTemplateResource is the representation for a workspace-template
        association.
      example:
        account: z
        created_at: 1627590400
        org: v
        project: tq
        template_id: np
        updated_at: 1627686800
        version: 'n'
        workspace_id: k
      required:
        - workspace_id
        - template_id
        - created_at
        - updated_at
        - account
        - project
        - org
    HarnessIacmWorkspaceTemplateReconciliationDiff:
      type: object
      properties:
        currentWorkspaceYaml:
          type: string
          description: Current workspace YAML
          example: Aperiam magnam perferendis vitae eaque.
        reconcilableWorkspaceYaml:
          type: string
          description: Workspace YAML after applying changes from the template
          example: Et maxime quisquam et quidem beatae aut.
        requiresReconciliation:
          type: boolean
          description: Indicates if the workspace needs template-based reconciliation
          example: false
      description: >-
        Shows the current and reconciled YAML for a workspace, plus whether
        reconciliation is needed.
      example:
        currentWorkspaceYaml: Omnis praesentium hic porro totam.
        reconcilableWorkspaceYaml: Alias itaque cumque eligendi quibusdam.
        requiresReconciliation: true
      required:
        - currentWorkspaceYaml
        - reconcilableWorkspaceYaml
        - requiresReconciliation
    HarnessIacmWorkspacedata:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: c
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 1331386331015558100
          format: int64
        data_type:
          type: string
          description: Type of data stored
          example: providers
          enum:
            - plan_human
            - state_raw
            - state_human
            - cost_breakdown
            - cost_diff
            - modules
            - providers
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        org:
          type: string
          description: Org is the organisation identifier.
          example: f
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Quae qui eligendi.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Voluptate nemo repellat.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Eum accusamus vel odio.
        project:
          type: string
          description: Project is the project identifier.
          example: s
          minLength: 1
          maxLength: 128
        provisioner_type:
          type: string
          description: Type of provisioner that created the data
          example: tf
          enum:
            - tf
        stack_path:
          type: string
          description: Optional path to the stack module
          example: Voluptatum molestiae aut quisquam culpa.
        stage_id:
          type: string
          description: The unique identifier for a stage
          example: Dolorem labore voluptas ullam qui.
        workspace:
          type: string
          description: Workspace identifier
          example: workspace123
      description: >-
        WorkspaceDataResource is the representation for a single item of data
        associated with a workspace.
      example:
        account: 'y'
        created: 5404393553503023000
        data_type: state_raw
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        org: 6v
        pipeline_execution_id: Ut soluta aliquid.
        pipeline_id: Odit neque sint.
        pipeline_stage_id: Delectus at odio.
        project: z
        provisioner_type: tf
        stack_path: Doloremque et.
        stage_id: Ad occaecati vel.
        workspace: workspace123
      required:
        - account
        - org
        - project
        - workspace
        - created
        - id
        - pipeline_id
        - stage_id
        - pipeline_execution_id
        - pipeline_stage_id
        - provisioner_type
        - data_type
    HarnessIacmWorkspacemodule:
      type: object
      properties:
        key:
          type: string
          description: Module key
          example: ec2-instance_test
        source:
          type: string
          description: Module source
          example: >-
            registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
        version:
          type: string
          description: Module version
          example: 5.0.0
      description: Represents an individual OpenTofu or Terraform module.
      example:
        key: ec2-instance_test
        source: >-
          registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
        version: 5.0.0
      required:
        - key
        - source
        - version
    HarnessIacmWorkspacevariable:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ki5
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 5047805603916458000
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: udj
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: env
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: p
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 1e
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 7528366278307003000
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Non autem aut beatae tempore nesciunt praesentium.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: string
          enum:
            - string
            - secret
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Qui sed et necessitatibus vel est aut.
      description: >-
        WorkspaceVariableResource is the representation for a single environment
        variable associated with a workspace.
      example:
        account: '964'
        created: 7832339338460218000
        key: k
        kind: env
        org: o
        project: xmv
        updated: 7039149532862203000
        value: Recusandae voluptatem explicabo veritatis modi aspernatur officia.
        value_type: string
        workspace: Velit et.
      required:
        - account
        - org
        - project
        - workspace
        - key
        - value
        - value_type
        - kind
        - created
        - updated
    HarnessIacmWorkspacevariableCreateresult:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: sag
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2250818736887328000
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: rb
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: env
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: cd
          minLength: 1
          maxLength: 128
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
        project:
          type: string
          description: Project is the project identifier.
          example: 45y
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 7456082762148833000
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Corrupti necessitatibus.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: secret
          enum:
            - string
            - secret
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Aut sit numquam ratione.
      example:
        account: su
        created: 7146811531941162000
        key: b1p
        kind: tf
        org: ss
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
        project: 8po
        updated: 8611561080197041000
        value: Voluptate a nulla vero qui.
        value_type: string
        workspace: Non accusantium et.
      required:
        - account
        - org
        - project
        - workspace
        - key
        - value
        - value_type
        - kind
        - created
        - updated
    IACMUnifiedStepWrapper:
      type: object
      properties:
        dynamic_fields:
          type: object
          description: Map of dynamic fields for the step
          example:
            Non commodi fugiat qui.: Maxime harum sit.
          additionalProperties:
            type: string
            example: Enim dicta aliquam porro enim.
        id:
          type: string
          description: Unique identifier for the step
          example: Aut quisquam iusto libero tenetur voluptas sed.
        name:
          type: string
          description: Name of the step
          example: Rem sed.
        yaml:
          type: string
          description: YAML definition of the step
          example: Voluptas repellendus architecto fugit.
      description: Wrapper for unified step data
      example:
        dynamic_fields:
          Corrupti nam qui nostrum consequatur.: Quo non nostrum dolorem id beatae ut.
          Exercitationem sapiente repellat ut.: Asperiores voluptatem praesentium.
          Non molestiae et tempore assumenda.: Officia fugit beatae mollitia.
        id: Aut qui id.
        name: Molestiae sunt.
        yaml: Sit exercitationem incidunt quae ad reprehenderit molestiae.
      required:
        - id
        - name
        - yaml
    IdentifierAccountScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: dq
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: u6
          minLength: 1
          maxLength: 128
      example:
        account: lat
        identifier: '4'
      required:
        - account
        - identifier
    IdentifierOrgScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '04'
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: hfh
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: cb
          minLength: 1
          maxLength: 128
      example:
        account: h
        identifier: 'n'
        org: aus
      required:
        - account
        - org
        - identifier
    IdentifierProjScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 'n'
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: md
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: md
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '6'
          minLength: 1
          maxLength: 128
      example:
        account: '4'
        identifier: br
        org: b
        project: oq9
      required:
        - account
        - org
        - project
        - identifier
    Inventory:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '3'
          minLength: 1
          maxLength: 128
        data:
          type: string
          description: The data representing the inventory
          example: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: td
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: n7h
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: dynamic
          enum:
            - manual
            - dynamic
      example:
        account: '6'
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: uw
        project: p
        type: dynamic
      required:
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    InventoryDetailResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmInventoryDetail'
      example:
        - account: a2
          created: 1627590400
          data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
          identifier: test_inventory
          name: test inventory
          org: k
          project: i0
          type: dynamic
          updated: 1627686800
        - account: a2
          created: 1627590400
          data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
          identifier: test_inventory
          name: test inventory
          org: k
          project: i0
          type: dynamic
          updated: 1627686800
    InventoryHost:
      type: object
      properties:
        groups:
          type: array
          items:
            type: string
            example: Quisquam fugiat.
          description: Groups is the list of groups the host belongs to.
          example:
            - Ratione repellat cupiditate.
            - Omnis necessitatibus assumenda eaque quidem voluptatem.
            - Quo quasi excepturi.
        host_address:
          type: string
          description: Host address is the address of the host.
          example: host1.example.com
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
      example:
        groups:
          - Est vel.
          - Sint nobis reprehenderit itaque.
          - Velit rerum impedit itaque et in.
        host_address: host1.example.com
        vars:
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
          - file_name: Nobis ut deserunt enim.
            key: z
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Non velit aut odio.
            value_type: Doloremque voluptas sit nihil.
      required:
        - host_address
    InventoryHostResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmInventoryHost'
      example:
        - created: Molestiae animi nisi et occaecati quis voluptate.
          groups:
            - Eos vitae nam.
            - Tenetur laudantium minima.
            - Consequatur atque eum tempora distinctio dolores.
            - Velit et nihil sequi provident quam.
          host_address: host1.example.com
          updated: Ad sed nesciunt quos tempore sunt.
          vars:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        - created: Molestiae animi nisi et occaecati quis voluptate.
          groups:
            - Eos vitae nam.
            - Tenetur laudantium minima.
            - Consequatur atque eum tempora distinctio dolores.
            - Velit et nihil sequi provident quam.
          host_address: host1.example.com
          updated: Ad sed nesciunt quos tempore sunt.
          vars:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        - created: Molestiae animi nisi et occaecati quis voluptate.
          groups:
            - Eos vitae nam.
            - Tenetur laudantium minima.
            - Consequatur atque eum tempora distinctio dolores.
            - Velit et nihil sequi provident quam.
          host_address: host1.example.com
          updated: Ad sed nesciunt quos tempore sunt.
          vars:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
        - created: Molestiae animi nisi et occaecati quis voluptate.
          groups:
            - Eos vitae nam.
            - Tenetur laudantium minima.
            - Consequatur atque eum tempora distinctio dolores.
            - Velit et nihil sequi provident quam.
          host_address: host1.example.com
          updated: Ad sed nesciunt quos tempore sunt.
          vars:
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
            - file_name: Nobis ut deserunt enim.
              key: z
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Non velit aut odio.
              value_type: Doloremque voluptas sit nihil.
    InventoryUpdate:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: h7q
          minLength: 1
          maxLength: 128
        data:
          type: string
          description: The data representing the inventory
          example: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: f
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: a
          minLength: 1
          maxLength: 128
      example:
        account: h
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: chj
        project: p
      required:
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    InventoryVarResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmInventoryVar'
      example:
        - created: Doloribus ut nemo sint explicabo unde.
          file_name: Totam rerum eos.
          key: a
          updated: Sapiente consequuntur iure optio sit ad aut.
          uuid: 123e4567-e89b-12d3-a456-426655440000
          value: Hic quisquam corporis velit et.
          value_type: Dolorem ut error.
          var_type: Distinctio itaque odio et ullam.
        - created: Doloribus ut nemo sint explicabo unde.
          file_name: Totam rerum eos.
          key: a
          updated: Sapiente consequuntur iure optio sit ad aut.
          uuid: 123e4567-e89b-12d3-a456-426655440000
          value: Hic quisquam corporis velit et.
          value_type: Dolorem ut error.
          var_type: Distinctio itaque odio et ullam.
    LicenceResponse:
      type: object
      properties:
        account:
          type: string
          description: Account identifier
          example: q
          minLength: 1
          maxLength: 128
        isLicenced:
          type: boolean
          description: >-
            True when this account is currently licenced to execute apply
            operations
          example: false
        isPaid:
          type: boolean
          description: True when this account is a paid account
          example: false
        reason:
          type: string
          description: If the account is not licenced, this is the reason why
          example: Dignissimos eum totam ad cupiditate.
        startTime:
          type: integer
          description: >-
            The unix timestamp of the current period over which usage was
            calculated
          example: 880767926726400400
          format: int64
        total:
          type: integer
          description: >-
            The total number of successful apply operations this account is
            licenced to perform
          example: 8610282817142392000
          format: int64
        used:
          type: integer
          description: The count of successful apply operations already performed
          example: 8445474302316179000
          format: int64
      example:
        account: 5g
        isLicenced: true
        isPaid: true
        reason: Tenetur placeat.
        startTime: 6771778797634756000
        total: 8028718053145628000
        used: 1296145154281790500
      required:
        - account
        - used
        - total
        - startTime
        - isPaid
        - isLicenced
    ListActivityResourceChangesResponse:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        drift_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection2'
        pipeline_execution:
          type: string
          description: the identifier of the pipeline execution changes were made from.
          example: Incidunt accusamus harum incidunt.
        pipeline_stage:
          type: string
          description: >-
            the identifier of the pipeline stage execution changes were made
            from.
          example: Sit quod recusandae.
        planned_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
        stage_id:
          type: string
          description: The stage ID
          example: Soluta vel sint veniam.
        workspace_id:
          type: string
          description: identifier of the workspace associated with the data
          example: Voluptatum et et minima.
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        drift_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        outputs:
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
        pipeline_execution: Beatae mollitia rerum earum aut fugit aut.
        pipeline_stage: Et dolorem sit.
        planned_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        stage_id: Consequatur ea praesentium.
        workspace_id: Quia repellendus excepturi.
      required:
        - pipeline_execution
        - drift_changes
        - planned_changes
        - resources
        - data_sources
        - outputs
        - workspace_id
        - stage_id
    ListCostChangesResponse:
      type: object
      properties:
        currency:
          type: string
          description: Currency of the costs
          example: Magni voluptas.
        diff:
          type: object
          description: Map of the type of resources and their costs.
          example:
            Nihil doloribus ut qui ducimus similique.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
            Non numquam tempore officiis voluptas et.:
              current_monthly_cost: Ratione iste sequi dolorem sed.
              diff:
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
                - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                  diff_monthly_cost: Tempora sed et animi consequuntur.
                  name: Tenetur voluptas eum amet distinctio suscipit.
                  percentage_change_monthly_cost: 3581947795968102000
                  previous_monthly_cost: Dolorem ullam et autem.
                  subresources:
                    Neque odio qui.:
                      current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                      diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                      percentage_change_monthly_cost: 5266508547392496000
                      previous_monthly_cost: Aut aut.
              diff_monthly_cost: Est veniam molestias eos numquam quis.
              percentage_change_monthly_cost: 7543237256298908000
              previous_monthly_cost: Minus omnis consequatur et ad et amet.
          additionalProperties:
            $ref: '#/components/schemas/HarnessIacmCostResourcesByType'
        diff_total_monthly_cost:
          type: string
          description: Difference of cost between workspaces per month
          example: Omnis est facilis laboriosam laborum beatae.
        past_total_monthly_cost:
          type: string
          description: Total cost of the resources per month for the last workspace
          example: Nostrum eum unde.
        percentage_change_total_monthly_cost:
          type: integer
          description: The change between the costs per month represented as a percentage
          example: 5700572754109606000
          format: int64
        stage_execution_id:
          type: string
          description: The stage execution ID
          example: Libero rerum laborum nemo ut et.
        stage_id:
          type: string
          description: The stage ID
          example: Ea quis est aut quos consequatur maxime.
        total_monthly_cost:
          type: string
          description: Total cost of the resources per month
          example: Molestiae ut illum.
        workspace_id:
          type: string
          description: The workspace identifier
          example: Aut maxime qui.
      example:
        currency: Et autem praesentium et dolor ab molestiae.
        diff:
          Aut tempora quod ex aut.:
            current_monthly_cost: Ratione iste sequi dolorem sed.
            diff:
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
              - current_monthly_cost: Et aut saepe tenetur possimus voluptatem.
                diff_monthly_cost: Tempora sed et animi consequuntur.
                name: Tenetur voluptas eum amet distinctio suscipit.
                percentage_change_monthly_cost: 3581947795968102000
                previous_monthly_cost: Dolorem ullam et autem.
                subresources:
                  Neque odio qui.:
                    current_monthly_cost: Et qui ratione nostrum quis reprehenderit expedita.
                    diff_monthly_cost: Debitis molestiae consequatur nihil quibusdam.
                    percentage_change_monthly_cost: 5266508547392496000
                    previous_monthly_cost: Aut aut.
            diff_monthly_cost: Est veniam molestias eos numquam quis.
            percentage_change_monthly_cost: 7543237256298908000
            previous_monthly_cost: Minus omnis consequatur et ad et amet.
        diff_total_monthly_cost: Neque illum rerum nihil voluptas error.
        past_total_monthly_cost: Non molestiae earum voluptatem et repudiandae.
        percentage_change_total_monthly_cost: 5015368896801806000
        stage_execution_id: Soluta est in maiores voluptas et.
        stage_id: Velit totam nesciunt rerum ut eos.
        total_monthly_cost: Aut repellendus vitae.
        workspace_id: Maiores molestiae blanditiis nesciunt libero.
      required:
        - currency
        - diff
        - total_monthly_cost
        - past_total_monthly_cost
        - diff_total_monthly_cost
        - percentage_change_total_monthly_cost
        - stage_id
        - stage_execution_id
        - workspace_id
    ListCostsResponse:
      type: object
      properties:
        pageSize:
          type: integer
          description: Current page size
          example: 50
          format: int64
        totalItems:
          type: integer
          description: Total items available
          example: 1800
          format: int64
        totalPages:
          type: integer
          description: Total pages available
          example: 36
          format: int64
        workspaces:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmMonthlycost'
          description: Representation of all the workspaces, and cost information
          example:
            - cost: '12.13'
              created: 1672531200
              currency: USD
              workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
              workspace_name: Pariatur sunt nulla.
            - cost: '12.13'
              created: 1672531200
              currency: USD
              workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
              workspace_name: Pariatur sunt nulla.
      example:
        pageSize: 50
        totalItems: 1800
        totalPages: 36
        workspaces:
          - cost: '12.13'
            created: 1672531200
            currency: USD
            workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
            workspace_name: Pariatur sunt nulla.
          - cost: '12.13'
            created: 1672531200
            currency: USD
            workspace_id: Nemo voluptatem sapiente nisi quae vitae facilis.
            workspace_name: Pariatur sunt nulla.
      required:
        - totalItems
        - totalPages
        - pageSize
    ListFilterAccountScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ll2
          minLength: 1
          maxLength: 128
      example:
        account: p
      required:
        - account
    ListFilterOrgScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: z
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: 3g
          minLength: 1
          maxLength: 128
      example:
        account: 7eq
        org: ss
      required:
        - account
        - org
    ListFilterProjScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 4xx
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: f5
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: dhe
          minLength: 1
          maxLength: 128
      example:
        account: '3'
        org: 8n
        project: 2vk
      required:
        - account
        - org
        - project
    ListModuleByIDResponse:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: f
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2264356482726391300
          format: int64
        description:
          type: string
          description: description of the module
          example: Et voluptatum ab veniam.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Doloremque exercitationem quia et tenetur.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error:
          type: string
          description: error while retrieving the module
          example: Voluptas ut qui aut.
        name:
          type: string
          description: module name
          example: kc
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: org that owns the module
          example: j
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: '8'
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Est omnis voluptatem laboriosam sunt nemo unde.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Eos quaerat.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_url:
          type: string
          description: Repository url.
          example: Odit dicta cupiditate debitis saepe.
        synced:
          type: integer
          description: >-
            Synced is the unix timestamp at which the resource was synced for
            the last time in milliseconds.
          example: 6655128897902463000
          format: int64
        system:
          type: string
          description: system name
          example: vw
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Dolore ratione iure quis provident.
        testing_enabled:
          type: boolean
          description: testing enabled
          example: false
        testing_metadata:
          $ref: '#/components/schemas/HarnessIacmModuleRegistryModuleTestingMetadata'
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 9032316663954743000
          format: int64
        versions:
          type: array
          items:
            type: string
            example: Qui laborum.
          description: versions
          example:
            - Aut eum qui velit.
            - Dolorum reprehenderit.
            - Consequatur maxime quia beatae natus.
            - Facere cupiditate sint.
      example:
        account: '6'
        created: 5609278289833949000
        description: Ut modi enim sapiente quo sit fugiat.
        git_tag_style: Rerum hic sunt error.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error: Ut nesciunt modi.
        name: yr8
        org: ff
        project: a
        repository: Ullam veritatis et quaerat doloribus quis.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Occaecati illum est.
        repository_path: ''
        repository_url: Dolorem nemo est aut quisquam quod.
        synced: 6130981613103907000
        system: g0
        tags: Aut amet cumque rerum ducimus iusto sapiente.
        testing_enabled: true
        testing_metadata:
          account: '67'
          org: o4
          pipelines:
            - Veniam quo quia veniam est velit vel.
            - Fugit corrupti consequatur dignissimos voluptas.
          project: xua
          provider_connector: Qui accusantium ipsum commodi.
          provisioner_type: Consequatur voluptatem.
          provisioner_version: Molestiae corrupti ipsam fugit mollitia magnam.
          release_pipeline: Atque beatae ullam explicabo omnis ut.
        updated: 6551675946064393000
        versions:
          - Earum in corporis sapiente omnis blanditiis.
          - Dolorem suscipit sunt qui ipsa consectetur aliquam.
          - Eaque nihil dicta voluptates vel.
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
        - synced
    ListModuleMetadataResponse:
      type: object
      properties:
        account:
          type: string
          description: account name
          example: Fugit sed sint facilis at quo accusantium.
        dependencies:
          type: array
          items:
            $ref: '#/components/schemas/DependenciesMetadata'
          description: Dependencies of the module
          example:
            - dependency_name: Quo enim earum iste ex quia nobis.
              dependency_source: Voluptates qui.
              dependency_version: Molestiae consequatur rerum qui aut qui.
            - dependency_name: Quo enim earum iste ex quia nobis.
              dependency_source: Voluptates qui.
              dependency_version: Molestiae consequatur rerum qui aut qui.
            - dependency_name: Quo enim earum iste ex quia nobis.
              dependency_source: Voluptates qui.
              dependency_version: Molestiae consequatur rerum qui aut qui.
        metadata_error:
          type: string
          description: error while retrieving the module
          example: Soluta suscipit veniam perspiciatis eos non.
        module_version:
          type: string
          description: module version
          example: Vero facere.
        name:
          type: string
          description: module name
          example: Quos ipsum sint voluptas.
        outputs:
          type: array
          items:
            $ref: '#/components/schemas/OutputMetadata'
          description: Outputs of the module
          example:
            - output_description: Repellat quia ab at et nobis.
              output_name: Incidunt commodi sed quia.
              output_sensitive: true
            - output_description: Repellat quia ab at et nobis.
              output_name: Incidunt commodi sed quia.
              output_sensitive: true
            - output_description: Repellat quia ab at et nobis.
              output_name: Incidunt commodi sed quia.
              output_sensitive: true
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderMetadata'
          description: Providers of the module
          example:
            - provider_name: Impedit expedita et esse.
              provider_source: Maiores consectetur dolore.
              provider_version: Rerum laboriosam.
            - provider_name: Impedit expedita et esse.
              provider_source: Maiores consectetur dolore.
              provider_version: Rerum laboriosam.
            - provider_name: Impedit expedita et esse.
              provider_source: Maiores consectetur dolore.
              provider_version: Rerum laboriosam.
            - provider_name: Impedit expedita et esse.
              provider_source: Maiores consectetur dolore.
              provider_version: Rerum laboriosam.
        resources:
          type: array
          items:
            $ref: '#/components/schemas/ResourceMetadata'
          description: Resources of the module
          example:
            - resource_name: Sed iusto consequuntur officia repellendus veniam.
              resource_type: Rerum recusandae deserunt enim.
            - resource_name: Sed iusto consequuntur officia repellendus veniam.
              resource_type: Rerum recusandae deserunt enim.
            - resource_name: Sed iusto consequuntur officia repellendus veniam.
              resource_type: Rerum recusandae deserunt enim.
            - resource_name: Sed iusto consequuntur officia repellendus veniam.
              resource_type: Rerum recusandae deserunt enim.
        submodule:
          type: array
          items:
            type: string
            example: Et placeat autem iusto aut aperiam provident.
          description: Submodules of the module
          example:
            - Quos qui adipisci.
            - Et ratione nisi occaecati corrupti.
        system:
          type: string
          description: system name
          example: Dolores officiis.
        variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableMetadata'
          description: Variables of the module
          example:
            - variable_default: Ipsa rerum eos quas accusamus qui.
              variable_description: Facilis expedita.
              variable_name: Occaecati aut quidem libero mollitia culpa.
              variable_required: true
              variable_sensitive: true
              variable_type: Minima unde necessitatibus non natus animi eius.
            - variable_default: Ipsa rerum eos quas accusamus qui.
              variable_description: Facilis expedita.
              variable_name: Occaecati aut quidem libero mollitia culpa.
              variable_required: true
              variable_sensitive: true
              variable_type: Minima unde necessitatibus non natus animi eius.
      example:
        account: Illo commodi.
        dependencies:
          - dependency_name: Quo enim earum iste ex quia nobis.
            dependency_source: Voluptates qui.
            dependency_version: Molestiae consequatur rerum qui aut qui.
          - dependency_name: Quo enim earum iste ex quia nobis.
            dependency_source: Voluptates qui.
            dependency_version: Molestiae consequatur rerum qui aut qui.
          - dependency_name: Quo enim earum iste ex quia nobis.
            dependency_source: Voluptates qui.
            dependency_version: Molestiae consequatur rerum qui aut qui.
        metadata_error: Aut beatae sed.
        module_version: Inventore minima amet soluta corrupti occaecati praesentium.
        name: Dolores deserunt veniam ut libero sunt.
        outputs:
          - output_description: Repellat quia ab at et nobis.
            output_name: Incidunt commodi sed quia.
            output_sensitive: true
          - output_description: Repellat quia ab at et nobis.
            output_name: Incidunt commodi sed quia.
            output_sensitive: true
          - output_description: Repellat quia ab at et nobis.
            output_name: Incidunt commodi sed quia.
            output_sensitive: true
          - output_description: Repellat quia ab at et nobis.
            output_name: Incidunt commodi sed quia.
            output_sensitive: true
        providers:
          - provider_name: Impedit expedita et esse.
            provider_source: Maiores consectetur dolore.
            provider_version: Rerum laboriosam.
          - provider_name: Impedit expedita et esse.
            provider_source: Maiores consectetur dolore.
            provider_version: Rerum laboriosam.
          - provider_name: Impedit expedita et esse.
            provider_source: Maiores consectetur dolore.
            provider_version: Rerum laboriosam.
          - provider_name: Impedit expedita et esse.
            provider_source: Maiores consectetur dolore.
            provider_version: Rerum laboriosam.
        resources:
          - resource_name: Sed iusto consequuntur officia repellendus veniam.
            resource_type: Rerum recusandae deserunt enim.
          - resource_name: Sed iusto consequuntur officia repellendus veniam.
            resource_type: Rerum recusandae deserunt enim.
          - resource_name: Sed iusto consequuntur officia repellendus veniam.
            resource_type: Rerum recusandae deserunt enim.
        submodule:
          - Mollitia quidem expedita mollitia quae.
          - Impedit hic necessitatibus et est blanditiis.
          - Animi porro omnis laborum ducimus facilis voluptatem.
        system: Ab quod nesciunt voluptate dolores dolor mollitia.
        variables:
          - variable_default: Ipsa rerum eos quas accusamus qui.
            variable_description: Facilis expedita.
            variable_name: Occaecati aut quidem libero mollitia culpa.
            variable_required: true
            variable_sensitive: true
            variable_type: Minima unde necessitatibus non natus animi eius.
          - variable_default: Ipsa rerum eos quas accusamus qui.
            variable_description: Facilis expedita.
            variable_name: Occaecati aut quidem libero mollitia culpa.
            variable_required: true
            variable_sensitive: true
            variable_type: Minima unde necessitatibus non natus animi eius.
          - variable_default: Ipsa rerum eos quas accusamus qui.
            variable_description: Facilis expedita.
            variable_name: Occaecati aut quidem libero mollitia culpa.
            variable_required: true
            variable_sensitive: true
            variable_type: Minima unde necessitatibus non natus animi eius.
          - variable_default: Ipsa rerum eos quas accusamus qui.
            variable_description: Facilis expedita.
            variable_name: Occaecati aut quidem libero mollitia culpa.
            variable_required: true
            variable_sensitive: true
            variable_type: Minima unde necessitatibus non natus animi eius.
      required:
        - account
        - name
        - system
        - module_version
        - outputs
        - providers
        - resources
        - variables
    ListModuleVersionsResponse:
      type: object
      properties:
        modules:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmModuleRegistryVersions'
          description: list of versions for a given module
          example:
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
            - versions:
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
                - git_version: Earum qui.
                  module_version: Pariatur explicabo velit in dolor optio iusto.
      example:
        modules:
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
          - versions:
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
              - git_version: Earum qui.
                module_version: Pariatur explicabo velit in dolor optio iusto.
      required:
        - modules
    ListPipelinesResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 9n3
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: i73
          minLength: 1
          maxLength: 128
        pipelines:
          type: array
          items:
            type: string
            example: Delectus ipsam.
          description: Array of pipelines that belong to a specific workspace
          example:
            - Dolor qui.
            - Alias debitis.
        project:
          type: string
          description: Project is the project identifier.
          example: sf
          minLength: 1
          maxLength: 128
      example:
        account: r
        org: a2g
        pipelines:
          - Ad quis minima.
          - Eaque omnis facere architecto neque et.
        project: f
      required:
        - account
        - org
        - project
    ListProviderVersionsResponse:
      type: object
      properties:
        versions:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmProviderRegistryProviderVersion'
          description: List of available provider versions
          example:
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
            - platforms:
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
                - arch: Sed reprehenderit.
                  os: Minus qui voluptatibus voluptate ea eos.
              protocols:
                - Neque quasi.
                - Fugiat illo esse suscipit eius dolores voluptas.
                - Quam qui blanditiis ipsam modi.
                - Nihil quis voluptatem tenetur quia.
              version: Aut quaerat aut unde est unde esse.
      description: List of provider versions
      example:
        versions:
          - platforms:
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
            protocols:
              - Neque quasi.
              - Fugiat illo esse suscipit eius dolores voluptas.
              - Quam qui blanditiis ipsam modi.
              - Nihil quis voluptatem tenetur quia.
            version: Aut quaerat aut unde est unde esse.
          - platforms:
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
              - arch: Sed reprehenderit.
                os: Minus qui voluptatibus voluptate ea eos.
            protocols:
              - Neque quasi.
              - Fugiat illo esse suscipit eius dolores voluptas.
              - Quam qui blanditiis ipsam modi.
              - Nihil quis voluptatem tenetur quia.
            version: Aut quaerat aut unde est unde esse.
      required:
        - versions
    ListProvisionersRatioResponse:
      type: object
      properties:
        provisioner:
          type: object
          description: Provisioner name
          example:
            Dolorum et.: 0.7890150202520932
            Eum ipsa.: 0.48604043391937335
            Modi qui nobis animi voluptatem.: 0.18461016970820143
          additionalProperties:
            type: number
            example: 0.32961573731710914
            format: double
        total:
          type: number
          description: Total number of workspaces
          example: 0.4207538387328484
          format: double
      description: List of provisioners ratio
      example:
        provisioner:
          Dolore magni quam quam quisquam.: 0.8721326385256994
        total: 0.9662756469456686
      required:
        - provisioner
        - total
    ListResourceChangesResponse:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        drift_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection2'
        pipeline_execution:
          type: string
          description: the identifier of the pipeline execution changes were made from.
          example: Explicabo voluptates.
        pipeline_stage:
          type: string
          description: >-
            the identifier of the pipeline stage execution changes were made
            from.
          example: Sunt voluptatibus officia eaque praesentium nesciunt eligendi.
        planned_changes:
          $ref: '#/components/schemas/ChangedResourceCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
        stage_id:
          type: string
          description: The stage ID
          example: Et odio minus eos impedit.
        workspace_id:
          type: string
          description: identifier of the workspace associated with the data
          example: Pariatur veritatis ducimus aut.
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        drift_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        outputs:
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
          - change: added
            name: instance_public_ip
            new: new value
            old: old value
            sensitive: true
        pipeline_execution: Eligendi enim est minima.
        pipeline_stage: Dolorem eos consequatur labore harum excepturi exercitationem.
        planned_changes:
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
          - change: added
            change_count: 10
            changes:
              Et libero explicabo vel nihil incidunt.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
              Quas praesentium.:
                change: added
                drift: true
                new: new value
                old: old value
                sensitive: true
            drift: false
            module: full_stack
            name: app_server
            provider: AWS
            type: S3 Bucket
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        stage_id: Autem quae eum reiciendis laudantium.
        workspace_id: Est ullam voluptatem recusandae eos quam deserunt.
      required:
        - pipeline_execution
        - drift_changes
        - planned_changes
        - resources
        - data_sources
        - outputs
        - workspace_id
        - stage_id
    ListResourcesResponse:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        outputs:
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
      required:
        - resources
        - data_sources
        - outputs
    LockInfo:
      type: object
      properties:
        created:
          type: string
          description: Time that the lock was taken.
          example: '2023-07-03T20:16:18.382839Z'
        id:
          type: string
          description: Unique ID for the lock. Generated by the terraform cli.
          example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
          minLength: 1
        info:
          type: string
          description: Extra information to store with the lock.
          default: ''
          example: production workspace lock
        operation:
          type: string
          description: Terraform operation.
          example: OperationTypePlan
        path:
          type: string
          description: Path to the state file when applicable.
          default: ''
          example: >-
            /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version:
          type: string
          description: Terraform version.
          example: 1.0.0
        who:
          type: string
          description: The machine user who is performing the operation.
          default: ''
          example: user1
      description: Terraform lock information.
      example:
        created: '2023-07-03T20:16:18.382839Z'
        id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
        info: production workspace lock
        operation: OperationTypePlan
        path: >-
          /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version: 1.0.0
        who: user1
      required:
        - id
        - operation
        - version
        - created
    LockWorkspaceRequest:
      type: object
      properties:
        created:
          type: string
          description: Time that the lock was taken.
          example: '2023-07-03T20:16:18.382839Z'
        id:
          type: string
          description: Unique ID for the lock. Generated by the terraform cli.
          example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
          minLength: 1
        info:
          type: string
          description: Extra information to store with the lock.
          default: ''
          example: production workspace lock
        operation:
          type: string
          description: Terraform operation.
          example: OperationTypePlan
        path:
          type: string
          description: Path to the state file when applicable.
          default: ''
          example: >-
            /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version:
          type: string
          description: Terraform version.
          example: 1.0.0
        who:
          type: string
          description: The machine user who is performing the operation.
          default: ''
          example: user1
      example:
        created: '2023-07-03T20:16:18.382839Z'
        id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
        info: production workspace lock
        operation: OperationTypePlan
        path: >-
          /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version: 1.0.0
        who: user1
      required:
        - id
        - operation
        - version
        - created
    ManualInventory:
      type: object
      properties:
        env_vars:
          type: object
          description: The environment vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdb9:
              key: MY_ENV_VAR
              value: value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        groups:
          type: object
          description: The groups in the inventory
          example:
            group1:
              hosts:
                host1.example.com: null
                host2.example.com: null
              vars:
                704b228e-728d-4857-afca-b036c27abdd9:
                  key: var1
                  value: value1
                  value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleGroup'
        vars:
          type: object
          description: The vars in the inventory
          example:
            704b228e-728d-4857-afca-b036c27abdd8:
              key: ansible_ssh_private_key_file
              value: ssh-key
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        env_vars:
          704b228e-728d-4857-afca-b036c27abdb9:
            key: MY_ENV_VAR
            value: value
            value_type: string
        groups:
          group1:
            hosts:
              host1.example.com: null
              host2.example.com: null
            vars:
              704b228e-728d-4857-afca-b036c27abdd9:
                key: var1
                value: value1
                value_type: string
        vars:
          704b228e-728d-4857-afca-b036c27abdd8:
            key: ansible_ssh_private_key_file
            value: ssh-key
            value_type: secret
      required:
        - groups
    ManualInventoryResource:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: be
          minLength: 1
          maxLength: 128
        data:
          $ref: '#/components/schemas/ManualInventory'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: 0b
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: uyb
          minLength: 1
          maxLength: 128
      example:
        account: ao
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: ho6
        project: 'y'
      required:
        - account
        - org
        - project
        - identifier
        - name
        - data
        - type
    MigrateTemplateConnectorsRequest:
      type: object
      properties:
        dry_run:
          type: boolean
          description: If true, simulate the migration without updating templates.
          example: false
      example:
        dry_run: false
      required:
        - dry_run
    MigrateTemplateConnectorsResponse:
      type: object
      properties:
        message:
          type: string
          description: Confirmation message
          example: Migration job started successfully
      example:
        message: Migration job started successfully
      required:
        - message
    MigrateWorkspaceConnectorsRequest:
      type: object
      properties:
        dry_run:
          type: boolean
          description: If true, simulate the migration without modifying data.
          example: true
      example:
        dry_run: true
      required:
        - dry_run
    MigrateWorkspaceConnectorsResponse:
      type: object
      properties:
        message:
          type: string
          description: Confirmation message
          example: Migration job started successfully
      example:
        message: Migration job started successfully
      required:
        - message
    Module:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: '6'
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: description of the module
          example: Voluptatem qui error.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Rerum reiciendis nemo quo.
        name:
          type: string
          description: module name
          example: 6u
          minLength: 1
          maxLength: 128
        onboarding_pipeline:
          type: string
          description: Onboarding Pipeline
          example: Sunt laudantium totam totam nam sunt.
        onboarding_pipeline_org:
          type: string
          description: Onboarding Pipeline Org
          example: Odio temporibus.
        onboarding_pipeline_project:
          type: string
          description: Onboarding Pipeline Project
          example: Tempore explicabo ut in.
        org:
          type: string
          description: org that owns the module
          example: z5j
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: i9r
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Enim ea suscipit.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Recusandae molestias non.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: q
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Maxime quidem.
      description: Describes the attributes of a Module in the module registry
      example:
        account: '22'
        description: Incidunt sunt molestiae aut dolore ut.
        git_tag_style: Iure cumque earum rerum.
        name: mi
        onboarding_pipeline: Dignissimos inventore quis voluptas impedit id incidunt.
        onboarding_pipeline_org: Tempora officiis dolorem.
        onboarding_pipeline_project: Quis debitis esse.
        org: m7u
        project: '5'
        repository: Ab voluptas qui ut exercitationem alias nostrum.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Itaque non dolor aut.
        repository_path: ''
        system: '4'
        tags: Laborum et delectus esse odio quam.
    ModuleData:
      type: object
      properties:
        account:
          type: string
          description: account name
          example: Aliquam dolore architecto et et sit officia.
        download_url:
          type: string
          description: download url of the module
          example: Voluptatem delectus.
        error:
          type: object
          description: error from the tag operation
          example:
            Ab eveniet sequi delectus qui corrupti necessitatibus.: Alias dignissimos dignissimos qui.
            Voluptas eius sed est sapiente suscipit debitis.: Voluptas sunt.
          additionalProperties:
            type: string
            example: Ut voluptate.
        examples_paths:
          type: array
          items:
            type: string
            example: Consequatur qui autem incidunt.
          description: path of the examples relative to the module
          example:
            - Praesentium voluptates et natus necessitatibus animi.
            - Repudiandae vel quidem repudiandae eligendi animi itaque.
            - Dolorem quia similique eligendi occaecati laudantium sunt.
        git_tag:
          type: string
          description: git tag of the module
          example: Aut nam nesciunt qui sed voluptatum.
        metadata:
          type: string
          description: metadata to be parsed
          example: Delectus tempore voluptas nulla.
        name:
          type: string
          description: module name
          example: Voluptas et dolores tenetur sed.
        repo_url:
          type: string
          description: url pointing to the repo
          example: Cum est quo impedit laboriosam voluptatem voluptatum.
        submodule_name:
          type: string
          description: name of the submodule been processed
          example: Ullam ducimus quos ducimus.
        submodule_paths:
          type: array
          items:
            type: string
            example: Numquam et est.
          description: path of the submodules relative to the module
          example:
            - Eos dolores earum qui id.
            - Vel quo mollitia aut non.
            - Quaerat distinctio porro assumenda quas et eos.
        system:
          type: string
          description: system name
          example: Nulla commodi labore commodi.
        version:
          type: string
          description: version of the module
          example: Reiciendis et aspernatur odit minima.
      description: >-
        Type used to create an entry in the module metadata table related with a
        module and a specific version
      example:
        account: Porro adipisci qui.
        download_url: Accusantium est veritatis rem minus dolorum voluptas.
        error:
          Non voluptatem eveniet eum.: Qui illum dolores eius sunt.
          Suscipit ut labore est hic voluptates repellat.: Consectetur aliquid.
        examples_paths:
          - Modi et aliquid.
          - Maiores laboriosam laboriosam est et illum iure.
        git_tag: Repudiandae vero tempora voluptas omnis consequatur laboriosam.
        metadata: Molestiae omnis voluptas eius aspernatur.
        name: Quia enim ex dolores temporibus exercitationem occaecati.
        repo_url: Laudantium ut dicta earum enim accusamus.
        submodule_name: Dignissimos temporibus vitae et.
        submodule_paths:
          - Illum numquam impedit.
          - Qui libero est quod.
        system: Aut veritatis sit nam harum esse.
        version: Placeat voluptatem harum eos dolores.
      required:
        - account
        - name
        - system
        - version
        - metadata
        - download_url
        - git_tag
    ModuleEvent:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: sz2
          minLength: 1
          maxLength: 128
        eventType:
          type: string
          description: The type of event that occurred
          example: Iste porro blanditiis ipsa.
        metadata:
          $ref: '#/components/schemas/ModuleExecutionMetadata'
        moduleId:
          type: string
          description: module id associated with this event
          example: 1v8
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: x5y
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: o
          minLength: 1
          maxLength: 128
      description: ModuleEvent defines an individual module event
      example:
        account: w
        eventType: Reiciendis odit ex.
        metadata:
          pipeline: Illo dolor architecto repellendus excepturi accusamus saepe.
          pipeline_execution_id: Aut voluptas aut voluptatem eaque.
          pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
          pipeline_name: Occaecati unde sapiente est.
          pipeline_stage_id: Voluptatem aspernatur necessitatibus commodi rem laboriosam sit.
          trigger:
            Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
            Velit et odio nam.: Ipsam sed et.
        moduleId: '39'
        org: r8
        project: '2'
      required:
        - account
        - org
        - project
        - moduleId
        - eventType
    ModuleExecution:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: r8
          minLength: 1
          maxLength: 128
        moduleId:
          type: string
          description: The unique identifier for the associated module
          example: Omnis reprehenderit cumque et sapiente laboriosam.
        org:
          type: string
          description: Org is the organisation identifier.
          example: '5'
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Ea tenetur autem consequatur laborum aliquam.
        pipelineExecutionId:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Quam ipsa.
        pipelineStageId:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Tenetur illum soluta tempore aut modi similique.
        project:
          type: string
          description: Project is the project identifier.
          example: 8m
          minLength: 1
          maxLength: 128
      description: ModuleExecution defines an individual execution of a module pipeline
      example:
        account: ojv
        moduleId: Excepturi sit veritatis a unde esse voluptatem.
        org: c
        pipeline: Vel dolorem.
        pipelineExecutionId: Deleniti veritatis laborum reprehenderit sint voluptatem eveniet.
        pipelineStageId: Doloribus et expedita laborum est iure non.
        project: id
      required:
        - account
        - org
        - project
        - pipelineExecutionId
        - pipelineStageId
        - moduleId
        - pipeline
    ModuleExecutionMetadata:
      type: object
      properties:
        pipeline:
          type: string
          description: The unique identifier of any associated pipeline
          example: Placeat cum tempore quibusdam non.
        pipeline_execution_id:
          type: string
          description: The unique identifier for any associated pipeline execution
          example: Illum ad corrupti illum nihil excepturi quidem.
        pipeline_execution_number:
          type: string
          description: The unique number for any associated pipeline execution
          example: Quia consequatur at.
        pipeline_name:
          type: string
          description: The name of any associated pipeline
          example: Quo quia et.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Doloribus provident eius impedit facere et occaecati.
        trigger:
          type: object
          description: Trigger info for any associated pipeline execution
          example:
            Cum alias ad velit autem quibusdam.: Sed iusto cum.
            Ut nostrum quis.: Ut aliquid voluptas.
          additionalProperties: true
      example:
        pipeline: Repudiandae ut non vitae omnis et.
        pipeline_execution_id: Nobis dolor autem nobis magni eum.
        pipeline_execution_number: Tenetur exercitationem amet similique.
        pipeline_name: Minus nostrum dolor magni sapiente distinctio aut.
        pipeline_stage_id: Dicta et et voluptatum.
        trigger:
          Modi voluptas inventore.: Tempora non.
    ModuleExecutionResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmModuleexecutionresource'
      example:
        - account: k
          created: 1357042483503731200
          metadata:
            pipeline: Illo dolor architecto repellendus excepturi accusamus saepe.
            pipeline_execution_id: Aut voluptas aut voluptatem eaque.
            pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
            pipeline_name: Occaecati unde sapiente est.
            pipeline_stage_id: Voluptatem aspernatur necessitatibus commodi rem laboriosam sit.
            trigger:
              Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
              Velit et odio nam.: Ipsam sed et.
          moduleId: Quas eius occaecati consectetur.
          org: k
          project: 0h9
          status: Expedita quaerat consequatur quibusdam aut.
        - account: k
          created: 1357042483503731200
          metadata:
            pipeline: Illo dolor architecto repellendus excepturi accusamus saepe.
            pipeline_execution_id: Aut voluptas aut voluptatem eaque.
            pipeline_execution_number: Doloribus et cupiditate dolorum quis hic.
            pipeline_name: Occaecati unde sapiente est.
            pipeline_stage_id: Voluptatem aspernatur necessitatibus commodi rem laboriosam sit.
            trigger:
              Consectetur dolore eum ex voluptates at.: Quisquam sunt delectus quia nam maxime error.
              Velit et odio nam.: Ipsam sed et.
          moduleId: Quas eius occaecati consectetur.
          org: k
          project: 0h9
          status: Expedita quaerat consequatur quibusdam aut.
    ModuleMetadataRequest:
      type: object
      properties:
        account:
          type: string
          description: account name
          example: Facilis nam.
        module_id:
          type: string
          description: module id
          example: Non est magni aut.
        submodule:
          type: string
          description: submodule name
          example: Enim omnis.
        version:
          type: string
          description: version of the module
          example: Ad non quo necessitatibus ab voluptates quo.
      description: Type to retrieve the metadata related to a specific version of a module
      example:
        account: Quibusdam fugit ut sint quia nihil.
        module_id: At et corrupti.
        submodule: Adipisci error omnis consequatur quo quasi.
        version: Reprehenderit necessitatibus.
      required:
        - module_id
        - account
        - version
    ModuleRegistryCreateModuleResponseBody:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: zee
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 6215604817791985000
          format: int64
        description:
          type: string
          description: description of the module
          example: Officia quae asperiores tempora suscipit perspiciatis.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name:
          type: string
          description: module name
          example: 'no'
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Totam perferendis et voluptatem earum a.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Eum ea facilis.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: ti
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Modi quis incidunt asperiores autem aut fuga.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 8091690517062488000
          format: int64
      description: Create-ModuleResponseBody result type (default view)
      example:
        account: j1
        created: 3103795814133049000
        description: Sunt molestiae eius et dolore nobis et.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name: '9'
        repository: Eum maxime qui harum voluptates eius.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Quibusdam consectetur nihil asperiores saepe non dolorem.
        repository_path: ''
        system: 5un
        tags: Eos illum distinctio nisi beatae corrupti rerum.
        updated: 6769066721659050000
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
    ModuleRequest:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: e2
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: description of the module
          example: Est voluptas accusamus consequatur.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Sit voluptatem.
        name:
          type: string
          description: module name
          example: a
          minLength: 1
          maxLength: 128
        onboarding_pipeline:
          type: string
          description: Onboarding Pipeline
          example: Error provident sequi consequuntur.
        onboarding_pipeline_org:
          type: string
          description: Onboarding Pipeline Org
          example: Et cumque repellendus.
        onboarding_pipeline_project:
          type: string
          description: Onboarding Pipeline Project
          example: Ex nam ut.
        org:
          type: string
          description: org that owns the module
          example: u
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: gv
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Qui reprehenderit.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Voluptates temporibus et.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: '04'
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Inventore necessitatibus accusamus dolorem est consequatur.
      description: Type used to create a module from a request
      example:
        account: lz
        description: Cum officia voluptatem assumenda.
        git_tag_style: Suscipit sit porro ut odio voluptatem labore.
        name: hmt
        onboarding_pipeline: Sequi dicta sit.
        onboarding_pipeline_org: Sequi est blanditiis ratione deleniti aut nemo.
        onboarding_pipeline_project: Ut iste deleniti non.
        org: ik
        project: '5'
        repository: Quam et maiores sunt sed voluptas temporibus.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Non commodi nihil.
        repository_path: ''
        system: 6j5
        tags: Consequatur accusantium et consequatur et.
      required:
        - account
        - name
        - system
    ModuleResource:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: r4n
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2706128422877483500
          format: int64
        description:
          type: string
          description: description of the module
          example: Quasi perspiciatis.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Modi aut.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error:
          type: string
          description: error while retrieving the module
          example: Accusamus molestiae.
        name:
          type: string
          description: module name
          example: xx
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: org that owns the module
          example: ka3
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: z
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Commodi voluptatem.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Saepe maiores.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_url:
          type: string
          description: Repository url.
          example: Est nulla aut aut quas aut.
        synced:
          type: integer
          description: >-
            Synced is the unix timestamp at which the resource was synced for
            the last time in milliseconds.
          example: 2683392576723923500
          format: int64
        system:
          type: string
          description: system name
          example: lf
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Ab tenetur ducimus dolor.
        testing_enabled:
          type: boolean
          description: testing enabled
          example: true
        testing_metadata:
          $ref: '#/components/schemas/ModuleTestingMetadata'
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 4418377650544857600
          format: int64
        versions:
          type: array
          items:
            type: string
            example: Esse est laudantium.
          description: versions
          example:
            - Praesentium dicta laboriosam ut.
            - Laudantium et natus earum et.
            - Ut dolores laudantium et corporis cumque ea.
      description: ModuleResource result type (default view)
      example:
        account: 1ua
        created: 1816980686984040400
        description: Qui et.
        git_tag_style: Quaerat ut asperiores velit sit adipisci possimus.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        module_error: Quas quia laborum ratione quidem cumque.
        name: mg5
        org: d
        project: p
        repository: Est explicabo voluptatum qui placeat.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Nihil rerum et recusandae perspiciatis aut est.
        repository_path: ''
        repository_url: Vero qui.
        synced: 2364776473782301700
        system: any
        tags: Id deleniti ullam laboriosam est doloremque ut.
        testing_enabled: false
        testing_metadata:
          account: '5'
          org: 'n'
          pipelines:
            - Beatae hic eveniet corrupti.
            - Voluptatem sit quod dolor eos eaque.
            - Ut recusandae nisi cupiditate et atque.
            - Sequi et.
          project: 0so
          provider_connector: Quo qui vitae.
          provisioner_type: Dolorum nihil.
          provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
          release_pipeline: Explicabo aut autem nam laborum facilis.
        updated: 1004655596543582500
        versions:
          - Quam debitis vel.
          - Vel qui delectus omnis qui repellat.
      required:
        - account
        - name
        - system
        - id
        - created
        - updated
        - synced
    ModuleResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/ModuleResource'
      description: >-
        ModuleResourceCollection is the result type for an array of
        ModuleResource (default view)
      example:
        - account: 'n'
          created: 8468580420864992000
          description: Maiores at aliquid minus ut et sunt.
          git_tag_style: Quis ratione sunt rerum nemo.
          id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
          module_error: Dignissimos ut qui dolore aut eum.
          name: 3g
          org: o6
          project: w
          repository: Doloribus a consequatur voluptatem.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Repellat quidem soluta tempore.
          repository_path: ''
          repository_url: Sed dolore.
          synced: 7072657022508926000
          system: x
          tags: Reprehenderit sit.
          testing_enabled: false
          testing_metadata:
            account: '5'
            org: 'n'
            pipelines:
              - Beatae hic eveniet corrupti.
              - Voluptatem sit quod dolor eos eaque.
              - Ut recusandae nisi cupiditate et atque.
              - Sequi et.
            project: 0so
            provider_connector: Quo qui vitae.
            provisioner_type: Dolorum nihil.
            provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
            release_pipeline: Explicabo aut autem nam laborum facilis.
          updated: 4635258629928217000
          versions:
            - Consequatur quia enim.
            - Porro repellendus aut nesciunt.
        - account: 'n'
          created: 8468580420864992000
          description: Maiores at aliquid minus ut et sunt.
          git_tag_style: Quis ratione sunt rerum nemo.
          id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
          module_error: Dignissimos ut qui dolore aut eum.
          name: 3g
          org: o6
          project: w
          repository: Doloribus a consequatur voluptatem.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Repellat quidem soluta tempore.
          repository_path: ''
          repository_url: Sed dolore.
          synced: 7072657022508926000
          system: x
          tags: Reprehenderit sit.
          testing_enabled: false
          testing_metadata:
            account: '5'
            org: 'n'
            pipelines:
              - Beatae hic eveniet corrupti.
              - Voluptatem sit quod dolor eos eaque.
              - Ut recusandae nisi cupiditate et atque.
              - Sequi et.
            project: 0so
            provider_connector: Quo qui vitae.
            provisioner_type: Dolorum nihil.
            provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
            release_pipeline: Explicabo aut autem nam laborum facilis.
          updated: 4635258629928217000
          versions:
            - Consequatur quia enim.
            - Porro repellendus aut nesciunt.
        - account: 'n'
          created: 8468580420864992000
          description: Maiores at aliquid minus ut et sunt.
          git_tag_style: Quis ratione sunt rerum nemo.
          id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
          module_error: Dignissimos ut qui dolore aut eum.
          name: 3g
          org: o6
          project: w
          repository: Doloribus a consequatur voluptatem.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Repellat quidem soluta tempore.
          repository_path: ''
          repository_url: Sed dolore.
          synced: 7072657022508926000
          system: x
          tags: Reprehenderit sit.
          testing_enabled: false
          testing_metadata:
            account: '5'
            org: 'n'
            pipelines:
              - Beatae hic eveniet corrupti.
              - Voluptatem sit quod dolor eos eaque.
              - Ut recusandae nisi cupiditate et atque.
              - Sequi et.
            project: 0so
            provider_connector: Quo qui vitae.
            provisioner_type: Dolorum nihil.
            provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
            release_pipeline: Explicabo aut autem nam laborum facilis.
          updated: 4635258629928217000
          versions:
            - Consequatur quia enim.
            - Porro repellendus aut nesciunt.
        - account: 'n'
          created: 8468580420864992000
          description: Maiores at aliquid minus ut et sunt.
          git_tag_style: Quis ratione sunt rerum nemo.
          id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
          module_error: Dignissimos ut qui dolore aut eum.
          name: 3g
          org: o6
          project: w
          repository: Doloribus a consequatur voluptatem.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Repellat quidem soluta tempore.
          repository_path: ''
          repository_url: Sed dolore.
          synced: 7072657022508926000
          system: x
          tags: Reprehenderit sit.
          testing_enabled: false
          testing_metadata:
            account: '5'
            org: 'n'
            pipelines:
              - Beatae hic eveniet corrupti.
              - Voluptatem sit quod dolor eos eaque.
              - Ut recusandae nisi cupiditate et atque.
              - Sequi et.
            project: 0so
            provider_connector: Quo qui vitae.
            provisioner_type: Dolorum nihil.
            provisioner_version: Rerum quos voluptas voluptatum veritatis repellendus.
            release_pipeline: Explicabo aut autem nam laborum facilis.
          updated: 4635258629928217000
          versions:
            - Consequatur quia enim.
            - Porro repellendus aut nesciunt.
    ModuleTagRequest:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: f4
          minLength: 1
          maxLength: 128
        error:
          type: object
          description: error from the tag operation
          example:
            Aperiam harum natus placeat omnis nostrum.: Quidem aspernatur.
            Harum illo.: Velit voluptas ut mollitia et repudiandae.
            Illo officiis.: Omnis dolor.
          additionalProperties:
            type: string
            example: Molestias sit.
        name:
          type: string
          description: module name
          example: 4ds
          minLength: 1
          maxLength: 128
        system:
          type: string
          description: system name
          example: ma2
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: array
          items:
            type: string
            example: Temporibus quae voluptatum quas quia id id.
          description: tags defining the module
          example:
            - Est est odio iste ut quae.
            - Nesciunt dicta reprehenderit est voluptatem consequatur.
            - Quidem dolorem.
            - Molestiae neque et vel sed.
      description: >-
        Type used to create a request to post data in relation to the tags of a
        module
      example:
        account: k
        error:
          Nihil iure.: Qui ducimus quos non aliquam.
          Numquam tempore quasi minima voluptatem.: Ipsa sit unde qui commodi.
          Odio vel voluptas omnis quis sed eum.: Aspernatur accusantium recusandae quia minus.
        name: o6d
        system: mnx
        tags:
          - Aperiam eaque odio corporis aut enim.
          - Omnis mollitia.
      required:
        - account
        - name
        - system
    ModuleTestingMetadata:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: nwx
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: 3k
          minLength: 1
          maxLength: 128
        pipelines:
          type: array
          items:
            type: string
            example: Nisi aliquam eum cupiditate voluptates sed nam.
          description: pipelines where the testing is enabled
          example:
            - Itaque vel consequatur consequatur magni nobis quam.
            - Fuga omnis sit quia accusamus quaerat eum.
            - Sint nam.
            - Aliquam soluta tenetur.
        project:
          type: string
          description: Project is the project identifier.
          example: j
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: provider connector for testing purposes
          example: Aut aperiam.
        provisioner_type:
          type: string
          description: provisioner type for testing purposes
          example: Tenetur ex.
        provisioner_version:
          type: string
          description: provisioner version for testing purposes
          example: Sequi veniam qui.
        release_pipeline:
          type: string
          description: release pipeline
          example: Optio inventore.
      description: ModuleTestingMetadata result type (default view)
      example:
        account: uvw
        org: '4'
        pipelines:
          - Vel rerum dolor totam aut.
          - Illo consequatur soluta qui eaque eaque.
          - Voluptates quam nostrum perferendis minima.
          - Reiciendis perspiciatis qui vel voluptatum sed ullam.
        project: ib
        provider_connector: Fugit ducimus reiciendis eum.
        provisioner_type: Eum ut minus.
        provisioner_version: Fuga nam consequatur quidem architecto.
        release_pipeline: Dolor quam similique eos est.
      required:
        - account
        - org
        - project
        - provisioner_type
        - provisioner_version
        - provider_connector
        - pipelines
    ModuleUpdate:
      type: object
      properties:
        account:
          type: string
          description: account that owns the module
          example: 7cc
          minLength: 1
          maxLength: 128
        description:
          type: string
          description: description of the module
          example: Laboriosam aut.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Occaecati aut et iste.
        id:
          type: string
          description: module id
          example: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name:
          type: string
          description: module name
          example: u
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: org that owns the module
          example: mv
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: s
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Voluptates corrupti quisquam.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Nulla autem expedita facilis rem.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: '3'
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Non in repellendus.
      description: >-
        ModuleUpdate defines the field of a module that can be updated in the
        module registry
      example:
        account: v6c
        description: Qui ut exercitationem dolores ad omnis.
        git_tag_style: Culpa fugit nulla consequatur beatae quas.
        id: aaaaaaaa-bbbb-cccc-eeee-ffffffffffff
        name: 'y'
        org: s
        project: ra
        repository: Ullam quis.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Ut eius non.
        repository_path: ''
        system: '42'
        tags: Et architecto.
      required:
        - id
        - account
        - name
        - system
    OutputCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmOutput'
      example:
        - name: instance_public_ip
          sensitive: true
          value: Omnis soluta nisi et.
        - name: instance_public_ip
          sensitive: true
          value: Omnis soluta nisi et.
    OutputCollection2:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmChangedOutput'
      example:
        - change: added
          name: instance_public_ip
          new: new value
          old: old value
          sensitive: true
        - change: added
          name: instance_public_ip
          new: new value
          old: old value
          sensitive: true
        - change: added
          name: instance_public_ip
          new: new value
          old: old value
          sensitive: true
    OutputMetadata:
      type: object
      properties:
        output_description:
          type: string
          description: Output description
          example: Tempore rem vitae id.
        output_name:
          type: string
          description: Output name
          example: Ullam maxime omnis aperiam.
        output_sensitive:
          type: boolean
          description: Output sensitivity
          example: true
      example:
        output_description: Aspernatur cumque ratione laudantium.
        output_name: Ea dolore consequatur fuga similique sit sunt.
        output_sensitive: true
    Playbook:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: yy
          minLength: 1
          maxLength: 128
        env_vars:
          type: object
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Et fugit.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: t
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '5'
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        vars:
          type: object
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        account: 'y'
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Eum ea et.
        name: test playbook
        org: '0'
        project: h2q
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - account
        - org
        - project
        - identifier
        - name
        - repository_path
    PlaybookResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmPlaybook'
      example:
        - account: '79'
          created: 1627590400
          env_vars:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          identifier: Fugit consequuntur et voluptatum iure eum.
          name: test playbook
          org: '7'
          project: '6'
          repository: my-repo
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: my-connector
          repository_path: playbooks/
          updated: 1627686800
          vars:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
        - account: '79'
          created: 1627590400
          env_vars:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          identifier: Fugit consequuntur et voluptatum iure eum.
          name: test playbook
          org: '7'
          project: '6'
          repository: my-repo
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: my-connector
          repository_path: playbooks/
          updated: 1627686800
          vars:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
        - account: '79'
          created: 1627590400
          env_vars:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          identifier: Fugit consequuntur et voluptatum iure eum.
          name: test playbook
          org: '7'
          project: '6'
          repository: my-repo
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: my-connector
          repository_path: playbooks/
          updated: 1627686800
          vars:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
    PlaybookUpdate:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: t
          minLength: 1
          maxLength: 128
        env_vars:
          type: object
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Voluptatibus non ut.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: h1
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '2'
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        vars:
          type: object
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        account: i9
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Dolores qui id sit perspiciatis deserunt.
        name: test playbook
        org: fy
        project: dj
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - account
        - org
        - project
        - identifier
        - name
        - repository_path
    PluginReportedVersion:
      type: object
      properties:
        commit:
          type: string
          description: Build identifier
          example: 96381692bf3a2bd7904769c6886e832435768b57
        version:
          type: string
          description: Version number
          example: v0.123.0
      description: Plugin Reported Version
      example:
        commit: 96381692bf3a2bd7904769c6886e832435768b57
        version: v0.123.0
      required:
        - version
        - commit
    IaCMPolicy:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        created:
          type: integer
          description: Time the policy was created
          example: 1636669297674
          format: int64
        identifier:
          type: string
          description: identifier of the policy
          example: policy-1
          minLength: 1
        name:
          type: string
          description: Name of the policy
          example: Pipeline Approval
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy
          default: ''
          example: test-org
        project_id:
          type: string
          description: Harness project ID associated with this policy
          default: ''
          example: test-project
        rego:
          type: string
          description: Rego that defines the policy
          example: ''
          minLength: 1
        updated:
          type: integer
          description: Time the policy was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        created: 1636669297674
        identifier: policy-1
        name: Pipeline Approval
        org_id: test-org
        project_id: test-project
        rego: ''
        updated: 1636669297674
      required:
        - identifier
        - name
        - rego
        - created
        - updated
        - account_id
        - org_id
        - project_id
    IaCMPolicySet:
      type: object
      properties:
        account_id:
          type: string
          description: Harness account ID associated with this policy set
          default: ''
          example: eBqAoNchMLKigC_qZ5EdC
        action:
          type: string
          description: Action that triggers the policy set
          example: onrun
          minLength: 1
        created:
          type: integer
          description: Time the policy set was created
          example: 1636669297674
          format: int64
        description:
          type: string
          description: Description of the policy set
          example: Captures critical production policies
        enabled:
          type: boolean
          description: >-
            Only enabled policy sets are evaluated when evaluating by
            type/action
          example: true
        identifier:
          type: string
          description: Identifier of the policy set
          example: policyset-1
          minLength: 1
        name:
          type: string
          description: Name of the policy set
          example: Production Policies
          minLength: 1
        org_id:
          type: string
          description: Harness organization ID associated with this policy set
          default: ''
          example: test-org
        policies:
          type: array
          items:
            $ref: '#/components/schemas/LinkedPolicy'
          description: Policies linked to this policy set
          example:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              created: 1636669297674
              identifier: policy-1
              name: Pipeline Approval
              org_id: test-org
              project_id: test-project
              rego: ''
              severity: warning
              updated: 1636669297674
        project_id:
          type: string
          description: Harness project ID associated with this policy set
          default: ''
          example: test-project
        type:
          type: string
          description: Type of input suitable for the policy set
          example: pipeline
          minLength: 1
        updated:
          type: integer
          description: Time the policy set was last updated
          example: 1636669297674
          format: int64
      example:
        account_id: eBqAoNchMLKigC_qZ5EdC
        action: onrun
        created: 1636669297674
        description: Captures critical production policies
        enabled: true
        identifier: policyset-1
        name: Production Policies
        org_id: test-org
        policies:
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
          - account_id: eBqAoNchMLKigC_qZ5EdC
            created: 1636669297674
            identifier: policy-1
            name: Pipeline Approval
            org_id: test-org
            project_id: test-project
            rego: ''
            severity: warning
            updated: 1636669297674
        project_id: test-project
        type: pipeline
        updated: 1636669297674
      required:
        - identifier
        - name
        - action
        - type
        - enabled
        - created
        - updated
        - account_id
        - org_id
        - project_id
        - entity_selector
    PolicyViolationError:
      type: object
      properties:
        fault:
          type: boolean
          description: Is the error a server-side fault?
          example: false
        id:
          type: string
          description: >-
            ID is a unique identifier for this particular occurrence of the
            problem.
          example: 123abc
        message:
          type: string
          description: >-
            Message is a human-readable explanation specific to this occurrence
            of the problem.
          example: parameter 'p' must be an integer
        name:
          type: string
          description: Name is the name of this class of errors.
          example: bad_request
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
        temporary:
          type: boolean
          description: Is the error temporary?
          example: false
        timeout:
          type: boolean
          description: Is the error a timeout?
          example: false
      example:
        fault: true
        id: 123abc
        message: parameter 'p' must be an integer
        name: bad_request
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
        temporary: true
        timeout: true
      required:
        - name
        - id
        - message
        - temporary
        - timeout
        - fault
    PostFilesResponseBody:
      type: object
      properties:
        synced:
          type: boolean
          description: Indicates if the provider version is synced
          example: false
      example:
        synced: true
    Provider:
      type: object
      properties:
        account:
          type: string
          description: Account that owns the provider
          example: Voluptatem vel debitis et eligendi vitae.
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 7651507567077608000
          format: int64
        description:
          type: string
          description: Description of the provider
          example: Aut id perferendis.
        id:
          type: string
          description: Provider ID
          example: In atque et voluptas.
        type:
          type: string
          description: Provider type
          example: Molestiae omnis culpa alias consequuntur debitis non.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 921599508514849400
          format: int64
        versions:
          type: array
          items:
            $ref: '#/components/schemas/ProviderVersionMetadata'
          description: Provider versions
          example:
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
      description: Provider contains information about a Terraform provider (default view)
      example:
        account: Consectetur dignissimos nihil est corrupti.
        created: 1325245931254412800
        description: Quidem hic ratione qui sit corporis.
        id: Enim et quisquam.
        type: Inventore ducimus enim nemo perspiciatis.
        updated: 7014648385236308000
        versions:
          - files:
              - Aut molestiae quia inventore corporis.
              - Impedit possimus quibusdam.
            synced: false
            version: Porro maiores.
          - files:
              - Aut molestiae quia inventore corporis.
              - Impedit possimus quibusdam.
            synced: false
            version: Porro maiores.
          - files:
              - Aut molestiae quia inventore corporis.
              - Impedit possimus quibusdam.
            synced: false
            version: Porro maiores.
      required:
        - id
        - account
        - type
        - description
        - versions
        - created
        - updated
    ProviderBinary:
      type: object
      properties:
        arch:
          type: string
          description: Architecture
          example: Iure et velit animi voluptatem commodi.
        binary:
          type: string
          description: Provider binary file
          example:
            - 79
            - 100
            - 105
            - 111
            - 32
            - 101
            - 116
            - 32
            - 118
            - 101
            - 108
            - 32
            - 113
            - 117
            - 105
            - 46
          format: binary
        filename:
          type: string
          description: Provider binary filename
          example: Tempore autem maiores.
        os:
          type: string
          description: Operating system
          example: Similique cumque et ex modi.
      description: Provider binary for a specific platform
      example:
        arch: Officia vel.
        binary:
          - 69
          - 115
          - 116
          - 32
          - 110
          - 101
          - 115
          - 99
          - 105
          - 117
          - 110
          - 116
          - 32
          - 115
          - 101
          - 100
          - 32
          - 118
          - 101
          - 108
          - 32
          - 101
          - 116
          - 32
          - 113
          - 117
          - 105
          - 115
          - 32
          - 105
          - 109
          - 112
          - 101
          - 100
          - 105
          - 116
          - 46
        filename: Rerum expedita sit veniam.
        os: Aut minus expedita omnis.
      required:
        - os
        - arch
        - binary
        - filename
    ProviderCollection:
      type: array
      items:
        $ref: '#/components/schemas/Provider'
      description: >-
        ProviderCollection is the result type for an array of Provider (default
        view)
      example:
        - account: Tenetur consequatur quod in odio minus.
          created: 8121796847450423000
          description: Incidunt quis eum at.
          id: Autem est.
          type: Eos qui et aut iure.
          updated: 5457981860161328000
          versions:
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
        - account: Tenetur consequatur quod in odio minus.
          created: 8121796847450423000
          description: Incidunt quis eum at.
          id: Autem est.
          type: Eos qui et aut iure.
          updated: 5457981860161328000
          versions:
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
        - account: Tenetur consequatur quod in odio minus.
          created: 8121796847450423000
          description: Incidunt quis eum at.
          id: Autem est.
          type: Eos qui et aut iure.
          updated: 5457981860161328000
          versions:
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
            - files:
                - Aut molestiae quia inventore corporis.
                - Impedit possimus quibusdam.
              synced: false
              version: Porro maiores.
    ProviderConnectorWithPermissions:
      type: object
      properties:
        associatedTemplate:
          type: string
          example: Ea asperiores cum voluptatum.
        associatedVariableSet:
          type: string
          example: Maxime ullam et quia est quo.
        connector_ref:
          type: string
          example: Beatae ut fugiat.
        created:
          type: integer
          example: 8132984344775034
          format: int64
        inUse:
          type: boolean
          description: >-
            Indicates if this connector is the one actively used in the
            workspace
          example: true
        isInWorkspace:
          type: boolean
          example: true
        isLocked:
          type: boolean
          example: true
        permissions:
          $ref: '#/components/schemas/ConnectorPermissions'
        source:
          type: string
          example: template
          enum:
            - workspace
            - template
            - variableSet
        type:
          type: string
          example: gcp
          enum:
            - aws
            - azure
            - gcp
        updated:
          type: integer
          example: 2377671650692347400
          format: int64
        uuid:
          type: string
          description: Unique identifier for this connector
          example: Cupiditate aliquid.
      example:
        associatedTemplate: Officiis neque officiis soluta vel magnam molestias.
        associatedVariableSet: Nulla aut.
        connector_ref: Non esse officia repellendus non rerum enim.
        created: 6394327741920520000
        inUse: true
        isInWorkspace: true
        isLocked: true
        permissions:
          canDelete: false
        source: variableSet
        type: gcp
        updated: 7694598597780996000
        uuid: Deserunt dolore placeat beatae sit dolor blanditiis.
      required:
        - uuid
        - connector_ref
        - type
        - created
        - updated
        - source
        - isInWorkspace
        - permissions
        - inUse
        - isLocked
    ProviderMetadata:
      type: object
      properties:
        provider_name:
          type: string
          description: Provider name
          example: Minus non.
        provider_source:
          type: string
          description: Provider source
          example: Dolores eum aliquid.
        provider_version:
          type: string
          description: Provider version
          example: Voluptas neque enim.
      example:
        provider_name: Odit excepturi aliquam rerum provident est voluptatem.
        provider_source: Aut veritatis dolorem.
        provider_version: Ratione eos rerum ab.
    ProviderRequest:
      type: object
      properties:
        account:
          type: string
          description: Account that owns the provider
          example: Voluptas aspernatur beatae.
        binaries:
          type: array
          items:
            $ref: '#/components/schemas/ProviderBinary'
          description: Provider binary files for different platforms
          example:
            - arch: Iusto officia fugit nam.
              binary:
                - 69
                - 118
                - 101
                - 110
                - 105
                - 101
                - 116
                - 32
                - 113
                - 117
                - 105
                - 100
                - 101
                - 109
                - 32
                - 113
                - 117
                - 105
                - 115
                - 46
              filename: Dolor iure est eum aperiam voluptatibus natus.
              os: Velit veniam temporibus nam nesciunt nesciunt rem.
            - arch: Iusto officia fugit nam.
              binary:
                - 69
                - 118
                - 101
                - 110
                - 105
                - 101
                - 116
                - 32
                - 113
                - 117
                - 105
                - 100
                - 101
                - 109
                - 32
                - 113
                - 117
                - 105
                - 115
                - 46
              filename: Dolor iure est eum aperiam voluptatibus natus.
              os: Velit veniam temporibus nam nesciunt nesciunt rem.
        checksums_file:
          type: string
          description: SHA256SUMS file containing checksums for all binaries
          example:
            - 69
            - 115
            - 116
            - 32
            - 108
            - 97
            - 98
            - 111
            - 114
            - 101
            - 32
            - 118
            - 101
            - 108
            - 32
            - 105
            - 100
            - 32
            - 101
            - 116
            - 32
            - 114
            - 101
            - 109
            - 46
          format: binary
        description:
          type: string
          description: Description of the provider
          example: Minima pariatur officia ratione iste esse error.
        protocols:
          type: array
          items:
            type: string
            example: Voluptas magni accusantium animi.
          description: Supported Terraform protocol versions
          example:
            - Ducimus omnis maxime omnis.
            - Mollitia quis quia fuga inventore incidunt.
            - Eveniet praesentium.
            - Voluptatem sint placeat natus quos.
        signature_file:
          type: string
          description: Detached signature for the SHA256SUMS file
          example:
            - 84
            - 101
            - 110
            - 101
            - 116
            - 117
            - 114
            - 32
            - 105
            - 112
            - 115
            - 97
            - 32
            - 105
            - 112
            - 115
            - 97
            - 32
            - 111
            - 100
            - 105
            - 116
            - 32
            - 109
            - 105
            - 110
            - 117
            - 115
            - 46
          format: binary
        signing_key:
          $ref: '#/components/schemas/GPGKey'
        type:
          type: string
          description: Provider type
          example: Repellendus eos atque eius ea sit.
      description: ProviderRequest defines the fields of a provider creation request
      example:
        account: Est fugiat.
        binaries:
          - arch: Iusto officia fugit nam.
            binary:
              - 69
              - 118
              - 101
              - 110
              - 105
              - 101
              - 116
              - 32
              - 113
              - 117
              - 105
              - 100
              - 101
              - 109
              - 32
              - 113
              - 117
              - 105
              - 115
              - 46
            filename: Dolor iure est eum aperiam voluptatibus natus.
            os: Velit veniam temporibus nam nesciunt nesciunt rem.
          - arch: Iusto officia fugit nam.
            binary:
              - 69
              - 118
              - 101
              - 110
              - 105
              - 101
              - 116
              - 32
              - 113
              - 117
              - 105
              - 100
              - 101
              - 109
              - 32
              - 113
              - 117
              - 105
              - 115
              - 46
            filename: Dolor iure est eum aperiam voluptatibus natus.
            os: Velit veniam temporibus nam nesciunt nesciunt rem.
          - arch: Iusto officia fugit nam.
            binary:
              - 69
              - 118
              - 101
              - 110
              - 105
              - 101
              - 116
              - 32
              - 113
              - 117
              - 105
              - 100
              - 101
              - 109
              - 32
              - 113
              - 117
              - 105
              - 115
              - 46
            filename: Dolor iure est eum aperiam voluptatibus natus.
            os: Velit veniam temporibus nam nesciunt nesciunt rem.
        checksums_file:
          - 65
          - 117
          - 116
          - 32
          - 108
          - 105
          - 98
          - 101
          - 114
          - 111
          - 32
          - 110
          - 111
          - 110
          - 32
          - 99
          - 111
          - 110
          - 115
          - 101
          - 99
          - 116
          - 101
          - 116
          - 117
          - 114
          - 32
          - 113
          - 117
          - 105
          - 115
          - 32
          - 118
          - 111
          - 108
          - 117
          - 112
          - 116
          - 97
          - 116
          - 101
          - 109
          - 46
        description: Beatae eos.
        protocols:
          - Fugiat harum et.
          - Adipisci rem nobis ea molestiae.
          - Autem iure dolorem dolores et rerum.
          - Ullam cupiditate laudantium.
        signature_file:
          - 84
          - 101
          - 109
          - 112
          - 111
          - 114
          - 105
          - 98
          - 117
          - 115
          - 32
          - 114
          - 101
          - 112
          - 117
          - 100
          - 105
          - 97
          - 110
          - 100
          - 97
          - 101
          - 32
          - 101
          - 116
          - 32
          - 113
          - 117
          - 105
          - 32
          - 99
          - 111
          - 110
          - 115
          - 101
          - 113
          - 117
          - 117
          - 110
          - 116
          - 117
          - 114
          - 46
        signing_key:
          ascii_armor: Voluptatem praesentium voluptas tenetur tempora numquam tempora.
          key_id: Repudiandae tenetur fugiat distinctio voluptatem.
        type: Et eaque consectetur inventore beatae voluptatibus.
      required:
        - account
        - type
        - signing_key
        - protocols
        - binaries
        - checksums_file
        - signature_file
        - id
        - description
        - versions
        - created
        - updated
    ProviderVersionMetadata:
      type: object
      properties:
        files:
          type: array
          items:
            type: string
            example: Neque autem.
          description: Uploaded provider files
          example:
            - Porro fugit.
            - Repudiandae quasi aspernatur ex perferendis at.
        synced:
          type: boolean
          description: Provider version synced
          example: true
        version:
          type: string
          description: Provider version
          example: Expedita eum voluptas dolores.
      description: >-
        ProviderVersionMetadata contains metadata about a specific provider
        version (default view)
      example:
        files:
          - Inventore repellendus.
          - Incidunt totam rerum qui qui recusandae.
        synced: true
        version: Recusandae et magnam.
      required:
        - version
        - synced
        - files
    RemoteExecution:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '95'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 8148973240829842000
          format: int64
        custom_arguments:
          type: object
          description: The arguments supplied to the plan.
          example:
            Facilis fugiat eum.:
              - Aut velit reiciendis dolorem.
              - Illum vel suscipit quia qui ut.
            Ipsum occaecati possimus minima unde ea.:
              - Accusantium ipsam veniam laudantium tempora.
              - A assumenda qui labore quos.
              - Rerum facere.
            Non quis nemo in.:
              - Consequatur ullam sunt maxime pariatur neque velit.
              - Harum nostrum optio.
              - Animi voluptas repellendus.
              - Repellat vero provident quam tempore nobis occaecati.
          additionalProperties:
            type: array
            items:
              type: string
              example: Est eos eaque non voluptas.
            example:
              - Eum sit.
              - Quis et dignissimos voluptatem facere aut.
              - Incidunt animi non sit libero.
        executed:
          type: boolean
          description: >-
            The boolean value indicating if the remote execution has been
            executed.
          example: true
        id:
          type: string
          description: The ID of the remote execution.
          example: b885aff9-166a-4066-a544-f5bff5b3c3d4
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: mr
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: >-
            The pipeline execution ID of the pipeline executing the remote
            execution
          example: Dolores tempore dignissimos sed eius dolores.
        pipeline_execution_url:
          type: string
          description: >-
            The pipeline execution URL of the pipeline executing the remote
            execution
          example: Officia a.
        project:
          type: string
          description: Project is the project identifier.
          example: '4'
          minLength: 1
          maxLength: 128
        sha256_checksum:
          type: string
          description: >-
            The checksum of the patch file of changes that the remote execution
            will run against.
          example: Omnis et nobis necessitatibus dolorum ut consequatur.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 8197216787437817000
          format: int64
        workspace:
          type: string
          description: The workspace associated with the remote execution.
          example: Illum ut quae in officia et cupiditate.
      description: remote execution details for a specific workspace.
      example:
        account: mk
        created: 3269675766163341300
        custom_arguments:
          Illum est aut et perspiciatis culpa est.:
            - Quae ad.
            - Ipsum et molestiae.
            - Harum dolorem.
          Itaque laudantium.:
            - Quos qui et voluptatem.
            - Porro minus velit non magnam.
          Necessitatibus reprehenderit fuga.:
            - Illo quasi tempora omnis voluptatibus alias autem.
            - Excepturi aut.
            - Quae pariatur atque dolore facilis porro et.
            - Molestias porro omnis pariatur iste.
        executed: true
        id: d29dfa43-57eb-42e5-9b9f-cbec5e9dc90e
        org: t
        pipeline_execution_id: Recusandae iste error nesciunt sint.
        pipeline_execution_url: Adipisci laborum inventore vel.
        project: y4m
        sha256_checksum: Praesentium molestiae corrupti.
        updated: 8003560907707788000
        workspace: Perspiciatis qui et.
      required:
        - account
        - org
        - project
        - id
        - workspace
        - pipeline_execution_id
        - pipeline_execution_url
        - created
        - updated
        - executed
        - sha256_checksum
    ResourceAttributeSelector:
      type: object
      properties:
        host_address_attribute:
          type: string
          description: Host address is the address of the host.
          example: attributes.public_dns
      example:
        host_address_attribute: attributes.public_dns
      required:
        - host_address_attribute
    ResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmResource'
      example:
        - attributes:
            ami: ami-830c94ec
            instance_type: t2.micro
          drift_attributes:
            instance_type: t2.nano
          drift_status: changed
          mode: resource
          module: full_stack
          name: app_server
          path_id: namespace
          provider: AWS
          sensitive_attributes:
            - instance_type
          type: S3 Bucket
        - attributes:
            ami: ami-830c94ec
            instance_type: t2.micro
          drift_attributes:
            instance_type: t2.nano
          drift_status: changed
          mode: resource
          module: full_stack
          name: app_server
          path_id: namespace
          provider: AWS
          sensitive_attributes:
            - instance_type
          type: S3 Bucket
    ResourceDelete:
      type: object
      properties:
        module:
          type: string
          description: Module path
          example: Eum pariatur tenetur asperiores vero porro assumenda.
        name:
          type: string
          description: Resource name
          example: Quidem alias.
        path_id:
          type: string
          description: Path id
          example: Aut fuga repellat rerum omnis dolorem.
        provider:
          type: string
          description: Provider name
          example: Ab pariatur nobis voluptates voluptas.
        type:
          type: string
          description: Resource type
          example: Cumque sapiente nulla omnis soluta.
      description: Resource delete information
      example:
        module: Error ipsum tenetur corrupti impedit voluptatibus ut.
        name: Aut doloribus aut non.
        path_id: Quia tempora qui.
        provider: Aut ea nulla reiciendis unde perspiciatis.
        type: Est fuga inventore eum natus.
      required:
        - provider
        - type
        - name
        - module
        - path_id
    ResourceDeleteResult:
      type: object
      properties:
        error:
          type: string
          example: Nesciunt reiciendis porro veritatis.
        module:
          type: string
          example: Voluptatem eum possimus soluta reprehenderit aliquam.
        name:
          type: string
          example: Aut et possimus velit consectetur.
        provider:
          type: string
          example: Repellat libero voluptates rerum inventore sapiente.
        status:
          type: string
          example: skipped
          enum:
            - deleted
            - skipped
            - failed
        type:
          type: string
          example: Voluptas at eveniet ut ut.
      description: Result of a resource delete operation
      example:
        error: Unde eius vel sit.
        module: Minima error maiores commodi odio et est.
        name: Eligendi dolor laborum.
        provider: Ea voluptas sequi ullam facilis.
        status: deleted
        type: Vel soluta et.
      required:
        - provider
        - type
        - name
        - module
    ResourceDeleteSummary:
      type: object
      properties:
        deleted:
          type: integer
          description: Number of resources successfully deleted
          example: 1715121735987352000
          format: int64
        failed:
          type: integer
          description: Number of resources that failed to delete
          example: 4103232534637439000
          format: int64
        skipped:
          type: integer
          description: Number of resources skipped
          example: 4975361612034645000
          format: int64
        total:
          type: integer
          description: Total number of resources processed
          example: 5204173410544523000
          format: int64
      description: Summary of a resource delete operation
      example:
        deleted: 5458532290050438000
        failed: 2833437884011917300
        skipped: 3037293570130569700
        total: 1213956509614055400
      required:
        - total
        - deleted
        - skipped
        - failed
    ResourceMetadata:
      type: object
      properties:
        resource_name:
          type: string
          description: Resource name
          example: Amet aperiam assumenda sunt saepe sit qui.
        resource_type:
          type: string
          description: Resource type
          example: Rem delectus voluptate dolores error error vero.
      example:
        resource_name: Aut dolore molestiae enim ut et.
        resource_type: Quia nulla similique nobis quia.
    ResourceUpdate:
      type: object
      properties:
        attributes:
          description: Resource attributes
          example: Ut expedita aliquam voluptas esse.
        mode:
          type: string
          description: managed, datasource, output
          example: Earum et repellat neque et qui at.
        module:
          type: string
          description: Module path
          example: Laborum non et quia ut sit.
        name:
          type: string
          description: Resource name
          example: Dolores maxime sed.
        path_id:
          type: string
          description: path id
          example: Ipsum qui.
        provider:
          type: string
          description: Provider name
          example: Enim iure dicta deleniti.
        sensitive_attribute_paths:
          type: array
          items:
            type: string
            example: Libero in consequatur nihil quia provident.
          description: Paths to sensitive attributes
          example:
            - Facilis ducimus.
            - Dolorem quia eos consectetur praesentium.
            - Id consequatur modi quia exercitationem.
            - Voluptatibus ut aperiam quae quos sapiente.
        type:
          type: string
          description: Resource type
          example: Quaerat numquam.
      description: Resource update information
      example:
        attributes: Tempore itaque sequi.
        mode: Quis unde.
        module: Quae nostrum repellendus et.
        name: Omnis dolorem.
        path_id: Vitae animi.
        provider: Et perferendis eius culpa.
        sensitive_attribute_paths:
          - Quaerat debitis et hic quasi recusandae enim.
          - Nemo sint voluptas dolorem accusantium quia sint.
        type: Vero vitae tempore nobis asperiores.
      required:
        - provider
        - type
        - name
        - module
        - mode
        - path_id
        - attributes
    ResourceUpdateResult:
      type: object
      properties:
        error:
          type: string
          example: Autem voluptatem minus sed.
        mode:
          type: string
          example: Repellat et quae est accusantium et.
        module:
          type: string
          example: Enim eum iusto eos.
        name:
          type: string
          example: Dolorum ut accusantium odio quibusdam.
        provider:
          type: string
          example: Hic et minus.
        status:
          type: string
          example: updated
          enum:
            - updated
            - skipped
            - failed
        type:
          type: string
          example: Quo repudiandae pariatur sapiente quia explicabo.
      description: Result of a resource update operation
      example:
        error: Rem nihil culpa.
        mode: Voluptates nulla exercitationem illum porro doloremque inventore.
        module: Dolorem facere nisi.
        name: Tenetur sint.
        provider: Est sint consequuntur enim ut est.
        status: updated
        type: Ut et quidem velit.
      required:
        - provider
        - type
        - name
        - module
        - mode
    ResourceUpdateSummary:
      type: object
      properties:
        failed:
          type: integer
          description: Number of resources that failed to update
          example: 3479399742252871000
          format: int64
        skipped:
          type: integer
          description: Number of resources skipped
          example: 3455887077936265700
          format: int64
        total:
          type: integer
          description: Total number of resources processed
          example: 3746664454137605000
          format: int64
        updated:
          type: integer
          description: Number of resources successfully updated
          example: 4060480983530814500
          format: int64
      description: Summary of a resource update operation
      example:
        failed: 5728206480806608000
        skipped: 5718977345613849000
        total: 4454490758451787000
        updated: 4653572137659657000
      required:
        - total
        - updated
        - skipped
        - failed
    ResourcesSelector:
      type: object
      properties:
        include_conditions:
          type: array
          items:
            $ref: '#/components/schemas/ResourcesSelectorConditions'
          description: The conditions to include the resource.
          example:
            - attribute: tag.environment
              operator: equals
              value: prod
        path_id:
          type: string
          description: Path identifier to filter resources by
          example: qa
        provider:
          type: string
          description: Provider Type to filter resources by
          example: aws
        resource_type:
          type: string
          description: Type is the type of resource to select.
          example: aws_instance
        search_text:
          type: string
          description: Search resources by text string
          example: some text
      example:
        include_conditions:
          - attribute: tag.environment
            operator: equals
            value: prod
        path_id: qa
        provider: aws
        resource_type: aws_instance
        search_text: some text
    ResourcesSelectorConditions:
      type: object
      properties:
        attribute:
          type: string
          description: Attribute is the attribute to select on.
          example: <+attributes.region>
        operator:
          type: string
          description: Operator is the operator to use for the selector.
          example: equals
          enum:
            - equals
            - not_equals
            - contains
            - not_contains
            - starts_with
            - ends_with
        value:
          type: string
          description: Value is the value to check.
          example: europe
      example:
        attribute: <+attributes.region>
        operator: equals
        value: europe
      required:
        - attribute
        - operator
        - value
    ScopedAnsibleActivityID:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 3k
          minLength: 1
          maxLength: 128
        id:
          type: string
          description: The unique ID for this activity
          example: Dolor molestiae perferendis voluptates rem consequuntur.
        org:
          type: string
          description: Org is the organisation identifier.
          example: 9i
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 9a5
          minLength: 1
          maxLength: 128
      example:
        account: c
        id: Aut rerum odio iste veritatis aperiam.
        org: v
        project: r
      required:
        - account
        - org
        - project
        - id
    ScopedAnsibleDataIdentifier:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ia
          minLength: 1
          maxLength: 128
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        org:
          type: string
          description: Org is the organisation identifier.
          example: n1
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: iz
          minLength: 1
          maxLength: 128
      example:
        account: '8'
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        org: f
        project: np
      required:
        - account
        - org
        - project
        - id
    ScopedExecutionID:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ps4
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: w
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: Pipeline execution ID
          example: tu
          minLength: 1
          maxLength: 128
        pipeline_stage_id:
          type: string
          description: Pipeline execution stage ID
          example: l
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: s3
          minLength: 1
          maxLength: 128
      example:
        account: nf
        org: a
        pipeline_execution_id: g
        pipeline_stage_id: wxf
        project: a
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
    ScopedIdentifier:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 69b
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: Identifier is the project identifier.
          example: '9'
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: '2'
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 7j2
          minLength: 1
          maxLength: 128
      example:
        account: i2y
        identifier: t
        org: '4'
        project: 'n'
      required:
        - account
        - org
        - project
        - identifier
    ScopedInventoryID:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: sj
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: Voluptatem omnis veritatis sunt.
        org:
          type: string
          description: Org is the organisation identifier.
          example: h5x
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: jro
          minLength: 1
          maxLength: 128
      example:
        account: '255'
        identifier: Impedit architecto facere.
        org: fuf
        project: o
      required:
        - account
        - org
        - project
        - identifier
    ScopedKey:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: yv3
          minLength: 1
          maxLength: 128
        key:
          type: string
          description: Key is the identifier for the secret.
          example: f
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: env
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: 7d
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: xb
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Commodi sunt sed eveniet illum voluptate consequatur.
      example:
        account: gq6
        key: '3'
        kind: env
        org: '5'
        project: 'y'
        workspace: Est et.
      required:
        - account
        - org
        - project
        - workspace
        - kind
        - key
    ScopedPipelineID:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: pn
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: g
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: Pipeline execution ID
          example: u76
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: gv
          minLength: 1
          maxLength: 128
      example:
        account: 1q
        org: q5
        pipeline_execution_id: 1nr
        project: 5g
      required:
        - account
        - org
        - project
        - pipeline_execution_id
    ScopedPipelines:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: t
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: oc6
          minLength: 1
          maxLength: 128
        pageSize:
          type: integer
          description: Current page size
          example: 50
          format: int64
        pipelines:
          type: array
          items:
            type: string
            example: Totam quia illum.
          description: Array of pipelines that belong to a specific workspace
          example:
            - Aut recusandae.
            - Eos fugiat saepe est consectetur aut dolor.
            - Et molestiae vel qui autem rerum.
            - Minus enim exercitationem ratione.
        project:
          type: string
          description: Project is the project identifier.
          example: hw
          minLength: 1
          maxLength: 128
        totalItems:
          type: integer
          description: Total items available
          example: 1800
          format: int64
        totalPages:
          type: integer
          description: Total pages available
          example: 36
          format: int64
      example:
        account: rkx
        org: tz6
        pageSize: 50
        pipelines:
          - Ratione ea vitae inventore.
          - Dicta omnis esse.
          - Eveniet et.
          - In provident et aspernatur est libero quo.
        project: 'y'
        totalItems: 1800
        totalPages: 36
      required:
        - account
        - org
        - project
        - totalItems
        - totalPages
        - pageSize
    ScopedPlaybookID:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: p
          minLength: 1
          maxLength: 128
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: In molestiae vel.
        org:
          type: string
          description: Org is the organisation identifier.
          example: 3vs
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: j
          minLength: 1
          maxLength: 128
      example:
        account: rs
        identifier: Illum quaerat dolorem provident.
        org: ve
        project: pi
      required:
        - account
        - org
        - project
        - identifier
    ScopedRemoteExecutionIdentifier:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: h4
          minLength: 1
          maxLength: 128
        id:
          type: string
          description: The ID of the remote execution
          example: eefaeab6-9177-4a5d-bcf7-7d583459f0ed
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: h
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: t
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Dolores reprehenderit voluptas.
      example:
        account: bm
        id: 294eaaeb-f48d-4c95-b21b-0588a81c6e4f
        org: p
        project: so
        workspace: Et quasi dolore optio.
      required:
        - account
        - org
        - project
        - workspace
        - id
    ScopedWorkspaceDataIdentifier:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: fc
          minLength: 1
          maxLength: 128
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        org:
          type: string
          description: Org is the organisation identifier.
          example: dic
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: l0
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Magni delectus.
      example:
        account: l11
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        org: ub
        project: nv2
        workspace: Doloremque repellat qui.
      required:
        - account
        - org
        - project
        - workspace
        - id
    SearchResourcesRequest:
      type: object
      properties:
        limit:
          type: integer
          description: Limit is the number of records to return for a page.
          default: 30
          example: 30
          format: int64
          minimum: 1
          maximum: 1000
        page:
          type: integer
          description: Page is the page number to return relative to the page 'limit'.
          default: 1
          example: 1
          format: int64
          minimum: 1
        selectors:
          type: array
          items:
            $ref: '#/components/schemas/ResourcesSelector'
          example:
            - include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              path_id: qa
              provider: aws
              resource_type: aws_instance
              search_text: some text
            - include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              path_id: qa
              provider: aws
              resource_type: aws_instance
              search_text: some text
            - include_conditions:
                - attribute: tag.environment
                  operator: equals
                  value: prod
              path_id: qa
              provider: aws
              resource_type: aws_instance
              search_text: some text
      example:
        limit: 30
        page: 1
        selectors:
          - include_conditions:
              - attribute: tag.environment
                operator: equals
                value: prod
            path_id: qa
            provider: aws
            resource_type: aws_instance
            search_text: some text
          - include_conditions:
              - attribute: tag.environment
                operator: equals
                value: prod
            path_id: qa
            provider: aws
            resource_type: aws_instance
            search_text: some text
    SearchResourcesResponse:
      type: object
      properties:
        data_sources:
          $ref: '#/components/schemas/ResourceCollection'
        outputs:
          $ref: '#/components/schemas/OutputCollection'
        resources:
          $ref: '#/components/schemas/ResourceCollection'
      example:
        data_sources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
        outputs:
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
          - name: instance_public_ip
            sensitive: true
            value: Omnis soluta nisi et.
        resources:
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
          - attributes:
              ami: ami-830c94ec
              instance_type: t2.micro
            drift_attributes:
              instance_type: t2.nano
            drift_status: changed
            mode: resource
            module: full_stack
            name: app_server
            path_id: namespace
            provider: AWS
            sensitive_attributes:
              - instance_type
            type: S3 Bucket
      required:
        - resources
        - data_sources
        - outputs
    SendAnsibleEventRequest:
      type: object
      properties:
        event_type:
          type: string
          description: The type of event that occurred
          example: activity-execution
          enum:
            - activity-execution
            - activity-dry-run-execution
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        metadata:
          $ref: '#/components/schemas/AnsibleActivityMetadata'
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
      example:
        event_type: activity-execution
        inventories:
          - webservers_europe
        metadata:
          activity_status: Minima autem error.
          git_branch: Quam repellat iure alias voluptatem illum delectus.
          git_commit_message: Optio molestias suscipit est non voluptas.
          git_commit_sha: Consequuntur est.
          git_repo: In accusantium sunt.
          pipeline: Aut culpa temporibus optio corporis nobis.
          pipeline_execution_id: Magnam ab.
          pipeline_execution_number: Odit ad nobis officia et.
          pipeline_name: Et sint fugiat ad fugit doloremque.
          pipeline_stage_id: A eaque possimus sint quos maxime.
          results_uuid: Explicabo odit harum mollitia sint et maiores.
          trigger:
            Aut fugit ut.: Porro enim molestiae laborum molestiae vero.
            Consectetur perferendis ipsa fugiat distinctio.: Ut dolor tempore.
            Voluptas incidunt aut in et nostrum corrupti.: Fugit perspiciatis nostrum.
        playbooks:
          - init_webservers
      required:
        - inventories
        - playbooks
        - event_type
    SendEventRequest:
      type: object
      properties:
        data:
          type: object
          example:
            Dicta nam porro voluptatem et.: Qui nobis aliquam explicabo.
            Similique possimus.: Cupiditate tenetur non blanditiis debitis minima.
            Vel neque sunt earum ut voluptate.: Et molestiae.
          additionalProperties:
            type: string
            example: Fuga libero.
        event_type:
          type: string
          description: The type of event that occurred
          example: plan
          enum:
            - plan
            - drifted
            - provisioning
            - destroying
            - active
            - inactive
            - apply_needed
            - failed
            - stage-complete
        metadata:
          $ref: '#/components/schemas/ActivityMetadata'
        pipeline_execution_id:
          type: string
          description: 'Deprecated: use metadata instead'
          default: ''
          example: Ut magni velit aut quaerat optio aut.
        pipeline_stage_id:
          type: string
          description: 'Deprecated: use metadata instead'
          default: ''
          example: Laborum ea adipisci sapiente tempore vitae dolor.
      example:
        data:
          Aut doloribus sint eaque ipsam dolorum adipisci.: Libero odio inventore.
          Distinctio ut porro consequuntur reiciendis vitae.: Quo nam possimus.
          Voluptatum repellendus soluta veniam voluptas.: Natus sit eaque molestias rem.
        event_type: destroying
        metadata:
          PlannedChangesCount: 2242289416486480400
          activity_status: success
          activity_type: apply
          cost_breakdown_uuid: Aut iure maiores est sit hic magnam.
          cost_currency: Blanditiis sunt similique voluptate corporis.
          cost_diff_total_monthly: Doloremque nemo sed explicabo quia atque nesciunt.
          cost_diff_uuid: Sed corporis deserunt assumenda neque maiores assumenda.
          cost_past_total_monthly: Inventore cumque dolorem aspernatur et.
          cost_total_monthly: Corporis voluptates sapiente culpa.
          cost_total_monthly_percentage_change: Ut natus.
          drift_counts:
            added: 5453536451209125000
            changed: 3005812491622674400
            deleted: 80726413424464500
            imported: 3301990761375628300
            removed: 5410369387984331000
            unchanged: 6252460999198102000
          enable_solutions_factory: true
          git_branch: Earum voluptas vitae suscipit.
          git_commit_message: Atque velit blanditiis fugiat et.
          git_commit_sha: Officiis rerum vitae.
          git_repo: Repellendus eligendi perspiciatis quia voluptate fuga vel.
          modules_uuid: Pariatur repellat quod dolor.
          output_counts:
            added: 5453536451209125000
            changed: 3005812491622674400
            deleted: 80726413424464500
            imported: 3301990761375628300
            removed: 5410369387984331000
            unchanged: 6252460999198102000
          pipeline: Nihil cum recusandae quis nisi aliquam.
          pipeline_execution_id: Alias maiores tempora est magnam.
          pipeline_execution_number: Qui sit libero et.
          pipeline_name: Accusantium a sapiente aliquid iure.
          pipeline_stage_id: Molestiae aut maxime ducimus quis.
          plan_uuid: Tenetur aut labore natus dolor quis quo.
          providers_uuid: Neque aut ullam eum aperiam.
          provisioner: Est sit architecto ut in cum.
          provisioner_version: Voluptates et et minus voluptate non consequatur.
          resource_counts:
            added: 5453536451209125000
            changed: 3005812491622674400
            deleted: 80726413424464500
            imported: 3301990761375628300
            removed: 5410369387984331000
            unchanged: 6252460999198102000
          state_checksum: Fuga delectus eveniet.
          state_uuid: Aliquam rerum.
          trigger:
            Voluptatum voluptatem aliquid nisi fuga consequatur est.: Recusandae eos et possimus laudantium dolor.
        pipeline_execution_id: Aut assumenda in saepe non.
        pipeline_stage_id: Aspernatur eligendi quisquam voluptate et non quidem.
      required:
        - event_type
    SendModuleEventRequest:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 2mk
          minLength: 1
          maxLength: 128
        eventType:
          type: string
          description: The type of event that occurred
          example: Ipsum officiis.
        metadata:
          $ref: '#/components/schemas/ModuleExecutionMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: nj
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 3m
          minLength: 1
          maxLength: 128
      example:
        account: '7'
        eventType: Et aut autem dolorum explicabo quo non.
        metadata:
          pipeline: Quod molestiae a quia vel.
          pipeline_execution_id: Modi voluptatibus.
          pipeline_execution_number: Accusantium unde perspiciatis occaecati dolor.
          pipeline_name: Eum sed.
          pipeline_stage_id: Fuga sed illum quo quasi exercitationem nam.
          trigger:
            Ipsam necessitatibus ipsum voluptate.: Consequuntur deleniti.
        org: v
        project: 7ja
      required:
        - account
        - org
        - project
        - eventType
    IaCMServiceVersion:
      type: object
      properties:
        commit:
          type: string
          description: Build identifier
          example: 96381692bf3a2bd7904769c6886e832435768b57
        deployment_mode:
          type: string
          description: Determines if the service is running on saas or smp
          example: saas
          enum:
            - saas
            - smp
        version:
          type: string
          description: Version number
          example: v0.123.0
      description: Service version
      example:
        commit: 96381692bf3a2bd7904769c6886e832435768b57
        deployment_mode: smp
        version: v0.123.0
      required:
        - version
        - commit
        - deployment_mode
    ShowAnsibleActivityResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '47'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        event_type:
          type: string
          description: The type of event that occurred
          example: activity-execution
          enum:
            - activity-execution
            - activity-dry-run-execution
        id:
          type: string
          description: The unique identifier for this activity
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          type: string
          description: Inventories associated with this event
          example:
            - webservers_europe
        metadata:
          $ref: '#/components/schemas/AnsibleActivityMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: b
          minLength: 1
          maxLength: 128
        playbooks:
          type: string
          description: Playbooks associated with this event
          example:
            - init_webservers
        project:
          type: string
          description: Project is the project identifier.
          example: lv
          minLength: 1
          maxLength: 128
      example:
        account: 6t
        created: 1627590400
        event_type: activity-execution
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        inventories:
          - webservers_europe
        metadata:
          activity_status: Animi aspernatur voluptatem minus.
          git_branch: Et quisquam odio consequatur consectetur non.
          git_commit_message: Qui ad illo.
          git_commit_sha: Et et tempora commodi eius vero fugiat.
          git_repo: Deserunt suscipit praesentium nesciunt tempore facilis.
          pipeline: Veniam et quod.
          pipeline_execution_id: Ratione eum.
          pipeline_execution_number: Facilis ut omnis vitae.
          pipeline_name: Ipsam omnis earum deserunt aut vel.
          pipeline_stage_id: Necessitatibus cum.
          results_uuid: Aperiam dolores consequuntur ad fugit.
          trigger:
            Architecto delectus et excepturi adipisci temporibus.: Nisi nobis ut id quis laboriosam.
            Consequatur et dicta aut sapiente voluptatem.: Qui atque quibusdam eos blanditiis.
            Saepe fuga quibusdam.: Architecto sit sunt sint officia sit.
        org: km
        playbooks:
          - init_webservers
        project: ek
      required:
        - account
        - org
        - project
        - inventories
        - playbooks
        - id
        - metadata
        - created
        - event_type
    ShowExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: kb
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 3579246618438323000
          format: int64
        org:
          type: string
          description: Org is the organisation identifier.
          example: r5o
          minLength: 1
          maxLength: 128
        pipeline:
          type: string
          description: The unique identifier for the associated pipeline
          example: Sed consequuntur quia dolorem veniam est.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Sint et dolores et vero aut.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Quo natus repellendus.
        project:
          type: string
          description: Project is the project identifier.
          example: '20'
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The overall status of the execution
          example: failure
          enum:
            - none
            - success
            - failure
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Placeat ut deserunt mollitia quam ipsa omnis.
      example:
        account: gcw
        created: 7058405139501118000
        org: ci1
        pipeline: Qui similique dolore sed iste quos maxime.
        pipeline_execution_id: Magnam quod.
        pipeline_stage_id: Autem sequi accusantium omnis eos doloribus.
        project: u
        status: success
        workspace: Ea commodi quaerat magnam id et similique.
      required:
        - status
        - created
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace
        - pipeline
    ShowInventoryGroupsResponse:
      type: object
      properties:
        groups:
          type: array
          items:
            type: string
            example: Et dolor omnis ad.
          example:
            - Reiciendis et sit sed consectetur temporibus tempora.
            - Et et et soluta.
            - Ipsa nemo expedita officiis.
            - Architecto laborum esse.
      example:
        groups:
          - Sit ea et voluptate natus veritatis debitis.
          - Libero eum sint.
          - Quo aut ut aut aperiam laboriosam consequatur.
    ShowInventoryHostsResponse:
      type: object
      properties:
        hosts:
          $ref: '#/components/schemas/InventoryHostResourceCollection'
      example:
        hosts:
          - created: Molestiae animi nisi et occaecati quis voluptate.
            groups:
              - Eos vitae nam.
              - Tenetur laudantium minima.
              - Consequatur atque eum tempora distinctio dolores.
              - Velit et nihil sequi provident quam.
            host_address: host1.example.com
            updated: Ad sed nesciunt quos tempore sunt.
            vars:
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
          - created: Molestiae animi nisi et occaecati quis voluptate.
            groups:
              - Eos vitae nam.
              - Tenetur laudantium minima.
              - Consequatur atque eum tempora distinctio dolores.
              - Velit et nihil sequi provident quam.
            host_address: host1.example.com
            updated: Ad sed nesciunt quos tempore sunt.
            vars:
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
          - created: Molestiae animi nisi et occaecati quis voluptate.
            groups:
              - Eos vitae nam.
              - Tenetur laudantium minima.
              - Consequatur atque eum tempora distinctio dolores.
              - Velit et nihil sequi provident quam.
            host_address: host1.example.com
            updated: Ad sed nesciunt quos tempore sunt.
            vars:
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
              - file_name: Nobis ut deserunt enim.
                key: z
                uuid: 123e4567-e89b-12d3-a456-426655440000
                value: Non velit aut odio.
                value_type: Doloremque voluptas sit nihil.
    ShowInventoryResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: rs
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        data:
          type: string
          description: The data representing the inventory
          example: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier:
          type: string
          description: The unique identifier for this inventory
          example: test_inventory
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: '0'
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: d
          minLength: 1
          maxLength: 128
        type:
          type: string
          description: Type indicates what kind of inventory this is
          example: dynamic
          enum:
            - manual
            - dynamic
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
      example:
        account: 1w
        created: 1627590400
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        identifier: test_inventory
        name: test inventory
        org: 0u2
        project: 1vr
        type: manual
        updated: 1627686800
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - type
        - data
    ShowInventoryVarsResponse:
      type: object
      properties:
        env_vars:
          $ref: '#/components/schemas/InventoryVarResourceCollection'
        vars:
          $ref: '#/components/schemas/InventoryVarResourceCollection'
      example:
        env_vars:
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
        vars:
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
    ShowLicenceResponse:
      type: object
      properties:
        account:
          type: string
          description: Account identifier
          example: 1po
          minLength: 1
          maxLength: 128
        isLicenced:
          type: boolean
          description: >-
            True when this account is currently licenced to execute apply
            operations
          example: false
        isPaid:
          type: boolean
          description: True when this account is a paid account
          example: false
        reason:
          type: string
          description: If the account is not licenced, this is the reason why
          example: Laborum rerum dolore eaque.
        startTime:
          type: integer
          description: >-
            The unix timestamp of the current period over which usage was
            calculated
          example: 1221550405688165600
          format: int64
        total:
          type: integer
          description: >-
            The total number of successful apply operations this account is
            licenced to perform
          example: 4259300854814601000
          format: int64
        used:
          type: integer
          description: The count of successful apply operations already performed
          example: 9066128809908431000
          format: int64
      example:
        account: t
        isLicenced: true
        isPaid: false
        reason: Et perferendis sed illum architecto.
        startTime: 3354776675813805000
        total: 4709966967281933000
        used: 9220557533508850000
      required:
        - account
        - used
        - total
        - startTime
        - isPaid
        - isLicenced
    ShowPlaybookResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: gqh
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the resource was created.
          example: 1627590400
          format: int64
        env_vars:
          type: string
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
        identifier:
          type: string
          description: The unique identifier for this playbook
          example: Quas in beatae facilis laudantium aliquid.
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        org:
          type: string
          description: Org is the organisation identifier.
          example: tp8
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: co
          minLength: 1
          maxLength: 128
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        updated:
          type: integer
          description: Timestamp when the resource was last updated.
          example: 1627686800
          format: int64
        vars:
          type: string
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
      example:
        account: s
        created: 1627590400
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        identifier: Alias neque.
        name: test playbook
        org: q
        project: '219'
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        updated: 1627686800
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - created
        - updated
        - account
        - org
        - project
        - identifier
        - name
        - repository_path
    ShowPlaybookVarsResponse:
      type: object
      properties:
        env_vars:
          $ref: '#/components/schemas/InventoryVarResourceCollection'
        vars:
          $ref: '#/components/schemas/InventoryVarResourceCollection'
      example:
        env_vars:
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
        vars:
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
          - created: Doloribus ut nemo sint explicabo unde.
            file_name: Totam rerum eos.
            key: a
            updated: Sapiente consequuntur iure optio sit ad aut.
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Hic quisquam corporis velit et.
            value_type: Dolorem ut error.
            var_type: Distinctio itaque odio et ullam.
    ShowRemoteExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '3'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 1027049850992942000
          format: int64
        custom_arguments:
          type: object
          description: The arguments supplied to the plan.
          example:
            Quasi libero fugit quas quis rerum.:
              - Ea rem quisquam.
              - Corporis illo dolorem maiores et atque animi.
              - Dicta ut.
            Quo quis a.:
              - Commodi est et dignissimos incidunt iusto aliquam.
              - Amet adipisci laudantium.
              - Et aliquam.
          additionalProperties:
            type: array
            items:
              type: string
              example: Perspiciatis et ut ex labore.
            example:
              - Odio enim magni voluptatem autem non molestiae.
              - In aspernatur at corrupti.
        executed:
          type: boolean
          description: >-
            The boolean value indicating if the remote execution has been
            executed.
          example: false
        id:
          type: string
          description: The ID of the remote execution.
          example: e7cfb455-32f9-46ee-87fc-58cf57d1c802
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: s
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: >-
            The pipeline execution ID of the pipeline executing the remote
            execution
          example: Nemo dolores aperiam iste.
        pipeline_execution_url:
          type: string
          description: >-
            The pipeline execution URL of the pipeline executing the remote
            execution
          example: Quo quam.
        project:
          type: string
          description: Project is the project identifier.
          example: 8o
          minLength: 1
          maxLength: 128
        sha256_checksum:
          type: string
          description: >-
            The checksum of the patch file of changes that the remote execution
            will run against.
          example: Impedit illo repellat perferendis est et.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 4390579848758805000
          format: int64
        workspace:
          type: string
          description: The workspace associated with the remote execution.
          example: Eaque qui et aliquam fugiat sint porro.
      example:
        account: b
        created: 4994590024186272000
        custom_arguments:
          Dolorem eligendi impedit velit est impedit.:
            - Dolorem omnis animi dolorem.
            - Minus harum voluptates accusamus officia.
            - Occaecati neque eos delectus ut tenetur praesentium.
            - Non est consequatur.
          Eveniet qui qui sint omnis aut ipsum.:
            - Est enim repellat dolores.
            - Molestiae quas impedit.
            - Animi ipsa earum tempore.
        executed: true
        id: 31670b9c-9d9a-4bfb-8069-99c8f45d89ed
        org: 7eq
        pipeline_execution_id: Aspernatur sit laudantium quod aut quam voluptatum.
        pipeline_execution_url: Suscipit nesciunt sint sapiente consequatur.
        project: zp
        sha256_checksum: Voluptates dolorem est.
        updated: 697311606032844300
        workspace: Voluptas sapiente repellendus.
      required:
        - account
        - org
        - project
        - id
        - workspace
        - pipeline_execution_id
        - pipeline_execution_url
        - created
        - updated
        - executed
        - sha256_checksum
    ShowUsageResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/UsageData'
        status:
          type: string
          example: Enim aliquam autem et laboriosam.
      example:
        data:
          count: 4115178181925261000
        status: Quis ea inventore consequatur molestias non similique.
      required:
        - status
        - data
    ShowWorkspaceMetricsRequest:
      type: object
      properties:
        status_counts:
          type: object
          description: Counts by status
          example:
            Est quibusdam molestiae vitae.: 5743007723864510000
            Ipsa earum error optio.: 4666567794253011000
            Voluptates distinctio expedita rem ipsam.: 8923077485020418000
          additionalProperties:
            type: integer
            example: 9176726701642907000
            format: int64
      example:
        status_counts:
          Soluta voluptatibus laudantium voluptate.: 7000555539234990000
    ShowWorkspaceVariableResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: ie
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 357501640716606200
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: xib
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: tf
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: u
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: v
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 180714700714020350
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Soluta doloremque deleniti similique.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: secret
          enum:
            - string
            - secret
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Illo est ad in in delectus quidem.
      example:
        account: 7dp
        created: 7056115896129942000
        key: lt5
        kind: tf
        org: a
        project: d3g
        updated: 634211858084064000
        value: Quia quis expedita tempore sed atque.
        value_type: secret
        workspace: Dolores deleniti minus aut.
      required:
        - account
        - org
        - project
        - workspace
        - key
        - value
        - value_type
        - kind
        - created
        - updated
    SigningKey:
      type: object
      properties:
        ascii_armor:
          type: string
          description: ASCII-armored GPG public key
          example: Ex voluptates rerum dolor.
        created_at:
          type: string
          description: Creation timestamp
          example: Repellat ex inventore vel.
        id:
          type: string
          description: ID of the signing key
          example: Explicabo vel explicabo impedit.
        key_id:
          type: string
          description: GPG key ID
          example: Dolore earum distinctio animi.
        key_name:
          type: string
          description: GPG key name
          example: Rerum reprehenderit facere quis soluta minima.
        updated_at:
          type: string
          description: Last updated timestamp
          example: In officiis nihil placeat.
        user:
          type: string
          description: User who uploaded the key
          example: Asperiores quia voluptates est esse saepe minus.
      description: SigningKey contains a GPG key for provider verification (default view)
      example:
        ascii_armor: Saepe debitis commodi distinctio id consequuntur.
        created_at: Consequatur minus quod rerum harum quia in.
        id: Aliquid fugiat ut qui.
        key_id: Doloremque laborum enim.
        key_name: Veritatis a qui expedita laborum.
        updated_at: Vitae officiis facere qui.
        user: Maiores maxime voluptas est sit rem.
      required:
        - id
        - key_id
        - ascii_armor
        - key_name
        - created_at
        - updated_at
        - user
    SigningKeyCollection:
      type: array
      items:
        $ref: '#/components/schemas/SigningKey'
      description: >-
        SigningKeyCollection is the result type for an array of SigningKey
        (default view)
      example:
        - ascii_armor: Ut est.
          created_at: Non perspiciatis cupiditate.
          id: Aperiam veritatis et omnis dolor quo.
          key_id: Quasi qui.
          key_name: Architecto ut reiciendis.
          updated_at: Omnis magnam unde corrupti natus.
          user: Voluptas et consequatur.
        - ascii_armor: Ut est.
          created_at: Non perspiciatis cupiditate.
          id: Aperiam veritatis et omnis dolor quo.
          key_id: Quasi qui.
          key_name: Architecto ut reiciendis.
          updated_at: Omnis magnam unde corrupti natus.
          user: Voluptas et consequatur.
        - ascii_armor: Ut est.
          created_at: Non perspiciatis cupiditate.
          id: Aperiam veritatis et omnis dolor quo.
          key_id: Quasi qui.
          key_name: Architecto ut reiciendis.
          updated_at: Omnis magnam unde corrupti natus.
          user: Voluptas et consequatur.
    UnifiedExecutionRequest:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 9nb
          minLength: 1
          maxLength: 128
        module_test:
          type: string
          description: The module test identifier
          example: Eum qui qui pariatur corrupti.
        org:
          type: string
          description: Org is the organisation identifier.
          example: kha
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Quasi molestiae aut.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Ut deserunt.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Enim quis voluptatem repellendus ea quasi libero.
        project:
          type: string
          description: Project is the project identifier.
          example: 5i
          minLength: 1
          maxLength: 128
        remote_execution_id:
          type: string
          description: The unique identifier for the remote execution
          example: Ducimus similique asperiores dolores esse.
        skip_adding_to_db:
          type: boolean
          description: Skip adding to database
          example: true
        webhook:
          $ref: '#/components/schemas/IaCMWebhookInfo'
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Laborum veniam facilis vitae.
      description: >-
        UnifiedExecutionRequest defines an individual execution of unified
        execution
      example:
        account: ji0
        module_test: Autem officia eius optio dignissimos labore.
        org: 9fp
        pipeline_execution_id: Rerum exercitationem est soluta saepe.
        pipeline_id: Dolor consequatur cupiditate veritatis velit commodi quaerat.
        pipeline_stage_id: Voluptatem alias.
        project: 3cd
        remote_execution_id: Quaerat molestias laudantium.
        skip_adding_to_db: false
        webhook:
          connector: Porro facere quod natus.
          link: Fuga accusamus.
          repo: Voluptas placeat nisi quisquam reprehenderit est.
          type: push
        workspace: Blanditiis est amet.
      required:
        - account
        - org
        - project
        - pipeline_execution_id
        - pipeline_stage_id
        - pipeline_id
    UnifiedExecutionRequest2:
      type: object
      properties:
        module_test:
          type: string
          description: The module test identifier
          example: Consequuntur eveniet ad eveniet quo qui.
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Aut deserunt.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Mollitia quo doloribus qui.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline stage
          example: Minima unde quis autem unde reprehenderit placeat.
        remote_execution_id:
          type: string
          description: The unique identifier for the remote execution
          example: Est accusamus voluptas id.
        skip_adding_to_db:
          type: boolean
          description: Skip adding to database
          example: true
        webhook:
          $ref: '#/components/schemas/IaCMWebhookInfo'
        workspace:
          type: string
          description: The unique identifier for the associated workspace
          example: Voluptates dolorem ipsa sit et consequatur dolorem.
      example:
        module_test: Possimus est ex labore quod vitae dolor.
        pipeline_execution_id: Labore suscipit ratione.
        pipeline_id: Accusantium qui aspernatur sed.
        pipeline_stage_id: Sit eos.
        remote_execution_id: Reiciendis quia distinctio sit sed.
        skip_adding_to_db: false
        webhook:
          connector: Illo debitis.
          link: Qui a.
          repo: Sint saepe.
          type: release
        workspace: Aperiam voluptas qui alias inventore quia.
      required:
        - pipeline_execution_id
        - pipeline_stage_id
        - pipeline_id
    UnifiedExecutionResponse:
      type: object
      properties:
        env_variables:
          type: object
          description: Map of environment variables
          example:
            Aspernatur odit quaerat qui non et porro.: Iure magni eaque.
          additionalProperties:
            type: string
            example: Sapiente rem dolor enim recusandae quis.
        outputs:
          type: object
          description: Map of output key-value pairs
          example:
            Est suscipit alias consequatur tenetur ratione facere.: Soluta beatae est eum voluptatem.
            Rerum dolore laborum.: Vel officiis.
          additionalProperties:
            type: string
            example: Cumque nam tempore atque a et in.
        steps:
          type: array
          items:
            $ref: '#/components/schemas/IACMUnifiedStepWrapper'
          description: List of execution steps
          example:
            - dynamic_fields:
                Placeat totam consequatur hic.: Suscipit sint dolorum odit.
                Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
                Quis nesciunt sunt possimus.: Error vel.
              id: Harum sint molestiae non reprehenderit consequatur.
              name: Aliquid omnis est nam.
              yaml: Distinctio eligendi.
            - dynamic_fields:
                Placeat totam consequatur hic.: Suscipit sint dolorum odit.
                Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
                Quis nesciunt sunt possimus.: Error vel.
              id: Harum sint molestiae non reprehenderit consequatur.
              name: Aliquid omnis est nam.
              yaml: Distinctio eligendi.
            - dynamic_fields:
                Placeat totam consequatur hic.: Suscipit sint dolorum odit.
                Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
                Quis nesciunt sunt possimus.: Error vel.
              id: Harum sint molestiae non reprehenderit consequatur.
              name: Aliquid omnis est nam.
              yaml: Distinctio eligendi.
      description: >-
        UnifiedExecutionResponse contains all data required for unified
        execution
      example:
        env_variables:
          Praesentium ipsa officia blanditiis esse.: Enim nisi ut distinctio nihil ratione.
        outputs:
          Iusto ipsam officia id doloremque beatae nostrum.: Mollitia optio voluptatum.
        steps:
          - dynamic_fields:
              Placeat totam consequatur hic.: Suscipit sint dolorum odit.
              Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
              Quis nesciunt sunt possimus.: Error vel.
            id: Harum sint molestiae non reprehenderit consequatur.
            name: Aliquid omnis est nam.
            yaml: Distinctio eligendi.
          - dynamic_fields:
              Placeat totam consequatur hic.: Suscipit sint dolorum odit.
              Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
              Quis nesciunt sunt possimus.: Error vel.
            id: Harum sint molestiae non reprehenderit consequatur.
            name: Aliquid omnis est nam.
            yaml: Distinctio eligendi.
          - dynamic_fields:
              Placeat totam consequatur hic.: Suscipit sint dolorum odit.
              Quis dolor magnam est rerum culpa.: Voluptatem recusandae ut.
              Quis nesciunt sunt possimus.: Error vel.
            id: Harum sint molestiae non reprehenderit consequatur.
            name: Aliquid omnis est nam.
            yaml: Distinctio eligendi.
      required:
        - outputs
        - env_variables
    UnlockWorkspaceRequest:
      type: object
      properties:
        created:
          type: string
          description: Time that the lock was taken.
          example: '2023-07-03T20:16:18.382839Z'
        id:
          type: string
          description: Unique ID for the lock. Generated by the terraform cli.
          example: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
          minLength: 1
        info:
          type: string
          description: Extra information to store with the lock.
          default: ''
          example: production workspace lock
        operation:
          type: string
          description: Terraform operation.
          example: OperationTypePlan
        path:
          type: string
          description: Path to the state file when applicable.
          default: ''
          example: >-
            /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version:
          type: string
          description: Terraform version.
          example: 1.0.0
        who:
          type: string
          description: The machine user who is performing the operation.
          default: ''
          example: user1
      example:
        created: '2023-07-03T20:16:18.382839Z'
        id: 1ac4b858-bf0b-8539-9d80-8c521f6423cf
        info: production workspace lock
        operation: OperationTypePlan
        path: >-
          /api/orgs/org1/projects/proj1/workspaces/production/data/fcdf0196-f5b3-49ab-87e3-ff102dfaf58c
        version: 1.0.0
        who: user1
      required:
        - id
        - operation
        - version
        - created
    UpdateApprovalRequest:
      type: object
      properties:
        actioned_by:
          type: string
          description: User that approved/rejected the step
          example: John Doe
        actioned_by_email:
          type: string
          description: Email of the user that approved/rejected the step
          example: john.doe@example.com
        status:
          type: string
          description: Status update to be performed upon the Approval step
          default: pending
          example: pending
          enum:
            - approved
            - rejected
            - pending
      example:
        actioned_by: John Doe
        actioned_by_email: john.doe@example.com
        status: approved
      required:
        - status
        - pipeline_execution_id
        - pipeline_stage_id
        - workspace_id
    UpdateExecutionRequest:
      type: object
      properties:
        audit:
          $ref: '#/components/schemas/Audit'
      example:
        audit:
          git_audit_data:
            hash: ha
            name: Voluptate est aut sit distinctio.
            repo_url: th
            type: branch, tag
    UpdateInventoryGroupRequest:
      type: object
      properties:
        configuration:
          $ref: '#/components/schemas/DynamicConfig'
        connector_type:
          type: string
          description: Connector Type is the type of connector to use.
          example: workspace
          enum:
            - workspace
            - aws
            - gcp
            - azure
        dynamic_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of dynamic variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of environment variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
        hosts:
          type: array
          items:
            type: string
            example: Quod ad at.
          description: List of host addresses that belong to the group
          example:
            - Qui reiciendis praesentium hic qui.
            - Labore eum sint.
            - Sint autem suscipit repellat.
            - Saepe laudantium.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: List of variables that belong to the group
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
      example:
        configuration:
          host_address_attribute: <+attributes.public_dns>
          resource_type: aws_instance
          selectors:
            - attribute: <+attributes.region>
              operator: equals
              value: europe
            - attribute: <+attributes.region>
              operator: equals
              value: europe
        connector_type: workspace
        dynamic_vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
        env_vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
        hosts:
          - Quod voluptates non.
          - Corrupti pariatur minus et et nostrum rerum.
        vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
    UpdateInventoryHostRequest:
      type: object
      properties:
        groups:
          type: array
          items:
            type: string
            example: >-
              Quidem voluptatem architecto nobis consequuntur consequuntur
              veniam.
          description: Groups is the list of groups the host belongs to.
          example:
            - Autem blanditiis ea reiciendis nemo sunt.
            - Ipsam est vel dolor.
            - Rerum officia voluptatem qui ea.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/AnsibleVariable'
          description: Vars is the variables associated with the host.
          example:
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
            - file_name: Ab quasi tenetur.
              key: '0'
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Ducimus et fugit assumenda.
              value_type: Maxime aut vitae.
      example:
        groups:
          - Est ut fuga odit labore deserunt.
          - Quam a et eveniet.
          - Iure maxime vero amet repellat.
        vars:
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
          - file_name: Ab quasi tenetur.
            key: '0'
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Ducimus et fugit assumenda.
            value_type: Maxime aut vitae.
    UpdateInventoryRequest:
      type: object
      properties:
        data:
          type: string
          description: The data representing the inventory
          example: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        name:
          type: string
          description: Name is the human readable name
          example: test inventory
          minLength: 1
          maxLength: 1024
      example:
        data: '{ "hosts": { "host1.example.com": null, "host2.example.com": null }}'
        name: test inventory
      required:
        - name
        - type
        - data
    UpdateInventoryVarRequest:
      type: object
      properties:
        file_name:
          type: string
          description: Filename is where to store the value of the secret.
          example: Dignissimos alias nisi quam perspiciatis eos et.
        key:
          type: string
          description: Key is the identifier for the secret.
          example: '6'
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        value:
          type: string
          description: Value is the value of the secret.
          example: Qui adipisci minima eum optio hic.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: Eum repellendus accusamus soluta nobis.
      example:
        file_name: Quam provident qui cumque repellendus.
        key: 62q
        value: Reprehenderit vel.
        value_type: Voluptas ullam ut.
      required:
        - key
        - value
        - value_type
    UpdateInventoryVarsRequest:
      type: object
      properties:
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
      example:
        env_vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
        vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
      required:
        - vars
    UpdateModuleRequest:
      type: object
      properties:
        description:
          type: string
          description: description of the module
          example: Impedit ipsam qui quod expedita consectetur.
        git_tag_style:
          type: string
          description: Git Tag Style
          example: Non consectetur illum.
        name:
          type: string
          description: module name
          example: d
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: org that owns the module
          example: n9i
          minLength: 1
          maxLength: 1024
        project:
          type: string
          description: project that owns the module
          example: 4o
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Quos unde.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Voluptas sed hic provident laborum non amet.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        system:
          type: string
          description: system name
          example: r9
          pattern: ^[a-z]+$
          minLength: 1
          maxLength: 128
        tags:
          type: string
          description: tags defining the module
          example: Rerum in iste.
      example:
        description: Et voluptas quae expedita et est ipsa.
        git_tag_style: Debitis nulla ad qui.
        name: dl
        org: a
        project: fyc
        repository: Sint dolor repudiandae cupiditate enim vero.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Soluta error est veritatis possimus voluptas.
        repository_path: ''
        system: e53
        tags: Necessitatibus aliquam.
      required:
        - name
        - system
    UpdatePlaybookRequest:
      type: object
      properties:
        env_vars:
          type: object
          description: The environment vars in the playbook
          example:
            5ba032d2-9942-4152-8fe1-c656da9dd4a2:
              key: MY_PLAYBOOK_ENV_VAR
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
        name:
          type: string
          description: Name is the human readable name
          example: test playbook
          minLength: 1
          maxLength: 1024
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: my-repo
        repository_branch:
          type: string
          description: Repository Branch in which the playbook should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the playbook should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this playbook.
          example: my-connector
        repository_path:
          type: string
          description: Repository Path is the path in which the playbook resides.
          default: ''
          example: playbooks/
        vars:
          type: object
          description: The vars in the playbook
          example:
            ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
              key: playbook_var
              value: test_value
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/AnsibleVariable'
      example:
        env_vars:
          5ba032d2-9942-4152-8fe1-c656da9dd4a2:
            key: MY_PLAYBOOK_ENV_VAR
            value: test_value
            value_type: string
        name: test playbook
        repository: my-repo
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: my-connector
        repository_path: playbooks/
        vars:
          ce18dadb-9aba-4cf0-be4a-9dcd8895e0f4:
            key: playbook_var
            value: test_value
            value_type: string
      required:
        - name
        - repository_path
    UpdatePlaybookVarsRequest:
      type: object
      properties:
        env_vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
        vars:
          type: array
          items:
            $ref: '#/components/schemas/HarnessIacmInventoryVarCreate'
          example:
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
            - file_name: Fugiat omnis nesciunt.
              key: wo
              uuid: 123e4567-e89b-12d3-a456-426655440000
              value: Repudiandae iusto non dolores pariatur officia.
              value_type: Adipisci quam ut debitis eos dolorem.
              var_type: Non dolorem et.
      example:
        env_vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
        vars:
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
          - file_name: Fugiat omnis nesciunt.
            key: wo
            uuid: 123e4567-e89b-12d3-a456-426655440000
            value: Repudiandae iusto non dolores pariatur officia.
            value_type: Adipisci quam ut debitis eos dolorem.
            var_type: Non dolorem et.
      required:
        - vars
    UpdateProviderVersionRequestBody:
      type: object
      properties:
        gpg_key_id:
          type: string
          description: GPG key ID
          example: '1234567890'
        protocol:
          type: array
          items:
            type: string
            example: Harum illum ratione reiciendis qui.
          description: Supported Terraform protocol versions
          example:
            - '4.0'
      example:
        gpg_key_id: '1234567890'
        protocol:
          - '4.0'
      required:
        - protocol
        - gpg_key_id
    UpdateResourcesRequest:
      type: object
      properties:
        resources:
          type: array
          items:
            $ref: '#/components/schemas/ResourceUpdate'
          example:
            - attributes: Quod voluptate est officia.
              mode: Id deleniti saepe maxime tempora.
              module: Qui possimus ea.
              name: Atque et velit non eos.
              path_id: Quas voluptatem.
              provider: Aut autem.
              sensitive_attribute_paths:
                - Qui ut adipisci deleniti dolorum.
                - Mollitia hic.
              type: Odio reprehenderit quia.
            - attributes: Quod voluptate est officia.
              mode: Id deleniti saepe maxime tempora.
              module: Qui possimus ea.
              name: Atque et velit non eos.
              path_id: Quas voluptatem.
              provider: Aut autem.
              sensitive_attribute_paths:
                - Qui ut adipisci deleniti dolorum.
                - Mollitia hic.
              type: Odio reprehenderit quia.
            - attributes: Quod voluptate est officia.
              mode: Id deleniti saepe maxime tempora.
              module: Qui possimus ea.
              name: Atque et velit non eos.
              path_id: Quas voluptatem.
              provider: Aut autem.
              sensitive_attribute_paths:
                - Qui ut adipisci deleniti dolorum.
                - Mollitia hic.
              type: Odio reprehenderit quia.
      example:
        resources:
          - attributes: Quod voluptate est officia.
            mode: Id deleniti saepe maxime tempora.
            module: Qui possimus ea.
            name: Atque et velit non eos.
            path_id: Quas voluptatem.
            provider: Aut autem.
            sensitive_attribute_paths:
              - Qui ut adipisci deleniti dolorum.
              - Mollitia hic.
            type: Odio reprehenderit quia.
          - attributes: Quod voluptate est officia.
            mode: Id deleniti saepe maxime tempora.
            module: Qui possimus ea.
            name: Atque et velit non eos.
            path_id: Quas voluptatem.
            provider: Aut autem.
            sensitive_attribute_paths:
              - Qui ut adipisci deleniti dolorum.
              - Mollitia hic.
            type: Odio reprehenderit quia.
          - attributes: Quod voluptate est officia.
            mode: Id deleniti saepe maxime tempora.
            module: Qui possimus ea.
            name: Atque et velit non eos.
            path_id: Quas voluptatem.
            provider: Aut autem.
            sensitive_attribute_paths:
              - Qui ut adipisci deleniti dolorum.
              - Mollitia hic.
            type: Odio reprehenderit quia.
          - attributes: Quod voluptate est officia.
            mode: Id deleniti saepe maxime tempora.
            module: Qui possimus ea.
            name: Atque et velit non eos.
            path_id: Quas voluptatem.
            provider: Aut autem.
            sensitive_attribute_paths:
              - Qui ut adipisci deleniti dolorum.
              - Mollitia hic.
            type: Odio reprehenderit quia.
      required:
        - resources
    UpdateResourcesResponse:
      type: object
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/ResourceUpdateResult'
          example:
            - error: Beatae exercitationem recusandae aspernatur fuga id.
              mode: Quae repellat sequi nulla architecto eum.
              module: Illo quae inventore explicabo et.
              name: Et debitis.
              provider: Itaque quas est rerum.
              status: failed
              type: Ut et ea vero repudiandae.
            - error: Beatae exercitationem recusandae aspernatur fuga id.
              mode: Quae repellat sequi nulla architecto eum.
              module: Illo quae inventore explicabo et.
              name: Et debitis.
              provider: Itaque quas est rerum.
              status: failed
              type: Ut et ea vero repudiandae.
        summary:
          $ref: '#/components/schemas/ResourceUpdateSummary'
      example:
        results:
          - error: Beatae exercitationem recusandae aspernatur fuga id.
            mode: Quae repellat sequi nulla architecto eum.
            module: Illo quae inventore explicabo et.
            name: Et debitis.
            provider: Itaque quas est rerum.
            status: failed
            type: Ut et ea vero repudiandae.
          - error: Beatae exercitationem recusandae aspernatur fuga id.
            mode: Quae repellat sequi nulla architecto eum.
            module: Illo quae inventore explicabo et.
            name: Et debitis.
            provider: Itaque quas est rerum.
            status: failed
            type: Ut et ea vero repudiandae.
          - error: Beatae exercitationem recusandae aspernatur fuga id.
            mode: Quae repellat sequi nulla architecto eum.
            module: Illo quae inventore explicabo et.
            name: Et debitis.
            provider: Itaque quas est rerum.
            status: failed
            type: Ut et ea vero repudiandae.
        summary:
          failed: 1486761336074332700
          skipped: 8788134602931658000
          total: 965565015304788000
          updated: 8283236234346798000
      required:
        - results
        - summary
    UpdateTestingRequest:
      type: object
      properties:
        org:
          type: string
          description: Org is the organisation identifier.
          example: ij
          minLength: 1
          maxLength: 128
        pipeline_id:
          type: array
          items:
            type: string
            example: Dolor eius nulla placeat.
          description: >-
            pipelines to create the webhooks to trigger the executions for
            testing
          example:
            - Rerum qui eaque incidunt quis.
            - Repellat laborum perspiciatis eveniet reprehenderit rem molestias.
            - Id eaque expedita deserunt.
            - Consequatur aliquam sit.
        project:
          type: string
          description: Project is the project identifier.
          example: q6
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: provider connector
          example: Maiores sit accusantium.
        provisioner_type:
          type: string
          description: provisioner type
          example: Labore voluptatibus nesciunt ut pariatur sed.
        provisioner_version:
          type: string
          description: provisioner version
          example: Perferendis doloribus vitae quidem unde culpa qui.
        release_pipeline:
          type: string
          description: pipeline to create the webhooks for releases
          example: Esse quos ea illum totam veniam soluta.
      example:
        org: m
        pipeline_id:
          - Vitae ad quo.
          - Doloremque eum qui consequatur.
          - Odio ea et.
        project: tn
        provider_connector: Harum ut perferendis cumque dicta.
        provisioner_type: Autem nam sint.
        provisioner_version: Dolor vero nobis aut.
        release_pipeline: Ducimus qui iste aliquam asperiores.
      required:
        - org
        - project
        - provider_connector
        - provisioner_type
        - provisioner_version
    UpdateVariableSetRequestAccountScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Et quis.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 2295779281668002300
          format: int64
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Et optio ad provident rerum minus doloribus.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Qui odit iusto maiores sit iure.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Reiciendis eligendi dolorum perferendis esse.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 2919114290440194600
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Reiciendis in error veniam officia.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - name
    UpdateVariableSetRequestOrgScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Iure eveniet adipisci at labore est.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Officiis iusto harum aliquam et sint.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Totam enim neque.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 6050958273429024000
          format: int64
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Non pariatur.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Saepe consequatur quidem blanditiis blanditiis ipsum.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Minima incidunt exercitationem sint.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Tempore dolores ipsam.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 4102238047523283500
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Et mollitia amet voluptatum non qui consequatur.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Vero repudiandae sed corporis nam nam eos.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Voluptates accusantium animi ea.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - name
    UpdateVariableSetRequestProjScope:
      type: object
      properties:
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
            - connector_ref: u4
              created: 1627590400
              id: 7962156907835833000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Repellendus ad.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3753776920289072600
          format: int64
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 5786881645804242000
              repository: Ut molestias ratione est asperiores.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Occaecati aut repellendus deserunt ullam.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Dignissimos recusandae accusantium non.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
            Pariatur earum.:
              created: 1627590400
              id: 1736065500175353900
              key: '72'
              updated: 1627686800
              value: Molestias est non est sit quas.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      example:
        connectors:
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
          - connector_ref: u4
            created: 1627590400
            id: 7962156907835833000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Dignissimos ducimus veritatis ab expedita ipsa iste.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Eos consequatur aperiam aut.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Nobis deleniti alias ut eum magnam quo.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        id: 795519610044793200
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 5786881645804242000
            repository: Ut molestias ratione est asperiores.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Occaecati aut repellendus deserunt ullam.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Assumenda nobis odit animi optio ab.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Modi voluptas eos officiis.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
          Perspiciatis cum explicabo iste quaerat cupiditate.:
            created: 1627590400
            id: 1736065500175353900
            key: '72'
            updated: 1627686800
            value: Molestias est non est sit quas.
            value_type: secret
        updated: 1627686800
      required:
        - name
    UpdateWorkspaceRequest:
      type: object
      properties:
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.16859163
          format: float
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Ea illum odio.:
              project_pipeline: Sint natus sint quos enim magni.
              workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Eum quo quia voluptatem iure.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
            Eveniet commodi qui sed sit.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
            Nihil nemo.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Dolores atque eaque voluptate amet asperiores.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
            - connector_ref: chx
              created: 1627590400
              id: 7929633474489630000
              terragrunt_provider: false
              type: aws
              updated: 1627686800
              workspace_id: 8974035677896112000
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Nemo delectus suscipit facilis iusto.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Natus aliquid deserunt explicabo voluptatem ex.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Cupiditate sunt ipsum veritatis totam.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Quasi commodi.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Repellendus aliquid.
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Nihil dolor sequi praesentium.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Explicabo pariatur maxime omnis qui nisi.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Voluptas est placeat.:
              key: ppn
              value: Expedita sed eos voluptatibus doloremque.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: true
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Occaecati eaque ut atque.
        variable_sets:
          type: array
          items:
            type: string
            example: Porro amet fugit nostrum est modi.
          description: Attached Variable Sets references
          example:
            - Quis sit omnis maiores autem.
            - Sapiente rerum tenetur vel repellat pariatur quia.
      example:
        budget: 0.3336955
        cost_estimation_enabled: true
        default_pipelines:
          Praesentium doloribus facilis commodi quos.:
            project_pipeline: Sint natus sint quos enim magni.
            workspace_pipeline: Maiores quibusdam aliquid molestias quia recusandae aut.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Ad provident minima quibusdam.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
          Facilis optio dolores dicta itaque.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
          Omnis nisi culpa ex perferendis omnis a.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
        name: resource name
        provider_connector: In voluptatem.
        provider_connectors:
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
          - connector_ref: chx
            created: 1627590400
            id: 7929633474489630000
            terragrunt_provider: false
            type: aws
            updated: 1627686800
            workspace_id: 8974035677896112000
        provisioner: Enim qui.
        provisioner_version: Animi sit odio quas excepturi esse.
        prune_sensitive_data: true
        repository: Deserunt ducimus repudiandae excepturi.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Occaecati accusamus atque magni repudiandae rerum.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: true
        sparse_checkout: Consequatur consequatur vel quae fugiat molestiae.
        tags:
          foo: bar
        terraform_variable_files:
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Nihil dolor sequi praesentium.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Explicabo pariatur maxime omnis qui nisi.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Doloribus est minima atque.:
            key: ppn
            value: Expedita sed eos voluptatibus doloremque.
            value_type: secret
        terragrunt_provider: true
        terragrunt_version: Id necessitatibus aliquam assumenda expedita.
        variable_sets:
          - Expedita quis harum eius eos eveniet omnis.
          - Perspiciatis beatae quia ab laborum eos maxime.
          - Aperiam dolores.
      required:
        - terraform_variables
        - environment_variables
        - name
        - provider_connector
        - provisioner
    UpdateWorkspaceResponse:
      type: object
      properties:
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
      example:
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
    UpdateWorkspaceTemplateRequest:
      type: object
      properties:
        version:
          type: string
          description: New template version
          example: v
          minLength: 1
          maxLength: 64
      example:
        version: xn6
      required:
        - version
    UpdateWorkspaceTemplateResponse:
      type: object
      properties:
        account:
          type: string
          description: Account identifier.
          example: p
          minLength: 1
          maxLength: 128
        created_at:
          type: integer
          description: Timestamp when the workspace-template association was created.
          example: 1627590400
          format: int64
        org:
          type: string
          description: Organization identifier.
          example: a
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project identifier.
          example: e
          minLength: 1
          maxLength: 128
        template_id:
          type: string
          description: Template identifier.
          example: jx
          minLength: 1
          maxLength: 128
        updated_at:
          type: integer
          description: Timestamp when the workspace-template association was last updated.
          example: 1627686800
          format: int64
        version:
          type: string
          description: Template version associated with the workspace.
          example: 4v
          minLength: 1
          maxLength: 32
        workspace_id:
          type: string
          description: Workspace identifier.
          example: '726'
          minLength: 1
          maxLength: 128
      example:
        account: ld
        created_at: 1627590400
        org: h6
        project: r
        template_id: gl0
        updated_at: 1627686800
        version: umm
        workspace_id: y8
      required:
        - workspace_id
        - template_id
        - created_at
        - updated_at
        - account
        - project
        - org
    UpdateWorkspaceVariableRequest:
      type: object
      properties:
        value:
          type: string
          description: Value is the value of the secret.
          example: Sint qui consequatur illum.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: secret
          enum:
            - string
            - secret
      example:
        value: Sit sit beatae et aperiam.
        value_type: string
      required:
        - value
        - value_type
    UpdateWorkspaceVariableResponse:
      type: object
      properties:
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
      example:
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
    UploadRemoteExecutionResponse:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '5'
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 2879446275164161500
          format: int64
        custom_arguments:
          type: object
          description: The arguments supplied to the plan.
          example:
            Consequatur optio officia est.:
              - Facilis ipsa.
              - Laborum nesciunt consequuntur recusandae dolores.
              - Iusto provident et est tenetur commodi sint.
              - Aut animi iste repellat quibusdam est reiciendis.
            Sequi eaque commodi ad.:
              - Distinctio ut recusandae voluptatem maxime ut autem.
              - Facilis quod et perferendis minima.
              - Nostrum incidunt deleniti ut eum quaerat.
            Temporibus nihil.:
              - Quo officia consequuntur eveniet.
              - Quia voluptas iste quia quisquam.
          additionalProperties:
            type: array
            items:
              type: string
              example: A quibusdam voluptas vitae consequatur quaerat rem.
            example:
              - Nihil sit.
              - Beatae quas voluptas sint repellendus vel.
              - Doloremque error aliquid illo quis.
        executed:
          type: boolean
          description: >-
            The boolean value indicating if the remote execution has been
            executed.
          example: false
        id:
          type: string
          description: The ID of the remote execution.
          example: accb6b25-7ab8-4d22-a6cc-41c3884cec5e
          format: uuid
        org:
          type: string
          description: Org is the organisation identifier.
          example: ers
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: >-
            The pipeline execution ID of the pipeline executing the remote
            execution
          example: Sint dolorem distinctio aut blanditiis.
        pipeline_execution_url:
          type: string
          description: >-
            The pipeline execution URL of the pipeline executing the remote
            execution
          example: Et suscipit autem sapiente.
        project:
          type: string
          description: Project is the project identifier.
          example: a4
          minLength: 1
          maxLength: 128
        sha256_checksum:
          type: string
          description: >-
            The checksum of the patch file of changes that the remote execution
            will run against.
          example: Impedit qui est quo.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 808705344375404400
          format: int64
        workspace:
          type: string
          description: The workspace associated with the remote execution.
          example: Quo eius.
      example:
        account: d
        created: 7881759442045114000
        custom_arguments:
          Aut possimus et.:
            - Qui molestias.
            - Libero et rem vel amet maiores quas.
            - A commodi et cum dicta.
            - Odit quo ipsum.
          Autem beatae.:
            - Iste voluptas consequatur nemo.
            - Corporis harum sapiente est autem unde fugiat.
            - Maxime est perspiciatis facilis id.
          Voluptatum veniam est.:
            - Laboriosam repellat sit occaecati.
            - Veritatis quos consequatur mollitia quaerat ab atque.
            - Sed accusamus.
        executed: false
        id: cee769da-410b-4a2f-b5df-f59f12c98147
        org: '1'
        pipeline_execution_id: Consectetur nemo officiis natus.
        pipeline_execution_url: Incidunt cumque optio esse inventore voluptatum inventore.
        project: k
        sha256_checksum: Rerum modi repellat aliquid accusamus praesentium.
        updated: 8542304875492756000
        workspace: Omnis quae ut magni fugit at.
      required:
        - account
        - org
        - project
        - id
        - workspace
        - pipeline_execution_id
        - pipeline_execution_url
        - created
        - updated
        - executed
        - sha256_checksum
    UploadSigningKeyRequest:
      type: object
      properties:
        ascii_armor:
          type: string
          description: ASCII-armored GPG public key
          example: Dignissimos laudantium enim amet dignissimos voluptas.
        key_id:
          type: string
          description: GPG key ID
          example: ABCD1234
        key_name:
          type: string
          description: GPG key name
          example: harness
        user:
          type: string
          description: User who uploaded the key
          example: Odio consectetur aut at illo distinctio dolor.
      example:
        ascii_armor: Vel perspiciatis.
        key_id: ABCD1234
        key_name: harness
        user: Et odio ex ducimus necessitatibus sed libero.
      required:
        - key_id
        - key_name
        - ascii_armor
        - user
    UpsertDefaultPipelineRequest:
      type: object
      properties:
        operation:
          type: string
          description: The default pipeline is associated with this operation
          example: plan
          enum:
            - plan
            - apply
            - destroy
            - drift
        pipeline:
          type: string
          description: The default pipeline associated with the provisioner operation
          example: testpipeline
        provisioner:
          type: string
          description: The default pipeline is associated with this provisioner
          example: opentofu
          enum:
            - terraform
            - opentofu
            - terragrunt
        updated:
          type: integer
          description: Time the default pipeline was last updated
          example: 1636669297674
          format: int64
        workspace:
          type: string
          description: The default pipeline is associated with this workspace if specified
          default: ''
          example: plan
      example:
        operation: plan
        pipeline: testpipeline
        provisioner: opentofu
        updated: 1636669297674
        workspace: plan
      required:
        - provisioner
        - operation
        - pipeline
        - updated
    UsageData:
      type: object
      properties:
        count:
          type: integer
          description: Metric value
          example: 7127443073042089000
          format: int64
      example:
        count: 7665443600158673000
      required:
        - count
    UsageResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/UsageData'
        status:
          type: string
          example: Corporis reprehenderit.
      example:
        data:
          count: 634960787856289300
        status: Ab quidem ex.
      required:
        - status
        - data
    ValueChange:
      type: object
      properties:
        change:
          type: string
          description: Change made to this resource.
          example: added
          enum:
            - added
            - changed
            - deleted
            - unchanged
        drift:
          type: boolean
          description: Indicates whether this attribute is experiencing drift
          example: true
        new:
          type: string
          description: Updated value
          example: new value
        old:
          type: string
          description: Previous value.
          example: old value
        sensitive:
          type: boolean
          description: Indicates whether this value is sensitive
          example: true
      example:
        change: added
        drift: true
        new: new value
        old: old value
        sensitive: true
      required:
        - change
        - drift
        - sensitive
    IaCMVariable:
      type: object
      properties:
        key:
          type: string
          description: Key is the identifier for the secret.
          example: gbp
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        value:
          type: string
          description: Value is the value of the secret.
          example: Veniam doloribus rerum pariatur ut soluta eum.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: secret
          enum:
            - string
            - secret
      description: >-
        Variable is the representation for a single variable associated with a
        workspace.
      example:
        key: uei
        value: A quidem deserunt sequi ipsa.
        value_type: string
      required:
        - key
        - value
        - value_type
        - kind
    VariableFilePermissions:
      type: object
      properties:
        canDelete:
          type: boolean
          example: true
        canEdit:
          type: boolean
          example: true
      example:
        canDelete: false
        canEdit: false
      required:
        - canDelete
        - canEdit
    VariableFileWithPermissions:
      type: object
      properties:
        associatedTemplate:
          type: string
          example: Eos omnis commodi ipsum dolor magnam.
        associatedVariableSet:
          type: string
          example: Aut possimus officiis.
        inUse:
          type: boolean
          description: >-
            Indicates if this variable file is the one actively used in the
            workspace
          example: true
        isInWorkspace:
          type: boolean
          example: true
        isLocked:
          type: boolean
          example: false
        permissions:
          $ref: '#/components/schemas/VariableFilePermissions'
        repository:
          type: string
          example: Aspernatur dolorum ut.
        repository_branch:
          type: string
          example: Et et unde sapiente accusamus.
        repository_commit:
          type: string
          example: Et dolorum aliquid.
        repository_connector:
          type: string
          example: Vitae et id consequuntur voluptas quae.
        repository_path:
          type: string
          example: Qui blanditiis sed esse ea.
        repository_sha:
          type: string
          example: Ex eum quos.
        source:
          type: string
          example: template
          enum:
            - workspace
            - template
            - variableSet
        uuid:
          type: string
          description: Unique identifier for this file
          example: Quibusdam cumque porro debitis non reiciendis autem.
      example:
        associatedTemplate: Ex nulla accusamus atque sit.
        associatedVariableSet: Qui sint aut atque magni sunt.
        inUse: false
        isInWorkspace: false
        isLocked: true
        permissions:
          canDelete: true
          canEdit: false
        repository: Dicta in eum expedita perferendis labore.
        repository_branch: Ea est quia iusto occaecati tempora id.
        repository_commit: Ut reiciendis neque error.
        repository_connector: Non aut aut.
        repository_path: Magni dicta vero eaque et placeat dicta.
        repository_sha: Modi quaerat.
        source: variableSet
        uuid: Quia esse ut perferendis qui.
      required:
        - uuid
        - repository
        - source
        - isInWorkspace
        - permissions
        - inUse
        - repository_path
        - isLocked
    VariableMetadata:
      type: object
      properties:
        variable_default:
          type: string
          description: Variable default value
          example: Qui laudantium.
        variable_description:
          type: string
          description: Variable description
          example: Beatae rerum soluta in porro laboriosam in.
        variable_name:
          type: string
          description: Variable name
          example: Pariatur incidunt quaerat et.
        variable_required:
          type: boolean
          description: Is variable required
          example: true
        variable_sensitive:
          type: boolean
          description: Is variable sensitive
          example: false
        variable_type:
          type: string
          description: Variable type
          example: Ut facere consequuntur aliquam natus sed.
      example:
        variable_default: Aspernatur iusto.
        variable_description: Atque et quis explicabo est.
        variable_name: Qui facilis et hic iste.
        variable_required: false
        variable_sensitive: false
        variable_type: Ut dolor.
    VariablePermissions:
      type: object
      properties:
        canDelete:
          type: boolean
          example: false
        canEditKey:
          type: boolean
          example: false
        canEditValue:
          type: boolean
          example: false
        canEditValueType:
          type: boolean
          example: true
      example:
        canDelete: true
        canEditKey: false
        canEditValue: true
        canEditValueType: false
      required:
        - canDelete
        - canEditKey
        - canEditValue
        - canEditValueType
    VariableResource:
      type: object
      properties:
        created:
          type: integer
          example: 1551003921790524400
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: 4tf
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          example: 1254527292122960100
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Velit voluptatum.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: string
          enum:
            - string
            - secret
      description: >-
        Variable is the representation for a single variable associated with a
        workspace.
      example:
        created: 6202952310115968000
        key: t
        updated: 6559322267867561000
        value: Sapiente ab cum eum consequuntur dolorem fugit.
        value_type: string
      required:
        - key
        - value
        - value_type
        - kind
        - created
        - updated
    VariableSetAccScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: cg
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Expedita neque libero sapiente tempore accusantium et.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Inventore est repellendus omnis ut recusandae.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Omnis exercitationem dolores blanditiis ex et.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 2031536093527673300
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: rha
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Ipsa mollitia consequatur.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Quia ducimus sit alias dignissimos optio.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Create VariableSet at account level.
      example:
        account: lh1
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Quaerat deserunt nulla libero inventore.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 6905574614295173000
        identifier: '9'
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Dolorum facere velit labore.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Minima ea.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Repellendus rerum.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - identifier
        - name
    VariableSetConnector:
      type: object
      properties:
        connector_ref:
          type: string
          description: Connector reference in harness platform.
          example: 9mp
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        id:
          type: integer
          description: ID PK for internal uses
          example: 7850890946877197000
          format: int64
        type:
          type: string
          description: Type indecates the connector type.
          example: gcp
          enum:
            - aws
            - azure
            - gcp
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Variable Set provider connector
      example:
        connector_ref: '8'
        created: 1627590400
        id: 3362874388130002400
        type: azure
        updated: 1627686800
      required:
        - connector_ref
        - type
    VariableSetOrgScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 3y
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Et sunt et.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Facere consequatur repellat.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Optio aut saepe harum qui vero.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 6053337519957406000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: ae
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: 'on'
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Tempore nemo veniam esse veritatis.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Create VariableSet at org level.
      example:
        account: '9'
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Dignissimos a eligendi.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Natus iste fugit quasi in sequi eum.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Sapiente repudiandae voluptates aut magni voluptates.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 3990138701123453400
        identifier: rm
        name: resource name
        org: a
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Qui dolores.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - org
        - identifier
        - name
    VariableSetProjScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 3wl
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Facere rerum rem et accusamus maiores.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 2701067529967836700
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: '2'
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: a
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: jb2
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Quo necessitatibus.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Veritatis nobis nemo id quaerat.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Create VariableSet at project level.
      example:
        account: f
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Asperiores velit quae.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Voluptatem et.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 6237523679545484000
        identifier: wlc
        name: resource name
        org: o90
        project: uh
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Est soluta veniam quasi.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Unde amet ea quasi eos.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Veritatis est omnis aut libero qui sint.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - org
        - project
        - identifier
        - name
    VariableSetResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmVariableSet'
      example:
        - account: v
          connectors:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
          created: 1627590400
          description: this is a more detailed explanation of the resource.
          env_vars_count: 3495156499201020400
          environment_variables:
            Assumenda non minima.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Sunt omnis deserunt error nobis in.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          id: 6831056336778097000
          identifier: kf
          name: resource name
          org: 18v
          project: k
          terraform_variable_files:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
          terraform_variables:
            Odio ea dolores perferendis eos esse ut.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          tf_vars_count: 7273079195395788000
          updated: 1627686800
          var_files_count: 1842691425972299300
        - account: v
          connectors:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
          created: 1627590400
          description: this is a more detailed explanation of the resource.
          env_vars_count: 3495156499201020400
          environment_variables:
            Assumenda non minima.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Sunt omnis deserunt error nobis in.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          id: 6831056336778097000
          identifier: kf
          name: resource name
          org: 18v
          project: k
          terraform_variable_files:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
          terraform_variables:
            Odio ea dolores perferendis eos esse ut.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          tf_vars_count: 7273079195395788000
          updated: 1627686800
          var_files_count: 1842691425972299300
    VariableSetUpdateAccScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: '89'
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Corporis accusantium ratione saepe.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Itaque eius.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Sed eligendi autem quo.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 1795460498856480300
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: 4uv
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Ad qui magnam dicta iste cupiditate.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Aut sed quaerat temporibus.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Provident impedit maiores distinctio quaerat a laboriosam.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Update VariableSet at account level.
      example:
        account: '1'
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Nihil rerum.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 8332701817619707000
        identifier: '5'
        name: resource name
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Dolores voluptas explicabo rerum accusantium asperiores.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Est ut.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Saepe ea eius reiciendis.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - identifier
        - name
    VariableSetUpdateOrgScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: p6
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Sed pariatur.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 5698827450748626000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: ds
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: jb
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Dolorem sunt molestiae.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Update VariableSet at org level.
      example:
        account: f
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Ipsam labore qui omnis eos.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Maxime eius ut.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 1612290962994622000
        identifier: '1'
        name: resource name
        org: '7'
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Ea eum officia aperiam.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Sint numquam ex voluptas enim.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - org
        - identifier
        - name
    VariableSetUpdateProjScope:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 7e
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
            - connector_ref: 2bx
              created: 1627590400
              id: 740081176343001300
              type: gcp
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Aperiam perferendis nihil ut est quis ut.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Et quo temporibus id repellat.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Quis repellat et consequuntur non.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        id:
          type: integer
          description: ID PK for internal uses
          example: 3750159260830129000
          format: int64
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: f
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: bhr
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: bzr
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 3061502594466213000
              repository: Vel nam et.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Officiis praesentium et distinctio magni voluptas magni.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Eos provident.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
            Sed quia.:
              created: 1627590400
              id: 7766730759644117000
              key: lzd
              updated: 1627686800
              value: Earum et qui exercitationem accusantium porro animi.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Update VariableSet at project level.
      example:
        account: yv
        connectors:
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
          - connector_ref: 2bx
            created: 1627590400
            id: 740081176343001300
            type: gcp
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Est ut cupiditate magnam cum.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Non dolorum dolores.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        id: 7921377197500801000
        identifier: q2q
        name: resource name
        org: 7r1
        project: v
        terraform_variable_files:
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 3061502594466213000
            repository: Vel nam et.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Officiis praesentium et distinctio magni voluptas magni.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Perspiciatis veritatis totam deleniti.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
          Totam iste quia corporis qui sit.:
            created: 1627590400
            id: 7766730759644117000
            key: lzd
            updated: 1627686800
            value: Earum et qui exercitationem accusantium porro animi.
            value_type: secret
        updated: 1627686800
      required:
        - account
        - org
        - project
        - identifier
        - name
    VariableSetVar:
      type: object
      properties:
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        id:
          type: integer
          description: ID PK for internal uses
          example: 3281892375194475000
          format: int64
        key:
          type: string
          description: Key is the identifier for the secret.
          example: 7o7
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
        value:
          type: string
          description: Value is the value of the secret.
          example: Dolores blanditiis ut explicabo eius qui autem.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a reference to an item in the secret store
          example: secret
          enum:
            - string
            - secret
      description: >-
        Variable is the representation for a single variable associated with a
        Variable Set.
      example:
        created: 1627590400
        id: 4138430118791174700
        key: f
        updated: 1627686800
        value: Iste blanditiis repellendus sapiente.
        value_type: secret
      required:
        - key
        - value
        - value_type
    VariableSetVarFile:
      type: object
      properties:
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        id:
          type: integer
          description: ID PK for internal uses
          example: 6974875797567463000
          format: int64
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Distinctio aut non cupiditate sit molestiae laboriosam.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Recusandae voluptas.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: >-
        VariableSetVarFile defines a variable file that lives in another
        repository than the workspace files.
      example:
        created: 1627590400
        id: 8120236605482704000
        repository: Quis ipsa dolorum nulla non.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Sed nulla dolorum quia eligendi odio.
        repository_path: ''
        repository_sha: abc10ed
        updated: 1627686800
      required:
        - repository
    VariableSetsCreateVariableSetAccountLevelResponseBody:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 5lq
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Id maxime.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Officia ratione praesentium eligendi.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Sunt harum similique nobis fugiat eveniet.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: j
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: yd
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: jm
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Ab omnis doloribus et.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Corrupti est voluptates dolorem.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Create-Variable-Set-Account-LevelResponseBody result type (default view)
      example:
        account: uf
        connectors:
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Aliquam laborum cupiditate quaerat ullam sed consequatur.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
          Et sequi.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
        identifier: '5'
        name: resource name
        org: 1q
        project: 78q
        terraform_variable_files:
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Consequatur praesentium qui.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
        updated: 1627686800
      required:
        - account
        - org
        - project
        - identifier
        - name
    VariableSetsGetVariableSetAccountLevelResponseBody:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: x
          minLength: 1
          maxLength: 128
        connectors:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetConnector'
          description: define an array of connectors that belong to Variable Set
          example:
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
            - connector_ref: oe5
              created: 1627590400
              id: 5780234500233303000
              type: aws
              updated: 1627686800
        created:
          type: integer
          description: Timestamp when the variable set was created.
          example: 1627590400
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: map of environment variables configured on the Variable Set.
          example:
            Aut eos et totam.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Deleniti fugiat ut ducimus quibusdam sunt expedita.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Quo est amet dolor officiis veritatis.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        identifier:
          type: string
          description: Identifier is the VariableSet identifier.
          example: mfu
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: i
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: '3'
          minLength: 1
          maxLength: 128
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableSetVarFile'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
            - created: 1627590400
              id: 1219232998228301800
              repository: Ea nemo ut.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Facilis error sit vel.
              repository_path: ''
              repository_sha: abc10ed
              updated: 1627686800
        terraform_variables:
          type: object
          description: map of terraform variables configured on the Variable Set.
          example:
            Est incidunt consectetur quisquam quo dolorem.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Odio totam quibusdam.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
            Quisquam quos.:
              created: 1627590400
              id: 4738113372485281000
              key: v
              updated: 1627686800
              value: Pariatur voluptates voluptatem.
              value_type: string
          additionalProperties:
            $ref: '#/components/schemas/VariableSetVar'
        updated:
          type: integer
          description: Timestamp when the variable set was last updated.
          example: 1627686800
          format: int64
      description: Get-Variable-Set-Account-LevelResponseBody result type (default view)
      example:
        account: x6
        connectors:
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
          - connector_ref: oe5
            created: 1627590400
            id: 5780234500233303000
            type: aws
            updated: 1627686800
        created: 1627590400
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Ex est doloremque.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
          Id nam dicta necessitatibus.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
          Voluptas et quo id id ut eligendi.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
        identifier: oye
        name: resource name
        org: brq
        project: a
        terraform_variable_files:
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
          - created: 1627590400
            id: 1219232998228301800
            repository: Ea nemo ut.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Facilis error sit vel.
            repository_path: ''
            repository_sha: abc10ed
            updated: 1627686800
        terraform_variables:
          Autem possimus.:
            created: 1627590400
            id: 4738113372485281000
            key: v
            updated: 1627686800
            value: Pariatur voluptates voluptatem.
            value_type: string
        updated: 1627686800
      required:
        - account
        - org
        - project
        - identifier
        - name
    VariableWithPermissions:
      type: object
      properties:
        associatedTemplate:
          type: string
          example: Excepturi possimus distinctio molestiae sint et est.
        associatedVariableSet:
          type: string
          example: Debitis neque.
        created:
          type: integer
          example: 2856343867384310300
          format: int64
        inUse:
          type: boolean
          description: Indicates if this variable is the one actively used in the workspace
          example: true
        includeInWorkspace:
          type: boolean
          example: true
        isLocked:
          type: boolean
          example: true
        key:
          type: string
          example: Ullam voluptatum eligendi deserunt ut.
        kind:
          type: string
          example: Repellat vel mollitia dolor fugit reiciendis itaque.
        permissions:
          $ref: '#/components/schemas/VariablePermissions'
        source:
          type: string
          example: workspace
          enum:
            - workspace
            - template
            - variableSet
        updated:
          type: integer
          example: 5656305124249179000
          format: int64
        uuid:
          type: string
          description: Unique identifier for this variable
          example: Nemo est voluptatum aspernatur pariatur suscipit dolor.
        value:
          type: string
          example: Deserunt optio consequatur alias at.
        value_type:
          type: string
          example: Quaerat fuga est.
      example:
        associatedTemplate: Blanditiis et et.
        associatedVariableSet: Quibusdam porro reiciendis.
        created: 3570979771308712400
        inUse: true
        includeInWorkspace: true
        isLocked: true
        key: Ea asperiores nihil qui sed.
        kind: Nihil est delectus.
        permissions:
          canDelete: false
          canEditKey: false
          canEditValue: true
          canEditValueType: false
        source: variableSet
        updated: 1212989237362223000
        uuid: Itaque sequi ipsa ut atque blanditiis pariatur.
        value: Dolore iure rem.
        value_type: Fugit est tempora voluptatem eligendi.
      required:
        - uuid
        - key
        - value
        - value_type
        - source
        - kind
        - includeInWorkspace
        - isLocked
        - created
        - updated
        - permissions
        - inUse
    VariablesAndProvidersResult:
      type: object
      properties:
        environment_variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableWithPermissions'
          example:
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/ProviderConnectorWithPermissions'
          example:
            - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
              associatedVariableSet: Sunt repudiandae veniam.
              connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
              created: 6005298877913972000
              inUse: false
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: workspace
              type: aws
              updated: 3353246603428410000
              uuid: Aut sit quo.
            - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
              associatedVariableSet: Sunt repudiandae veniam.
              connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
              created: 6005298877913972000
              inUse: false
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: workspace
              type: aws
              updated: 3353246603428410000
              uuid: Aut sit quo.
            - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
              associatedVariableSet: Sunt repudiandae veniam.
              connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
              created: 6005298877913972000
              inUse: false
              isInWorkspace: true
              isLocked: false
              permissions:
                canDelete: false
              source: workspace
              type: aws
              updated: 3353246603428410000
              uuid: Aut sit quo.
        terraform_variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableWithPermissions'
          example:
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
            - associatedTemplate: Quis voluptas ut ut molestiae itaque.
              associatedVariableSet: Sed nesciunt.
              created: 2032505039566990800
              inUse: true
              includeInWorkspace: false
              isLocked: false
              key: Quia vel molestiae.
              kind: Officiis rerum impedit et sequi et.
              permissions:
                canDelete: false
                canEditKey: false
                canEditValue: true
                canEditValueType: false
              source: workspace
              updated: 7566281834472315000
              uuid: Quidem itaque accusamus.
              value: Odio sed est.
              value_type: Et atque dolorum officia.
        variable_files:
          type: array
          items:
            $ref: '#/components/schemas/VariableFileWithPermissions'
          example:
            - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
              associatedVariableSet: Aut sequi dolor ut voluptatum provident.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Et accusamus iusto nemo voluptates sit.
              repository_branch: Dolore doloremque.
              repository_commit: Ea ex molestiae.
              repository_connector: Quia iste et quidem.
              repository_path: Officiis totam quia eveniet libero.
              repository_sha: Non commodi qui aut harum.
              source: variableSet
              uuid: Numquam qui voluptas distinctio dicta.
            - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
              associatedVariableSet: Aut sequi dolor ut voluptatum provident.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Et accusamus iusto nemo voluptates sit.
              repository_branch: Dolore doloremque.
              repository_commit: Ea ex molestiae.
              repository_connector: Quia iste et quidem.
              repository_path: Officiis totam quia eveniet libero.
              repository_sha: Non commodi qui aut harum.
              source: variableSet
              uuid: Numquam qui voluptas distinctio dicta.
            - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
              associatedVariableSet: Aut sequi dolor ut voluptatum provident.
              inUse: true
              isInWorkspace: true
              isLocked: true
              permissions:
                canDelete: true
                canEdit: false
              repository: Et accusamus iusto nemo voluptates sit.
              repository_branch: Dolore doloremque.
              repository_commit: Ea ex molestiae.
              repository_connector: Quia iste et quidem.
              repository_path: Officiis totam quia eveniet libero.
              repository_sha: Non commodi qui aut harum.
              source: variableSet
              uuid: Numquam qui voluptas distinctio dicta.
      example:
        environment_variables:
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
        provider_connectors:
          - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
            associatedVariableSet: Sunt repudiandae veniam.
            connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
            created: 6005298877913972000
            inUse: false
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: workspace
            type: aws
            updated: 3353246603428410000
            uuid: Aut sit quo.
          - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
            associatedVariableSet: Sunt repudiandae veniam.
            connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
            created: 6005298877913972000
            inUse: false
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: workspace
            type: aws
            updated: 3353246603428410000
            uuid: Aut sit quo.
          - associatedTemplate: Repellendus explicabo ducimus explicabo ut reiciendis.
            associatedVariableSet: Sunt repudiandae veniam.
            connector_ref: Voluptatem perferendis possimus fugiat eum aut repellendus.
            created: 6005298877913972000
            inUse: false
            isInWorkspace: true
            isLocked: false
            permissions:
              canDelete: false
            source: workspace
            type: aws
            updated: 3353246603428410000
            uuid: Aut sit quo.
        terraform_variables:
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
          - associatedTemplate: Quis voluptas ut ut molestiae itaque.
            associatedVariableSet: Sed nesciunt.
            created: 2032505039566990800
            inUse: true
            includeInWorkspace: false
            isLocked: false
            key: Quia vel molestiae.
            kind: Officiis rerum impedit et sequi et.
            permissions:
              canDelete: false
              canEditKey: false
              canEditValue: true
              canEditValueType: false
            source: workspace
            updated: 7566281834472315000
            uuid: Quidem itaque accusamus.
            value: Odio sed est.
            value_type: Et atque dolorum officia.
        variable_files:
          - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
            associatedVariableSet: Aut sequi dolor ut voluptatum provident.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Et accusamus iusto nemo voluptates sit.
            repository_branch: Dolore doloremque.
            repository_commit: Ea ex molestiae.
            repository_connector: Quia iste et quidem.
            repository_path: Officiis totam quia eveniet libero.
            repository_sha: Non commodi qui aut harum.
            source: variableSet
            uuid: Numquam qui voluptas distinctio dicta.
          - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
            associatedVariableSet: Aut sequi dolor ut voluptatum provident.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Et accusamus iusto nemo voluptates sit.
            repository_branch: Dolore doloremque.
            repository_commit: Ea ex molestiae.
            repository_connector: Quia iste et quidem.
            repository_path: Officiis totam quia eveniet libero.
            repository_sha: Non commodi qui aut harum.
            source: variableSet
            uuid: Numquam qui voluptas distinctio dicta.
          - associatedTemplate: Fugiat ipsam cumque est sunt est quia.
            associatedVariableSet: Aut sequi dolor ut voluptatum provident.
            inUse: true
            isInWorkspace: true
            isLocked: true
            permissions:
              canDelete: true
              canEdit: false
            repository: Et accusamus iusto nemo voluptates sit.
            repository_branch: Dolore doloremque.
            repository_commit: Ea ex molestiae.
            repository_connector: Quia iste et quidem.
            repository_path: Officiis totam quia eveniet libero.
            repository_sha: Non commodi qui aut harum.
            source: variableSet
            uuid: Numquam qui voluptas distinctio dicta.
      required:
        - terraform_variables
        - environment_variables
        - provider_connectors
        - variable_files
    IaCMWebhookInfo:
      type: object
      properties:
        connector:
          type: string
          description: The connector for the webhook
          example: Quae illo.
        link:
          type: string
          description: The link for the webhook
          example: Optio et aliquam velit.
        repo:
          type: string
          description: The repository for the webhook
          example: Ex commodi tempora tempore optio.
        type:
          type: string
          description: The type of the webhook
          example: release
          enum:
            - pull_request
            - merged
            - push
            - release
            - tag
      description: WebhookInfo defines the webhook information for a unified execution
      example:
        connector: Doloribus quidem dolor.
        link: Eius aut harum iure.
        repo: Qui iste repellendus accusantium nihil modi.
        type: merged
      required:
        - type
    Workspace:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: t3s
          minLength: 1
          maxLength: 128
        associated_template:
          $ref: '#/components/schemas/AssociatedTemplate'
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.5442946
          format: float
        cost_breakdown_json:
          type: string
          description: >-
            cost_breakdown_json is the identifier to the breakdown cost file
            from the current execution that was applied successfully
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json:
          type: string
          description: >-
            cost_diff_json is the identifier to the diff cost file between the
            previous and current successful executions
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Dolores eligendi ut nulla.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Dicta vero quia consequatur natus aliquid.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
            Sapiente laboriosam doloremque fuga fugit totam nulla.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        id:
          type: integer
          description: ID PK for internal uses
          example: 858795366199525500
          format: int64
        identifier:
          type: string
          description: Workspace identifier.
          example: qj
          minLength: 1
          maxLength: 128
        modules_json:
          type: string
          description: >-
            modules_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: u
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: o
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Consequatur officia nobis ratione non quisquam quibusdam.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
        providers_json:
          type: string
          description: >-
            providers_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Dolore et esse adipisci harum quia.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Illum nesciunt.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Ipsam sunt.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Eaque quia totam placeat aut est numquam.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Magni ipsam.
        state_checksum:
          type: string
          description: state_checksum is the sha-256 checksum of terraform state file
          example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_plan_json:
          type: string
          description: >-
            terraform_plan_json is the identifier to the current state file only
            in JSON format.
          example: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state:
          type: string
          description: >-
            terraform_state is the identifier to the plan file used to create
            the latest state.
          example: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json:
          type: string
          description: >-
            terraform_state_json is the identifier to the plan file used to
            create the latest state only in JSON format.
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Praesentium pariatur.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
            Sequi dolor eum est consequatur tempore.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: true
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Est sed explicabo ipsum est laborum.
        variable_sets:
          type: array
          items:
            type: string
            example: Facere mollitia amet tempora.
          description: Attached Variable Sets references
          example:
            - Voluptatem est dolor.
            - At vel sed.
      description: Workspace defines an infrastructure coupled with workflows.
      example:
        account: '4'
        associated_template:
          template_id: '9'
          version: 9ks
        budget: 0.23919885
        cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled: true
        default_pipelines:
          Iste cupiditate voluptatibus neque voluptates iste velit.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
          Quam id.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
          Suscipit possimus aut et unde itaque.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Sunt dolorem tempore voluptas qui velit et.:
            key: z
            value: Aut necessitatibus aperiam.
            value_type: secret
        id: 8133634895875480000
        identifier: 99g
        modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        name: resource name
        org: t
        project: k
        provider_connector: Voluptatem voluptatum in voluptatum ea.
        provider_connectors:
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
        providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner: Consequatur dignissimos ipsam nisi.
        provisioner_version: Architecto laudantium ad repellendus sed quisquam rerum.
        prune_sensitive_data: true
        repository: Enim explicabo necessitatibus aut quos et.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Sed unde ipsa omnis voluptatem.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: false
        sparse_checkout: Quo accusamus aut laboriosam aspernatur.
        state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        tags:
          foo: bar
        terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Non qui.:
            key: z
            value: Aut necessitatibus aperiam.
            value_type: secret
        terragrunt_provider: true
        terragrunt_version: Perspiciatis quis ipsum commodi.
        variable_sets:
          - Eaque vel consequatur nam ex quia.
          - Ut animi et.
          - Explicabo officiis vel.
      required:
        - account
        - org
        - project
        - identifier
        - name
        - provider_connector
        - provisioner
        - terraform_variables
        - environment_variables
    WorkspaceData:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: r
          minLength: 1
          maxLength: 128
        data_type:
          type: string
          description: Type of data stored
          example: modules
          enum:
            - plan_human
            - state_raw
            - state_human
            - cost_breakdown
            - cost_diff
            - modules
            - providers
        org:
          type: string
          description: Org is the organisation identifier.
          example: frr
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: The unique identifier for the associated pipeline execution
          example: Expedita quam voluptatem ducimus quia perspiciatis vel.
        pipeline_id:
          type: string
          description: The unique identifier for the associated pipeline
          example: Quisquam consequatur consequatur voluptatem suscipit ipsam.
        pipeline_stage_id:
          type: string
          description: The unique identifier for the associated pipeline execution stage
          example: Voluptate voluptatem ut expedita provident.
        project:
          type: string
          description: Project is the project identifier.
          example: vs
          minLength: 1
          maxLength: 128
        provisioner_type:
          type: string
          description: Type of provisioner that created the data
          example: tf
          enum:
            - tf
        stack_path:
          type: string
          description: Optional path to the stack module
          example: Odio aspernatur quas deserunt.
        stage_id:
          type: string
          description: The unique identifier for a stage
          example: Voluptatem debitis eos sed nulla.
        workspace:
          type: string
          description: Workspace identifier
          example: workspace123
      description: >-
        WorkspaceData is the representation for a single item of data associated
        with a workspace.
      example:
        account: h
        data_type: providers
        org: tek
        pipeline_execution_id: Consectetur eius facere quam.
        pipeline_id: Consequatur soluta sint.
        pipeline_stage_id: Porro voluptas enim.
        project: 3n
        provisioner_type: tf
        stack_path: Eius repudiandae.
        stage_id: Praesentium veniam placeat.
        workspace: workspace123
      required:
        - account
        - org
        - project
        - workspace
        - pipeline_id
        - stage_id
        - pipeline_execution_id
        - pipeline_stage_id
        - provisioner_type
        - data_type
    WorkspaceDataInfo:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for the data
          example: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceDataPolicyEvaluation'
          description: Individual policy evaluation details
          example:
            - message: Quo ut porro quos.
              policy_id: Alias consequatur repellendus repudiandae.
              policy_name: Sed saepe aliquid facere.
              policy_set_id: Perferendis vel commodi.
              policy_set_name: Quam voluptate ex eum.
              policy_status: Explicabo quam consequatur consequatur.
            - message: Quo ut porro quos.
              policy_id: Alias consequatur repellendus repudiandae.
              policy_name: Sed saepe aliquid facere.
              policy_set_id: Perferendis vel commodi.
              policy_set_name: Quam voluptate ex eum.
              policy_status: Explicabo quam consequatur consequatur.
            - message: Quo ut porro quos.
              policy_id: Alias consequatur repellendus repudiandae.
              policy_name: Sed saepe aliquid facere.
              policy_set_id: Perferendis vel commodi.
              policy_set_name: Quam voluptate ex eum.
              policy_status: Explicabo quam consequatur consequatur.
        policy_evaluation_message:
          type: string
          description: Pre-rendered message included when policy evaluation did not pass
          example: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status:
          type: string
          description: >-
            The overall status of policy evaluation (if it occurred) indicating
            whether it passed
          example: error
          enum:
            - error
            - warning
            - pass
      example:
        id: dc538c61-de48-4220-958c-5f3c4f983daa
        policy_evaluation:
          - message: Quo ut porro quos.
            policy_id: Alias consequatur repellendus repudiandae.
            policy_name: Sed saepe aliquid facere.
            policy_set_id: Perferendis vel commodi.
            policy_set_name: Quam voluptate ex eum.
            policy_status: Explicabo quam consequatur consequatur.
          - message: Quo ut porro quos.
            policy_id: Alias consequatur repellendus repudiandae.
            policy_name: Sed saepe aliquid facere.
            policy_set_id: Perferendis vel commodi.
            policy_set_name: Quam voluptate ex eum.
            policy_status: Explicabo quam consequatur consequatur.
          - message: Quo ut porro quos.
            policy_id: Alias consequatur repellendus repudiandae.
            policy_name: Sed saepe aliquid facere.
            policy_set_id: Perferendis vel commodi.
            policy_set_name: Quam voluptate ex eum.
            policy_status: Explicabo quam consequatur consequatur.
          - message: Quo ut porro quos.
            policy_id: Alias consequatur repellendus repudiandae.
            policy_name: Sed saepe aliquid facere.
            policy_set_id: Perferendis vel commodi.
            policy_set_name: Quam voluptate ex eum.
            policy_status: Explicabo quam consequatur consequatur.
        policy_evaluation_message: '- instance type ''xlarge'' is not permitted'
        policy_evaluation_status: error
      required:
        - id
    WorkspaceDataPolicyEvaluation:
      type: object
      properties:
        message:
          type: string
          example: Optio voluptatem quia repudiandae dolore est.
        policy_id:
          type: string
          example: Minima labore quia velit sit iure.
        policy_name:
          type: string
          example: Doloribus voluptatem eum magni asperiores iure.
        policy_set_id:
          type: string
          example: Eum assumenda culpa officia.
        policy_set_name:
          type: string
          example: Omnis veritatis at rerum et nemo.
        policy_status:
          type: string
          example: Est molestiae perferendis.
      example:
        message: Laboriosam veniam.
        policy_id: Ducimus perferendis repellat pariatur cupiditate.
        policy_name: Odio perspiciatis aspernatur tempora tenetur quas suscipit.
        policy_set_id: Vitae dolor quaerat illo minus.
        policy_set_name: Et veniam blanditiis voluptates.
        policy_status: Omnis dolores quasi repudiandae voluptas.
      required:
        - policy_set_id
        - policy_set_name
        - policy_id
        - policy_name
        - policy_status
        - message
    WorkspaceDataResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmWorkspacedata'
      example:
        - account: q
          created: 1785679687111850800
          data_type: cost_diff
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          org: cq
          pipeline_execution_id: Accusantium aliquam quis in tempore dolorem molestiae.
          pipeline_id: Illo deserunt ab.
          pipeline_stage_id: Magnam nisi beatae sed.
          project: esl
          provisioner_type: tf
          stack_path: Voluptate ratione dolores modi et numquam.
          stage_id: In molestiae.
          workspace: workspace123
        - account: q
          created: 1785679687111850800
          data_type: cost_diff
          id: dc538c61-de48-4220-958c-5f3c4f983daa
          org: cq
          pipeline_execution_id: Accusantium aliquam quis in tempore dolorem molestiae.
          pipeline_id: Illo deserunt ab.
          pipeline_stage_id: Magnam nisi beatae sed.
          project: esl
          provisioner_type: tf
          stack_path: Voluptate ratione dolores modi et numquam.
          stage_id: In molestiae.
          workspace: workspace123
    WorkspaceEvent:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: i
          minLength: 1
          maxLength: 128
        data:
          type: object
          example:
            Sunt quia ipsa accusamus inventore totam.: Facere ad eos velit quos odio.
          additionalProperties:
            type: string
            example: Tempora voluptas.
        event_type:
          type: string
          description: The type of event that occurred
          example: stage-complete
          enum:
            - plan
            - drifted
            - provisioning
            - destroying
            - active
            - inactive
            - apply_needed
            - failed
            - stage-complete
        metadata:
          $ref: '#/components/schemas/ActivityMetadata'
        org:
          type: string
          description: Org is the organisation identifier.
          example: o11
          minLength: 1
          maxLength: 128
        pipeline_execution_id:
          type: string
          description: 'Deprecated: use metadata instead'
          default: ''
          example: Accusamus iure nobis voluptatum quia rerum.
        pipeline_stage_id:
          type: string
          description: 'Deprecated: use metadata instead'
          default: ''
          example: In et neque earum.
        project:
          type: string
          description: Project is the project identifier.
          example: wlt
          minLength: 1
          maxLength: 128
        workspace:
          type: string
          description: Workspace associated with this event
          example: b6
          minLength: 1
          maxLength: 1024
      description: WorkspaceEvent defines an individual workspace event
      example:
        account: rj
        data:
          Eaque expedita sapiente quam et nihil temporibus.: Neque molestiae debitis minima quia maxime.
          Et quas voluptas saepe ut.: Quis sit eum facilis similique dolorem temporibus.
        event_type: apply_needed
        metadata:
          PlannedChangesCount: 6714032458437038000
          activity_status: success
          activity_type: plan
          cost_breakdown_uuid: Itaque quaerat voluptatum.
          cost_currency: Explicabo explicabo quaerat natus dolores.
          cost_diff_total_monthly: Cum ut.
          cost_diff_uuid: Reprehenderit labore fuga voluptatibus.
          cost_past_total_monthly: Provident et error molestiae.
          cost_total_monthly: Aut aut eveniet est aliquam alias sint.
          cost_total_monthly_percentage_change: Aperiam voluptas fuga qui dolorum.
          drift_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          enable_solutions_factory: false
          git_branch: Provident dolor cum.
          git_commit_message: Voluptatem vel doloremque aut.
          git_commit_sha: Dolorum quia dolor dolor assumenda aut delectus.
          git_repo: Provident nostrum soluta deserunt qui magnam.
          modules_uuid: Asperiores quo.
          output_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          pipeline: Consequatur sunt voluptatum.
          pipeline_execution_id: Suscipit excepturi.
          pipeline_execution_number: Dolor suscipit aliquam.
          pipeline_name: Enim nisi voluptatem quasi.
          pipeline_stage_id: Aut iste nihil possimus perspiciatis quasi officia.
          plan_uuid: Provident sapiente voluptatibus doloremque.
          providers_uuid: Quaerat tempore quod ducimus.
          provisioner: Modi optio laborum expedita est.
          provisioner_version: Molestias esse eum.
          resource_counts:
            added: 7449910667089618000
            changed: 148315669190400480
            deleted: 5683600417193213000
            imported: 3265651565371067000
            removed: 1371487732313499000
            unchanged: 4655105961323145000
          state_checksum: Ea odit suscipit tenetur perferendis mollitia.
          state_uuid: Quo magni maxime aliquam excepturi quasi.
          trigger:
            A quis vero.: Nesciunt in sunt iste aut eaque distinctio.
            Molestias libero.: Natus molestiae eaque reiciendis vel voluptatem cumque.
        org: r2y
        pipeline_execution_id: Rerum est aut.
        pipeline_stage_id: Sed fugiat deserunt deserunt illo labore.
        project: 0kz
        workspace: m
      required:
        - account
        - org
        - project
        - workspace
        - event_type
    WorkspaceMetrics:
      type: object
      properties:
        status_counts:
          type: object
          description: Counts by status
          example:
            Doloribus sed natus tempora.: 565650424754400800
            Neque explicabo aperiam tempora.: 4594784175041153000
            Sit quia aperiam eligendi.: 8395702162257042000
          additionalProperties:
            type: integer
            example: 654398644283104800
            format: int64
      example:
        status_counts:
          A illum.: 4593876370771155500
          Et dolorem recusandae in ratione et.: 3419841227715319000
          Modi labore perferendis harum quae.: 4738968063629795000
    WorkspaceModuleCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmWorkspacemodule'
      example:
        - key: ec2-instance_test
          source: >-
            registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
          version: 5.0.0
        - key: ec2-instance_test
          source: >-
            registry.opentofu.org/terraform-aws-modules/ec2-instance/aws//examples/complete
          version: 5.0.0
    WorkspaceProviderConnector:
      type: object
      properties:
        connector_ref:
          type: string
          description: Connector reference in harness platform.
          example: re
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: Timestamp when the connector was created.
          example: 1627590400
          format: int64
        id:
          type: integer
          description: ID PK for internal uses
          example: 4780250447277806000
          format: int64
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: false
        type:
          type: string
          description: Type indicates the connector type.
          example: gcp
          enum:
            - aws
            - azure
            - gcp
        updated:
          type: integer
          description: Timestamp when the connector was last updated.
          example: 1627686800
          format: int64
        workspace_id:
          type: integer
          description: Workspace ID FK for internal uses
          example: 2718210090288215000
          format: int64
      description: Workspace provider connector
      example:
        connector_ref: sqm
        created: 1627590400
        id: 351449432820385340
        terragrunt_provider: false
        type: azure
        updated: 1627686800
        workspace_id: 4363183943609637400
      required:
        - connector_ref
        - type
    WorkspaceResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmWorkspace'
      example:
        - account: o9k
          associated_template:
            template_id: '9'
            version: 9ks
          backend_locked: false
          budget: 0.26886165
          cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_estimation_enabled: true
          created: 5458079498988329000
          default_pipelines:
            Et autem.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
            Voluptatem consequatur occaecati sapiente est.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          description: this is a more detailed explanation of the resource.
          environment_variables:
            Aut quia quisquam dolorem sequi fuga ipsum.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Dolor natus eum eaque natus.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Soluta optio et.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          id: 3067592544267795500
          identifier: '9'
          modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          name: resource name
          org: 8c
          project: w
          provider_connector: Accusantium odio nesciunt mollitia.
          provider_connectors:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
          providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          provisioner: Nesciunt aut voluptas velit sapiente vel.
          provisioner_data: Eos est excepturi illum et.
          provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
          prune_sensitive_data: true
          repository: Repudiandae est optio totam a.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Enim molestiae porro totam.
          repository_path: ''
          repository_sha: abc10ed
          repository_submodules: recursive
          run_all: false
          sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
          state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
          status: active
          tags:
            foo: bar
          terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
          terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
          terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          terraform_variable_files:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
          terraform_variables:
            Et dolores.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          terragrunt_provider: true
          terragrunt_version: Aut et.
          updated: 2837326796703995400
          variable_sets:
            - Et consequatur rerum quidem.
            - Est dignissimos ut doloremque nihil nam doloribus.
            - Delectus dolor id fuga ratione sit fuga.
        - account: o9k
          associated_template:
            template_id: '9'
            version: 9ks
          backend_locked: false
          budget: 0.26886165
          cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_estimation_enabled: true
          created: 5458079498988329000
          default_pipelines:
            Et autem.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
            Voluptatem consequatur occaecati sapiente est.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          description: this is a more detailed explanation of the resource.
          environment_variables:
            Aut quia quisquam dolorem sequi fuga ipsum.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Dolor natus eum eaque natus.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Soluta optio et.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          id: 3067592544267795500
          identifier: '9'
          modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          name: resource name
          org: 8c
          project: w
          provider_connector: Accusantium odio nesciunt mollitia.
          provider_connectors:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
          providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          provisioner: Nesciunt aut voluptas velit sapiente vel.
          provisioner_data: Eos est excepturi illum et.
          provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
          prune_sensitive_data: true
          repository: Repudiandae est optio totam a.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Enim molestiae porro totam.
          repository_path: ''
          repository_sha: abc10ed
          repository_submodules: recursive
          run_all: false
          sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
          state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
          status: active
          tags:
            foo: bar
          terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
          terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
          terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          terraform_variable_files:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
          terraform_variables:
            Et dolores.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          terragrunt_provider: true
          terragrunt_version: Aut et.
          updated: 2837326796703995400
          variable_sets:
            - Et consequatur rerum quidem.
            - Est dignissimos ut doloremque nihil nam doloribus.
            - Delectus dolor id fuga ratione sit fuga.
        - account: o9k
          associated_template:
            template_id: '9'
            version: 9ks
          backend_locked: false
          budget: 0.26886165
          cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          cost_estimation_enabled: true
          created: 5458079498988329000
          default_pipelines:
            Et autem.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
            Voluptatem consequatur occaecati sapiente est.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          description: this is a more detailed explanation of the resource.
          environment_variables:
            Aut quia quisquam dolorem sequi fuga ipsum.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Dolor natus eum eaque natus.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
            Soluta optio et.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          id: 3067592544267795500
          identifier: '9'
          modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          name: resource name
          org: 8c
          project: w
          provider_connector: Accusantium odio nesciunt mollitia.
          provider_connectors:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
          providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          provisioner: Nesciunt aut voluptas velit sapiente vel.
          provisioner_data: Eos est excepturi illum et.
          provisioner_version: Voluptatum consequuntur laboriosam fugit labore.
          prune_sensitive_data: true
          repository: Repudiandae est optio totam a.
          repository_branch: main
          repository_commit: abc10ed
          repository_connector: Enim molestiae porro totam.
          repository_path: ''
          repository_sha: abc10ed
          repository_submodules: recursive
          run_all: false
          sparse_checkout: Molestias assumenda necessitatibus debitis vero rerum incidunt.
          state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
          status: active
          tags:
            foo: bar
          terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
          terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
          terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
          terraform_variable_files:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
          terraform_variables:
            Et dolores.:
              created: 7004477956953783000
              key: u8p
              updated: 2029366920103826400
              value: Animi natus repellendus ut vel.
              value_type: string
          terragrunt_provider: true
          terragrunt_version: Aut et.
          updated: 2837326796703995400
          variable_sets:
            - Et consequatur rerum quidem.
            - Est dignissimos ut doloremque nihil nam doloribus.
            - Delectus dolor id fuga ratione sit fuga.
    WorkspaceResourceSummary:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: a
          minLength: 1
          maxLength: 128
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 807024223050334700
          format: int64
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        identifier:
          type: string
          description: Workspace identifier.
          example: 3r
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: pm
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: r26
          minLength: 1
          maxLength: 128
        status:
          type: string
          description: The status of the workspace
          example: inactive
          enum:
            - active
            - inactive
            - provisioning
            - destroying
            - failed
            - unknown
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 6706944760916712000
          format: int64
      description: >-
        WorkspaceResource is the representation for a single workspace
        definition. (summary view)
      example:
        account: z5x
        created: 8118112317281530000
        description: this is a more detailed explanation of the resource.
        identifier: 97g
        name: resource name
        org: po
        project: '2'
        status: inactive
        updated: 8922273882251449000
      required:
        - account
        - org
        - project
        - identifier
        - name
        - created
        - updated
        - status
    WorkspaceResourceSummaryCollection:
      type: array
      items:
        $ref: '#/components/schemas/WorkspaceResourceSummary'
      description: >-
        WorkspaceResourceCollection is the result type for an array of
        WorkspaceResource (summary view)
      example:
        - account: 4j
          created: 4988103444423354000
          description: this is a more detailed explanation of the resource.
          identifier: '1'
          name: resource name
          org: w
          project: wd
          status: provisioning
          updated: 4982422765976356000
        - account: 4j
          created: 4988103444423354000
          description: this is a more detailed explanation of the resource.
          identifier: '1'
          name: resource name
          org: w
          project: wd
          status: provisioning
          updated: 4982422765976356000
    WorkspaceTerraformVariableFiles:
      type: object
      properties:
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Facere eligendi id ex qui itaque.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Dignissimos repellendus eos.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
      description: >-
        WorkspaceTerraformVarFiles defines a variable file that lives in another
        repository than the workspace files.
      example:
        repository: Et neque et.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Ipsa repudiandae molestiae similique vero aut blanditiis.
        repository_path: ''
        repository_sha: abc10ed
      required:
        - repository
    WorkspaceUpdate:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: 0pe
          minLength: 1
          maxLength: 128
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.10536857
          format: float
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Non consequuntur voluptatem facere aspernatur.:
              project_pipeline: Aut dolorum quis illum.
              workspace_pipeline: Saepe quaerat modi.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Officiis est doloribus ipsam itaque ullam.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
            Reprehenderit culpa est aliquam autem blanditiis.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
            Voluptas recusandae voluptatum.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        identifier:
          type: string
          description: Workspace identifier.
          example: qt
          minLength: 1
          maxLength: 128
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: 7fn
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: 'y'
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Est modi quo.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
            - connector_ref: b
              created: 1627590400
              id: 7841704743406482000
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 5631387644666327000
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Aperiam facilis iure commodi autem pariatur.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Odio similique dolor eius ad nesciunt eos.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Nisi deserunt voluptatibus et odit.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Facilis ea et.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: false
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Non molestias impedit in.
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Ut ut id neque voluptatem doloremque.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Est reiciendis error id.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Est quia alias voluptatem error.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
            Quibusdam sit suscipit et veniam.:
              key: z
              value: Aut necessitatibus aperiam.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/IaCMVariable'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: true
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Reprehenderit quia.
        variable_sets:
          type: array
          items:
            type: string
            example: In et magni minus.
          description: Attached Variable Sets references
          example:
            - Sequi voluptatem in corrupti odio at sint.
            - Rerum tempore minima.
            - Iusto sit sunt natus.
      description: WorkspaceUpdate defines the fields of a workspace that can be updated.
      example:
        account: ger
        budget: 0.43127924
        cost_estimation_enabled: true
        default_pipelines:
          Harum quidem sequi.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
          Officiis inventore debitis eius sit aliquid officiis.:
            project_pipeline: Aut dolorum quis illum.
            workspace_pipeline: Saepe quaerat modi.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Ab officiis nam quod magnam.:
            key: z
            value: Aut necessitatibus aperiam.
            value_type: secret
          Tenetur officiis quidem et et et.:
            key: z
            value: Aut necessitatibus aperiam.
            value_type: secret
        identifier: '78'
        name: resource name
        org: s1f
        project: nf7
        provider_connector: Quia eveniet.
        provider_connectors:
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
          - connector_ref: b
            created: 1627590400
            id: 7841704743406482000
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 5631387644666327000
        provisioner: Aut autem velit qui qui.
        provisioner_version: At porro asperiores impedit et enim in.
        prune_sensitive_data: true
        repository: Ut rem et voluptate.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Explicabo fuga incidunt.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: false
        sparse_checkout: Et voluptatem.
        tags:
          foo: bar
        terraform_variable_files:
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Ut ut id neque voluptatem doloremque.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Est reiciendis error id.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Et laudantium mollitia consequatur voluptatibus explicabo modi.:
            key: z
            value: Aut necessitatibus aperiam.
            value_type: secret
        terragrunt_provider: false
        terragrunt_version: Cum unde.
        variable_sets:
          - Dolorem id earum et tenetur doloremque.
          - Libero voluptatibus explicabo qui perspiciatis.
      required:
        - account
        - org
        - project
        - identifier
        - terraform_variables
        - environment_variables
        - name
        - provider_connector
        - provisioner
    WorkspaceVariable:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: b
          minLength: 1
          maxLength: 128
        key:
          type: string
          description: Key is the identifier for the secret.
          example: nki
          pattern: ^[a-zA-Z0-9_]+$
          minLength: 1
          maxLength: 128
        kind:
          type: string
          description: Kind is the classfcation of the variable.
          example: tf
          enum:
            - env
            - tf
        org:
          type: string
          description: Org is the organisation identifier.
          example: q2
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: db
          minLength: 1
          maxLength: 128
        value:
          type: string
          description: Value is the value of the secret.
          example: Et earum.
        value_type:
          type: string
          description: >-
            Type indecates the value type of the secret. In the case of secret
            this is a

            reference to an item in the secret store
          example: string
          enum:
            - string
            - secret
        workspace:
          type: string
          description: >-
            Workspace is the resource workspace this variable is associated
            with.
          example: Facere voluptatem et unde.
      description: >-
        Workspace Variable describes a base variable associated with a
        workspace. It is intended to be extended

        into specific types which are then used.
      example:
        account: cth
        key: 9u
        kind: env
        org: ga
        project: 'n'
        value: Id fuga quisquam aut.
        value_type: secret
        workspace: Aut et.
      required:
        - account
        - org
        - project
        - workspace
        - key
        - value
        - value_type
        - kind
    WorkspaceVariableResourceCollection:
      type: array
      items:
        $ref: '#/components/schemas/HarnessIacmWorkspacevariable'
      example:
        - account: i
          created: 4430897693983287300
          key: g
          kind: env
          org: f8
          project: ll
          updated: 6466361052361896000
          value: Earum quos accusamus ut velit labore ex.
          value_type: string
          workspace: Odit porro qui voluptas quam iure perferendis.
        - account: i
          created: 4430897693983287300
          key: g
          kind: env
          org: f8
          project: ll
          updated: 6466361052361896000
          value: Earum quos accusamus ut velit labore ex.
          value_type: string
          workspace: Odit porro qui voluptas quam iure perferendis.
        - account: i
          created: 4430897693983287300
          key: g
          kind: env
          org: f8
          project: ll
          updated: 6466361052361896000
          value: Earum quos accusamus ut velit labore ex.
          value_type: string
          workspace: Odit porro qui voluptas quam iure perferendis.
        - account: i
          created: 4430897693983287300
          key: g
          kind: env
          org: f8
          project: ll
          updated: 6466361052361896000
          value: Earum quos accusamus ut velit labore ex.
          value_type: string
          workspace: Odit porro qui voluptas quam iure perferendis.
    WorkspacesCreateWorkspaceResponseBody:
      type: object
      properties:
        policy_evaluation:
          $ref: '#/components/schemas/IaCMEvaluation'
      description: Create-WorkspaceResponseBody result type (default view)
      example:
        policy_evaluation:
          account_id: XRQAjvT37acOiXx9PRaQMF
          action: onrun
          created: 1636370209475
          details:
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
            - account_id: eBqAoNchMLKigC_qZ5EdC
              action: onrun
              created: 1636669297674
              description: Captures critical production policies
              details:
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
                - deny_messages:
                    - >-
                      deployment stage 'example-stage' does not have a
                      HarnessApproval step
                    - >-
                      deployment stage 'example-stage' has step 'run-script'
                      that is forbidden type 'ShellScript'
                  output: |-
                    {
                        "deny": [
                            "deployment stage 'deploy' does not have a HarnessApproval step"
                        ],
                        "stages_with_approval": []
                    }
                  policy:
                    account_id: eBqAoNchMLKigC_qZ5EdC
                    created: 1636669297674
                    identifier: policy-1
                    name: Pipeline Approval
                    org_id: test-org
                    project_id: test-project
                    rego: ''
                    updated: 1636669297674
                  rego_error: >-
                    policy.rego:25: rego_parse_error: non-terminated string m ==
                    "test
                  status: error
              enabled: true
              identifier: policyset-1
              name: Production Policies
              org_id: test-org
              project_id: test-project
              status: error
              type: pipeline
              updated: 1636669297674
          entity: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          entity_metadata: 7bbca5d4-e9f2-4955-9b2a-019ec4d3645e
          id: 123
          input: ''
          org_id: test-org
          project_id: test-project
          status: error
          type: pipeline,service
    WorkspacesShowWorkspaceResponseBody:
      type: object
      properties:
        account:
          type: string
          description: Account is the internal customer account ID.
          example: rcf
          minLength: 1
          maxLength: 128
        associated_template:
          $ref: '#/components/schemas/AssociatedTemplate'
        backend_locked:
          type: boolean
          description: Defines if the remote backend is locked or not
          default: false
          example: false
        budget:
          type: number
          description: define the budget for a specific workspace
          example: 0.28066367
          format: float
        cost_breakdown_json:
          type: string
          description: >-
            cost_breakdown_json is the identifier to the breakdown cost file
            from the current execution that was applied successfully
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json:
          type: string
          description: >-
            cost_diff_json is the identifier to the diff cost file between the
            previous and current successful executions
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled:
          type: boolean
          description: >-
            define if cost estimation operations will be performed in this
            workspace
          default: false
          example: true
        created:
          type: integer
          description: >-
            Created is the unix timestamp at which the resource was originally
            created in milliseconds.
          example: 1668348085445604000
          format: int64
        default_pipelines:
          type: object
          description: >-
            List of default pipelines associated with this workspace and any
            per-workspace overrides.
          example:
            Accusamus beatae nemo natus rem.:
              project_pipeline: Architecto quia ut ratione earum impedit sed.
              workspace_pipeline: Quisquam enim rem similique.
          additionalProperties:
            $ref: '#/components/schemas/DefaultPipelineOverride'
        description:
          type: string
          description: Description provides long-form text about the resource.
          example: this is a more detailed explanation of the resource.
        environment_variables:
          type: object
          description: list of environment variables configured on the workspace.
          example:
            Quisquam atque ipsa numquam totam.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
            Quisquam voluptas hic provident.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
            Sunt nobis aut maxime rerum eos.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        identifier:
          type: string
          description: Workspace identifier.
          example: z2q
          minLength: 1
          maxLength: 128
        modules_json:
          type: string
          description: >-
            modules_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        name:
          type: string
          description: Name is the human readable name for the resource.
          example: resource name
          minLength: 1
          maxLength: 128
        org:
          type: string
          description: Org is the organisation identifier.
          example: h3
          minLength: 1
          maxLength: 128
        project:
          type: string
          description: Project is the project identifier.
          example: r
          minLength: 1
          maxLength: 128
        provider_connector:
          type: string
          description: >-
            Provider Connector is the reference to the connector for the
            infrastructure provider.
          example: Perferendis sed fugit molestiae quo.
        provider_connectors:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceProviderConnector'
          description: define an array of provider connectors that belong to Workspace
          example:
            - connector_ref: 8be
              created: 1627590400
              id: 1417218168821303600
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 7475434293435524000
            - connector_ref: 8be
              created: 1627590400
              id: 1417218168821303600
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 7475434293435524000
            - connector_ref: 8be
              created: 1627590400
              id: 1417218168821303600
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 7475434293435524000
            - connector_ref: 8be
              created: 1627590400
              id: 1417218168821303600
              terragrunt_provider: true
              type: aws
              updated: 1627686800
              workspace_id: 7475434293435524000
        providers_json:
          type: string
          description: >-
            providers_json is the identifier of any modules metadata associated
            with this workspace
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner:
          type: string
          description: Provisioner defines the provisioning tool to use.
          example: Ea est.
        provisioner_data:
          type: string
          example: Earum reprehenderit omnis odit id non earum.
        provisioner_version:
          type: string
          description: Provisioner Version defines the tool version to use.
          default: latest
          example: Amet beatae.
        prune_sensitive_data:
          type: boolean
          description: >-
            prune_sensitive_data is a flag to enable or disable pruning of
            sensitive data
          default: false
          example: true
        repository:
          type: string
          description: Repository is the name of the repository to use.
          example: Magni ut et.
        repository_branch:
          type: string
          description: Repository Branch in which the code should be accessed.
          example: main
        repository_commit:
          type: string
          description: Repository Commit/Tag in which the code should be accessed.
          example: abc10ed
        repository_connector:
          type: string
          description: >-
            Repository Connector is the reference to the connector to use for
            this code.
          example: Dolor perferendis error excepturi pariatur quo.
        repository_path:
          type: string
          description: Repository Path is the path in which the infra code resides.
          default: ''
          example: ''
        repository_sha:
          type: string
          description: Repository SHA in which the code should be accessed.
          example: abc10ed
        repository_submodules:
          type: string
          description: >-
            repository_submodules is the instruction about whether to clone
            submodules in the pipeline step
          default: 'false'
          example: recursive
          enum:
            - 'false'
            - 'true'
            - recursive
        run_all:
          type: boolean
          description: Run-All terragrunt modules.
          example: true
        sparse_checkout:
          type: string
          description: >-
            List of patterens that will be used for sparse checkout option of
            git clone
          example: Doloribus corporis dolor dolor ea delectus.
        state_checksum:
          type: string
          description: state_checksum is the sha-256 checksum of terraform state file
          example: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status:
          type: string
          description: The status of the workspace
          example: destroying
          enum:
            - active
            - inactive
            - provisioning
            - destroying
            - failed
            - unknown
        tags:
          type: string
          description: Tags associated with the workspace.
          example:
            foo: bar
        terraform_plan_json:
          type: string
          description: >-
            terraform_plan_json is the identifier to the current state file only
            in JSON format.
          example: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state:
          type: string
          description: >-
            terraform_state is the identifier to the plan file used to create
            the latest state.
          example: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json:
          type: string
          description: >-
            terraform_state_json is the identifier to the plan file used to
            create the latest state only in JSON format.
          example: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          type: array
          items:
            $ref: '#/components/schemas/WorkspaceTerraformVariableFiles'
          description: >-
            define an array of terraform variables files that belong to a
            different repository
          example:
            - repository: Quia omnis nobis tempore ipsam ea quia.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Vitae perferendis incidunt aut assumenda et.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Quia omnis nobis tempore ipsam ea quia.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Vitae perferendis incidunt aut assumenda et.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Quia omnis nobis tempore ipsam ea quia.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Vitae perferendis incidunt aut assumenda et.
              repository_path: ''
              repository_sha: abc10ed
            - repository: Quia omnis nobis tempore ipsam ea quia.
              repository_branch: main
              repository_commit: abc10ed
              repository_connector: Vitae perferendis incidunt aut assumenda et.
              repository_path: ''
              repository_sha: abc10ed
        terraform_variables:
          type: object
          description: list of terraform variables configured on the workspace.
          example:
            Ex ipsa voluptatem quia tenetur non.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
            Iusto magni corrupti.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
            Nobis veritatis quia porro iste.:
              created: 4167943712779243000
              key: 0s
              updated: 7113477059707596000
              value: Minima placeat provident maiores odio officia.
              value_type: secret
          additionalProperties:
            $ref: '#/components/schemas/VariableResource'
        terragrunt_provider:
          type: boolean
          description: Whether this workspace uses terragrunt to provision infrastructure
          default: false
          example: false
        terragrunt_version:
          type: string
          description: Terragrunt Version to use when provisioner is terragrunt.
          example: Saepe inventore voluptatem modi.
        updated:
          type: integer
          description: >-
            Modified is the unix timestamp at which the resource was last
            modified in milliseconds.
          example: 1940542757986578200
          format: int64
        variable_sets:
          type: array
          items:
            type: string
            example: Aperiam omnis rem.
          description: Attached Variable Sets references
          example:
            - Quis animi rerum nihil.
            - Quasi animi ad omnis laboriosam dolor.
      description: Show-WorkspaceResponseBody result type (default view)
      example:
        account: rb
        associated_template:
          template_id: w
          version: 3bl
        backend_locked: false
        budget: 0.664712
        cost_breakdown_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_diff_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        cost_estimation_enabled: true
        created: 1035692417036009300
        default_pipelines:
          Aliquam dolor voluptas quam.:
            project_pipeline: Architecto quia ut ratione earum impedit sed.
            workspace_pipeline: Quisquam enim rem similique.
          Est quis et.:
            project_pipeline: Architecto quia ut ratione earum impedit sed.
            workspace_pipeline: Quisquam enim rem similique.
        description: this is a more detailed explanation of the resource.
        environment_variables:
          Doloremque tempora dolores sit animi iure blanditiis.:
            created: 4167943712779243000
            key: 0s
            updated: 7113477059707596000
            value: Minima placeat provident maiores odio officia.
            value_type: secret
        identifier: r
        modules_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        name: resource name
        org: 3dj
        project: c5p
        provider_connector: Animi voluptatem at laboriosam omnis cum.
        provider_connectors:
          - connector_ref: 8be
            created: 1627590400
            id: 1417218168821303600
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 7475434293435524000
          - connector_ref: 8be
            created: 1627590400
            id: 1417218168821303600
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 7475434293435524000
          - connector_ref: 8be
            created: 1627590400
            id: 1417218168821303600
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 7475434293435524000
          - connector_ref: 8be
            created: 1627590400
            id: 1417218168821303600
            terragrunt_provider: true
            type: aws
            updated: 1627686800
            workspace_id: 7475434293435524000
        providers_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        provisioner: Dolores aliquam deleniti asperiores fuga.
        provisioner_data: Qui asperiores.
        provisioner_version: Velit reiciendis et qui.
        prune_sensitive_data: true
        repository: Voluptate excepturi omnis mollitia.
        repository_branch: main
        repository_commit: abc10ed
        repository_connector: Molestiae error temporibus.
        repository_path: ''
        repository_sha: abc10ed
        repository_submodules: recursive
        run_all: true
        sparse_checkout: Nihil alias.
        state_checksum: d21c1662d8ce2c74f24efdc8db93eb34473b86810aeccca4b1518f70b0ccde8f
        status: destroying
        tags:
          foo: bar
        terraform_plan_json: f9e21473daaa2674d862b67a1339f4570e86de17
        terraform_state: fc1200c7a7aa52109d762a9f005b149abef01479
        terraform_state_json: c4a2d99bc28d236098a095277b7eb0718d6be068
        terraform_variable_files:
          - repository: Quia omnis nobis tempore ipsam ea quia.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Vitae perferendis incidunt aut assumenda et.
            repository_path: ''
            repository_sha: abc10ed
          - repository: Quia omnis nobis tempore ipsam ea quia.
            repository_branch: main
            repository_commit: abc10ed
            repository_connector: Vitae perferendis incidunt aut assumenda et.
            repository_path: ''
            repository_sha: abc10ed
        terraform_variables:
          Est maiores eligendi nesciunt.:
            created: 4167943712779243000
            key: 0s
            updated: 7113477059707596000
            value: Minima placeat provident maiores odio officia.
            value_type: secret
        terragrunt_provider: true
        terragrunt_version: Provident quibusdam est omnis.
        updated: 4554595841385176600
        variable_sets:
          - Consectetur consequatur recusandae rem aliquam et.
          - Qui necessitatibus.
          - Esse commodi quo at possimus.
      required:
        - account
        - org
        - project
        - identifier
        - name
        - provider_connector
        - provisioner
        - repository_connector
        - terraform_variables
        - environment_variables
        - created
        - updated
        - provisioner_data
        - status
        - tags
    AccountUsage:
      type: object
      properties:
        accountId:
          type: string
          description: Account ID
          example: BdsgiWzwT7CQFeJl9XkQ3A
        developerCount:
          type: integer
          description: Developer count
          example: 25
          format: int64
        scanCount:
          type: integer
          description: Scan count
          example: 5000
          format: int64
      description: Account Usage
      example:
        accountId: BdsgiWzwT7CQFeJl9XkQ3A
        developerCount: 25
        scanCount: 5000
      required:
        - accountId
        - scanCount
        - developerCount
    AllIssueSummary:
      type: object
      properties:
        exemptionExpiration:
          type: integer
          description: Unix timestamp at which this Exemption will expire
          example: 1651578240
          format: int64
        exemptionId:
          type: string
          description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatus:
          type: string
          description: Status of project scoped exemption for this issue
          example: Pending
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        issueType:
          type: string
          description: Issue Type
          example: Et dolorem culpa iste dicta.
        lastDetected:
          type: integer
          description: Timestamp of the last detection of this issue
          example: 1634836529
          format: int64
        numOccurrences:
          type: number
          description: Number of occurrences of this issue against the latest baseline scan
          example: 12
          format: float
        numTargetsImpacted:
          type: number
          description: >-
            Number of targets impacted where this issue was found against the
            latest baseline scan
          example: 2
          format: float
        override:
          type: object
          description: Indicates the issue has been overridden
          example:
            originalSeverity: medium
            reason: snyk
          additionalProperties: true
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        title:
          type: string
          description: Title of the Security Issue
          example: >-
            Semgrep Finding:
            generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          maxLength: 128
      description: All issue summary
      example:
        exemptionExpiration: 1651578240
        exemptionId: abcdef1234567890ghijkl
        exemptionStatus: Pending
        id: abcdef1234567890ghijkl
        issueType: Magni in.
        lastDetected: 1634836529
        numOccurrences: 12
        numTargetsImpacted: 2
        override:
          originalSeverity: medium
          reason: snyk
        severityCode: High
        title: >-
          Semgrep Finding:
          generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
      required:
        - id
        - title
        - severityCode
        - numTargetsImpacted
        - numOccurrences
        - lastDetected
    AllIssueSummaryV2:
      type: object
      properties:
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        issueDescription:
          type: string
          description: Issue Description
          example: Et fugiat.
        issueType:
          type: string
          description: Issue Type
          example: Tenetur ut tempora.
        lastDetected:
          type: integer
          description: Timestamp of the last detection of this issue
          example: 1634836529
          format: int64
        scanner:
          type: string
          description: Scanner
          example: Nostrum dolores libero.
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        targetName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        targetVariantName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        title:
          type: string
          description: Title of the Security Issue
          example: >-
            Semgrep Finding:
            generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          maxLength: 128
      description: All issue summary V2
      example:
        id: abcdef1234567890ghijkl
        issueDescription: Culpa et et laborum tempore.
        issueType: Nihil quod et quis quae accusamus.
        lastDetected: 1634836529
        scanner: Velit culpa quas.
        severityCode: High
        targetName: NodeGoat
        targetVariantName: NodeGoat
        title: >-
          Semgrep Finding:
          generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
      required:
        - id
        - severityCode
        - issueDescription
        - issueType
        - scanner
        - targetName
        - targetVariantName
    AllIssuesDetailsResult:
      type: object
      properties:
        description:
          type: string
          description: Issue description
          example: Saepe enim sint labore modi at.
        impactedTargets:
          type: array
          items:
            $ref: '#/components/schemas/ImpactedTarget'
          description: List of Impacted Targets
          example:
            - executionId: abcdef1234567890ghijkl
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
              id: target1111111111111111
              lastDetected: 1634836529
              name: The Target Name
              numOccurrences: 10
              pipelineId: example_pipeline
              userId: Sit qui minus omnis.
              variantName: Vero sint est consequatur.
            - executionId: abcdef1234567890ghijkl
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
              id: target1111111111111111
              lastDetected: 1634836529
              name: The Target Name
              numOccurrences: 10
              pipelineId: example_pipeline
              userId: Sit qui minus omnis.
              variantName: Vero sint est consequatur.
            - executionId: abcdef1234567890ghijkl
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
              id: target1111111111111111
              lastDetected: 1634836529
              name: The Target Name
              numOccurrences: 10
              pipelineId: example_pipeline
              userId: Sit qui minus omnis.
              variantName: Vero sint est consequatur.
        issueType:
          type: string
          description: Issue Type
          example: Iure omnis et.
        lastDetected:
          type: number
          description: Timestamp of the last detection of this issue
          example: 1634836529
          format: float
        override:
          type: object
          description: Indicates the issue has been overridden
          example:
            originalSeverity: medium
            reason: snyk
          additionalProperties: true
        pagination:
          $ref: '#/components/schemas/StoPagination'
        referenceIdentifiers:
          type: array
          items:
            $ref: '#/components/schemas/RefIds'
          description: Reference Identifiers
          example:
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
        scanTool:
          type: string
          description: Product name of the scan tool used in this step
          example: owasp
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        targetType:
          type: string
          description: Target Type
          example: Error eum occaecati eum aut quia.
        title:
          type: string
          description: Title of the Security Issue
          example: >-
            Semgrep Finding:
            generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          maxLength: 128
      example:
        description: Nam ipsam at est.
        impactedTargets:
          - executionId: abcdef1234567890ghijkl
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
            id: target1111111111111111
            lastDetected: 1634836529
            name: The Target Name
            numOccurrences: 10
            pipelineId: example_pipeline
            userId: Sit qui minus omnis.
            variantName: Vero sint est consequatur.
          - executionId: abcdef1234567890ghijkl
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
            id: target1111111111111111
            lastDetected: 1634836529
            name: The Target Name
            numOccurrences: 10
            pipelineId: example_pipeline
            userId: Sit qui minus omnis.
            variantName: Vero sint est consequatur.
          - executionId: abcdef1234567890ghijkl
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Aspernatur sapiente et eveniet tenetur qui.
            id: target1111111111111111
            lastDetected: 1634836529
            name: The Target Name
            numOccurrences: 10
            pipelineId: example_pipeline
            userId: Sit qui minus omnis.
            variantName: Vero sint est consequatur.
        issueType: Illo illum ipsum quia.
        lastDetected: 1634836529
        override:
          originalSeverity: medium
          reason: snyk
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        referenceIdentifiers:
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
        scanTool: owasp
        severityCode: High
        targetType: Dolores molestiae eos magnam et.
        title: >-
          Semgrep Finding:
          generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
      required:
        - title
        - description
        - severityCode
        - lastDetected
        - scanTool
        - targetType
        - referenceIdentifiers
        - impactedTargets
        - pagination
    AllIssuesFiltersResult:
      type: object
      properties:
        latestBaselineScans:
          type: array
          items:
            $ref: '#/components/schemas/LatestBaselineScanInfo'
          example:
            - pipelineId: pipeline_1
              scanTool: owasp
              scanToolName: OWASP
              targetId: abcdef1234567890ghijkl
              targetName: The Target
              targetType: repository
            - pipelineId: pipeline_1
              scanTool: owasp
              scanToolName: OWASP
              targetId: abcdef1234567890ghijkl
              targetName: The Target
              targetType: repository
      example:
        latestBaselineScans:
          - pipelineId: pipeline_1
            scanTool: owasp
            scanToolName: OWASP
            targetId: abcdef1234567890ghijkl
            targetName: The Target
            targetType: repository
          - pipelineId: pipeline_1
            scanTool: owasp
            scanToolName: OWASP
            targetId: abcdef1234567890ghijkl
            targetName: The Target
            targetType: repository
          - pipelineId: pipeline_1
            scanTool: owasp
            scanToolName: OWASP
            targetId: abcdef1234567890ghijkl
            targetName: The Target
            targetType: repository
      required:
        - latestBaselineScans
    AllIssuesListRequestBody:
      type: object
      properties:
        artifactFingerprints:
          type: array
          items:
            type: string
            example: ysm
            maxLength: 64
          description: Artifact fingerprints for lookup
          example:
            - 1ly
            - dki
            - 17r
          maxItems: 100
        issueTypes:
          type: string
          example: SAST
          pattern: >-
            ^(SAST|DAST|SCA|IAC|SECRET|MISCONFIG|BUG_SMELLS|CODE_SMELLS|CODE_COVERAGE|EXTERNAL_POLICY)(,SAST|,DAST|,SCA|,IAC|,SECRET|,MISCONFIG|,BUG_SMELLS|,CODE_SMELLS|,CODE_COVERAGE|,EXTERNAL_POLICY)*$
        page:
          type: integer
          description: Page number to fetch (starting from 0)
          default: 0
          example: 4
          format: int64
          minimum: 0
        pageSize:
          type: integer
          description: Number of results per page
          default: 30
          example: 50
          format: int64
          minimum: 1
          maximum: 100
        scanTools:
          type: string
          example: owasp,zap
          pattern: ^([a-zA-Z0-9_-]+)(,[a-zA-Z0-9_-]+)*$
        search:
          type: string
          example: CWE-123
          maxLength: 256
        severityCodes:
          type: string
          example: Critical,High,Medium
          pattern: >-
            ^(Critical|High|Medium|Low|Info)(,Critical|,High|,Medium|,Low|,Info)*$
        targetNames:
          type: string
          example: repo/abc,another-repo/xyz
          pattern: ^([a-zA-Z0-9/_-]+)(,[a-zA-Z0-9/_-]+)*$
        targetTypes:
          type: string
          example: repository,container
          pattern: >-
            ^(repository|container|instance|configuration)(,repository|,container|,instance|,configuration)*$
        targetVariants:
          type: array
          items:
            $ref: '#/components/schemas/TargetAndVariantNameRequired'
          description: Target-variant pairs for lookup
          example:
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
          maxItems: 100
      example:
        artifactFingerprints:
          - uso
          - xm7
          - ycu
        issueTypes: SAST
        page: 4
        pageSize: 50
        scanTools: owasp,zap
        search: CWE-123
        severityCodes: Critical,High,Medium
        targetNames: repo/abc,another-repo/xyz
        targetTypes: repository,container
        targetVariants:
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
    AllIssuesListResult:
      type: object
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/AllIssueSummary'
          description: >-
            Issues related to the latest scans of a baseline in a specific
            project
          example:
            - exemptionExpiration: 1651578240
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Pending
              id: abcdef1234567890ghijkl
              issueType: Voluptates at ad maxime sed ea.
              lastDetected: 1634836529
              numOccurrences: 12
              numTargetsImpacted: 2
              override:
                originalSeverity: medium
                reason: snyk
              severityCode: High
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
            - exemptionExpiration: 1651578240
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Pending
              id: abcdef1234567890ghijkl
              issueType: Voluptates at ad maxime sed ea.
              lastDetected: 1634836529
              numOccurrences: 12
              numTargetsImpacted: 2
              override:
                originalSeverity: medium
                reason: snyk
              severityCode: High
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
            - exemptionExpiration: 1651578240
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Pending
              id: abcdef1234567890ghijkl
              issueType: Voluptates at ad maxime sed ea.
              lastDetected: 1634836529
              numOccurrences: 12
              numTargetsImpacted: 2
              override:
                originalSeverity: medium
                reason: snyk
              severityCode: High
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
            - exemptionExpiration: 1651578240
              exemptionId: abcdef1234567890ghijkl
              exemptionStatus: Pending
              id: abcdef1234567890ghijkl
              issueType: Voluptates at ad maxime sed ea.
              lastDetected: 1634836529
              numOccurrences: 12
              numTargetsImpacted: 2
              override:
                originalSeverity: medium
                reason: snyk
              severityCode: High
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
        pagination:
          $ref: '#/components/schemas/StoPagination'
      example:
        issues:
          - exemptionExpiration: 1651578240
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Pending
            id: abcdef1234567890ghijkl
            issueType: Voluptates at ad maxime sed ea.
            lastDetected: 1634836529
            numOccurrences: 12
            numTargetsImpacted: 2
            override:
              originalSeverity: medium
              reason: snyk
            severityCode: High
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          - exemptionExpiration: 1651578240
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Pending
            id: abcdef1234567890ghijkl
            issueType: Voluptates at ad maxime sed ea.
            lastDetected: 1634836529
            numOccurrences: 12
            numTargetsImpacted: 2
            override:
              originalSeverity: medium
              reason: snyk
            severityCode: High
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          - exemptionExpiration: 1651578240
            exemptionId: abcdef1234567890ghijkl
            exemptionStatus: Pending
            id: abcdef1234567890ghijkl
            issueType: Voluptates at ad maxime sed ea.
            lastDetected: 1634836529
            numOccurrences: 12
            numTargetsImpacted: 2
            override:
              originalSeverity: medium
              reason: snyk
            severityCode: High
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - issues
        - pagination
    AllIssuesListResultV2:
      type: object
      properties:
        counts:
          $ref: '#/components/schemas/FrontendIssueCounts'
        issues:
          type: array
          items:
            $ref: '#/components/schemas/AllIssueSummaryV2'
          description: Issues related to the latest scans of specified target and variant
          example:
            - id: abcdef1234567890ghijkl
              issueDescription: Ex ad eius.
              issueType: Necessitatibus id reiciendis error facere.
              lastDetected: 1634836529
              scanner: Non facilis reiciendis sed.
              severityCode: High
              targetName: NodeGoat
              targetVariantName: NodeGoat
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
            - id: abcdef1234567890ghijkl
              issueDescription: Ex ad eius.
              issueType: Necessitatibus id reiciendis error facere.
              lastDetected: 1634836529
              scanner: Non facilis reiciendis sed.
              severityCode: High
              targetName: NodeGoat
              targetVariantName: NodeGoat
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
            - id: abcdef1234567890ghijkl
              issueDescription: Ex ad eius.
              issueType: Necessitatibus id reiciendis error facere.
              lastDetected: 1634836529
              scanner: Non facilis reiciendis sed.
              severityCode: High
              targetName: NodeGoat
              targetVariantName: NodeGoat
              title: >-
                Semgrep Finding:
                generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
        pagination:
          $ref: '#/components/schemas/StoPagination'
      example:
        counts:
          active: 150
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        issues:
          - id: abcdef1234567890ghijkl
            issueDescription: Ex ad eius.
            issueType: Necessitatibus id reiciendis error facere.
            lastDetected: 1634836529
            scanner: Non facilis reiciendis sed.
            severityCode: High
            targetName: NodeGoat
            targetVariantName: NodeGoat
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          - id: abcdef1234567890ghijkl
            issueDescription: Ex ad eius.
            issueType: Necessitatibus id reiciendis error facere.
            lastDetected: 1634836529
            scanner: Non facilis reiciendis sed.
            severityCode: High
            targetName: NodeGoat
            targetVariantName: NodeGoat
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          - id: abcdef1234567890ghijkl
            issueDescription: Ex ad eius.
            issueType: Necessitatibus id reiciendis error facere.
            lastDetected: 1634836529
            scanner: Non facilis reiciendis sed.
            severityCode: High
            targetName: NodeGoat
            targetVariantName: NodeGoat
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          - id: abcdef1234567890ghijkl
            issueDescription: Ex ad eius.
            issueType: Necessitatibus id reiciendis error facere.
            lastDetected: 1634836529
            scanner: Non facilis reiciendis sed.
            severityCode: High
            targetName: NodeGoat
            targetVariantName: NodeGoat
            title: >-
              Semgrep Finding:
              generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - issues
        - pagination
    AllIssuesOccurrenceDetailsResult:
      type: object
      properties:
        description:
          type: string
          description: Issue description
          example: Praesentium amet aliquid cum est et doloribus.
        exemptionId:
          type: string
          description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        issueType:
          type: string
          description: Issue Type
          example: Modi odit voluptatem facere aut et sed.
        occurrences:
          type: array
          items:
            type: object
            example:
              Blanditiis voluptates sint ducimus numquam.: Beatae voluptatum inventore quis at est.
            additionalProperties: true
          description: List of occurrences
          example:
            - Odio qui quia officiis perspiciatis voluptatem.: Aut accusantium est.
            - Esse sit consequuntur.: Doloremque velit possimus.
              Possimus neque consequatur odit et.: Sunt eos quam cum porro.
              Quos veniam eius totam id.: Omnis sapiente repellendus ipsum.
            - Dolores totam voluptatem ut laborum.: Non cupiditate velit.
        pagination:
          $ref: '#/components/schemas/StoPagination'
        referenceIdentifiers:
          type: array
          items:
            $ref: '#/components/schemas/RefIds'
          description: Reference Identifiers
          example:
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
            - id: Voluptatibus sit iure aliquam doloribus.
              type: Recusandae necessitatibus sit ullam eius.
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        targetName:
          type: string
          description: The name of the target of the pipeline step's scan
          example: The Target
        targetType:
          type: string
          description: Target Type
          example: Qui eaque ipsam.
        title:
          type: string
          description: Title of the Security Issue
          example: >-
            Semgrep Finding:
            generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
          maxLength: 128
        variantName:
          type: string
          description: Variant name
          example: Iste labore dignissimos tenetur modi.
      example:
        description: Placeat excepturi est tempora quis eligendi.
        exemptionId: abcdef1234567890ghijkl
        issueType: Assumenda veniam ea voluptatem tenetur nihil.
        occurrences:
          - Aliquid quasi aut occaecati commodi.: Perferendis et provident voluptatum sit.
          - Autem et eveniet nostrum maiores asperiores.: Quia sunt assumenda.
            Molestias amet odio.: Ex quia minus quia.
            Similique dolores aliquam in est possimus.: Similique eos quidem tenetur.
          - Adipisci qui maiores est.: Nostrum magnam magni.
            Odit laudantium ab.: Natus enim inventore et expedita.
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        referenceIdentifiers:
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
          - id: Voluptatibus sit iure aliquam doloribus.
            type: Recusandae necessitatibus sit ullam eius.
        severityCode: High
        targetName: The Target
        targetType: Quia illo repellendus ducimus.
        title: >-
          Semgrep Finding:
          generic.secrets.security.detected-bcrypt-hash.detected-bcrypt-hash
        variantName: Sint eum est eos dolor.
      required:
        - title
        - targetName
        - variantName
        - targetType
        - severityCode
        - description
        - occurrences
    ApproveExemptionRequestBody:
      type: object
      properties:
        approverId:
          type: string
          description: User ID the user who approved or rejected this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        comment:
          type: string
          description: Comment to be added to the Exemption approval or rejection
          example: This is a comment for the approval or rejection of the exemption
          maxLength: 1024
      example:
        approverId: user111111111111111111
        comment: This is a comment for the approval or rejection of the exemption
      required:
        - approverId
        - type
        - reason
        - requesterId
        - pendingChanges
        - issueId
        - status
        - created
        - lastModified
    AugmentRemediationMetadata:
      type: object
      properties:
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/AugmentRemediationWarning'
          example:
            - message: Quo natus est non enim quia.
              source: Ducimus aperiam tenetur et qui a.
            - message: Quo natus est non enim quia.
              source: Ducimus aperiam tenetur et qui a.
      example:
        warnings:
          - message: Quo natus est non enim quia.
            source: Ducimus aperiam tenetur et qui a.
          - message: Quo natus est non enim quia.
            source: Ducimus aperiam tenetur et qui a.
          - message: Quo natus est non enim quia.
            source: Ducimus aperiam tenetur et qui a.
          - message: Quo natus est non enim quia.
            source: Ducimus aperiam tenetur et qui a.
      required:
        - warnings
    AugmentRemediationResult:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/AugmentRemediationMetadata'
        remediationCode:
          type: string
          example: Consequatur eius.
        remediationContext:
          type: string
          example: In sed.
        repoContent:
          type: string
          example: Natus tempore sit eos.
      example:
        metadata:
          warnings:
            - message: Quo natus est non enim quia.
              source: Ducimus aperiam tenetur et qui a.
            - message: Quo natus est non enim quia.
              source: Ducimus aperiam tenetur et qui a.
            - message: Quo natus est non enim quia.
              source: Ducimus aperiam tenetur et qui a.
        remediationCode: Voluptates ducimus odio libero in vel aut.
        remediationContext: Maxime consequuntur voluptates aut necessitatibus dolorum animi.
        repoContent: Dolorum impedit labore nostrum nam quis.
      required:
        - remediationContext
        - metadata
    AugmentRemediationWarning:
      type: object
      properties:
        message:
          type: string
          example: Repellat sint voluptas consectetur nisi illum.
        source:
          type: string
          example: Velit fugit blanditiis.
      example:
        message: Deleniti tempore quam autem ut consequatur aut.
        source: Magnam aspernatur necessitatibus eaque possimus omnis.
      required:
        - source
        - message
    BaselineExecutions:
      type: object
      properties:
        executionIds:
          type: array
          items:
            type: string
            example: Rerum non sapiente neque sequi non vero.
          description: Harness Execution IDs of the most recent baseline scans
          example:
            - Ut ipsa eum et tempora.
            - Sed beatae asperiores rerum ad qui.
            - Veritatis ab sed aut voluptates.
            - Nemo ipsam aspernatur quia eveniet.
      example:
        executionIds:
          - A impedit.
          - Omnis accusantium dolores aliquid distinctio aut molestias.
          - Quos at esse non ut ut occaecati.
          - Voluptas velit velit.
      required:
        - executionIds
    CreateExemptionRequestBody:
      type: object
      properties:
        exemptFutureOccurrences:
          type: boolean
          description: States if the user wants to exempt future occurrences of the issue
          default: true
          example: false
        expiration:
          type: integer
          description: Unix timestamp at which this Exemption will expire
          example: 1651578240
          format: int64
        issueId:
          type: string
          description: Issue ID associated with the Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        link:
          type: string
          description: Link to a related ticket
          example: https://example.com/ABC-1234
          maxLength: 1024
        occurrences:
          type: array
          items:
            type: integer
            example: 8771291791955878000
            format: int64
          description: Array of occurrence Ids
          example:
            - 42
            - 666
        pendingChanges:
          $ref: '#/components/schemas/PendingChanges'
        pipelineId:
          type: string
          description: >-
            ID of the Harness Pipeline to which the exemption applies. You must
            also specify "projectId" and "orgId". Cannot be specified alongside
            "targetId".
          example: your_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        reason:
          type: string
          description: Text describing why this Exemption is necessary
          example: Waiting on upstream bug fix
          maxLength: 1024
        requesterId:
          type: string
          description: User ID of user who requested this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        scanId:
          type: string
          description: >-
            ID of the Harness Scan to determine all the occurrences for the
            scan-issue. You must also specify "projectId", "orgId" and
            "targetId". Cannot be specified alongside "pipelineId".
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        search:
          type: string
          description: Search parameter to find filtered occurrences of the issue
          example: CWE-123,5
          maxLength: 256
        targetId:
          type: string
          description: >-
            ID of the Target to which the exemption applies. Cannot be specified
            alongside "projectId" or "pipelineId".
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        type:
          type: string
          description: >-
            Type of Exemption (Compensating Controls / Acceptable Use /
            Acceptable Risk / False Positive / Fix Unavailable / Other)
          example: Other
          enum:
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Other
      example:
        exemptFutureOccurrences: false
        expiration: 1651578240
        issueId: abcdef1234567890ghijkl
        link: https://example.com/ABC-1234
        occurrences:
          - 42
          - 666
        pendingChanges:
          durationDays: 7
        pipelineId: your_pipeline
        reason: Waiting on upstream bug fix
        requesterId: user111111111111111111
        scanId: abcdef1234567890ghijkl
        search: CWE-123,5
        targetId: abcdef1234567890ghijkl
        type: Other
      required:
        - type
        - reason
        - requesterId
        - pendingChanges
        - issueId
        - status
        - id
        - created
        - lastModified
    CreateIssueRequestBody:
      type: object
      properties:
        details:
          type: object
          description: Issue details common to all occurrences
          example:
            package: json-schema
            version: v0.2.3
          additionalProperties: true
        exemptionId:
          type: string
          description: ID of the associated Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        key:
          type: string
          description: Compression/deduplication key
          example: json-schema@0.2.3
          maxLength: 512
        keyPattern:
          type: array
          items:
            type: string
            example: Eum aut qui voluptatem ea.
          description: The pattern of fields used to generate this Security Issue's Key
          example:
            - library_name
            - library_version
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int32
        occurrences:
          type: array
          items:
            type: object
            example:
              Adipisci quam quia.: Alias et.
              Et recusandae quas ipsum sunt.: Et rerum quis quasi.
              Unde eligendi vel fugiat ut.: Saepe et tenetur qui nihil.
            additionalProperties: true
          description: Array of details unique to each occurrence
          example:
            - line: '42'
            - line: '666'
        productId:
          type: string
          description: The scan tool that identified this Security Issue
          example: product1234567890abcde
          pattern: ^[a-zA-Z0-9_-]{22}$
        scanId:
          type: string
          description: The Security Scan execution that detected this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: float
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        subproduct:
          type: string
          description: The subproduct that identified this Security Issue
          example: product
        targetVariantName:
          type: string
          description: Name of the associated Target and Variant
          example: nodegoat:master
          pattern: ^[a-zA-Z0-9_-]{22}$
        title:
          type: string
          description: Title of the Security Issue
          example: json-schema@0.2.3 is vulnerable to Prototype Pollution
          maxLength: 128
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      example:
        details:
          package: json-schema
          version: v0.2.3
        exemptionId: abcdef1234567890ghijkl
        key: json-schema@0.2.3
        keyPattern:
          - library_name
          - library_version
        numOccurrences: 10
        occurrences:
          - line: '42'
          - line: '666'
        productId: product1234567890abcde
        scanId: abcdef1234567890ghijkl
        severity: 8.5
        severityCode: High
        subproduct: product
        targetVariantName: nodegoat:master
        title: json-schema@0.2.3 is vulnerable to Prototype Pollution
        type: SAST
      required:
        - title
        - key
        - severity
        - severityCode
        - productId
        - details
        - scanId
        - keyPattern
        - id
        - created
    CreatePullRequestRequestBody:
      type: object
      properties:
        branch:
          type: string
          example: develop
        description:
          type: string
          example: A description of the Pull Request.
        id:
          type: string
          description: The ID of the Security Issue to create a Pull Request for
          example: 1234567890abcdefghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        pipelineUrl:
          type: string
          example: https://app.harness.io/path/to/pipeline
        remediationCode:
          type: string
          example: |-
            func example() int {
              return 0
            }
        remediationCodeEnd:
          type: integer
          example: 16
          format: int64
        remediationCodePath:
          type: string
          example: path/to/code
        remediationCodeStart:
          type: integer
          example: 14
          format: int64
        remediationContext:
          type: string
          example: Context to the function.
        remediationIndent:
          type: integer
          example: 9
          format: int64
        vulnerableCode:
          type: string
          example: |-
            func example() int {
              return 0
            }
      example:
        branch: develop
        description: A description of the Pull Request.
        id: 1234567890abcdefghijkl
        occurrenceId: 12345
        pipelineUrl: https://app.harness.io/path/to/pipeline
        remediationCode: |-
          func example() int {
            return 0
          }
        remediationCodeEnd: 16
        remediationCodePath: path/to/code
        remediationCodeStart: 14
        remediationContext: Context to the function.
        remediationIndent: 9
        vulnerableCode: |-
          func example() int {
            return 0
          }
      required:
        - pipelineUrl
        - id
        - occurrenceId
        - vulnerableCode
        - remediationCode
        - remediationCodePath
        - remediationCodeStart
        - remediationCodeEnd
        - remediationContext
        - description
        - branch
    CreateScanRequestBody:
      type: object
      properties:
        codeCoverage:
          type: number
          description: The Code Coverage value for the Scan
          example: 65.5
          format: float
        executionId:
          type: string
          description: Pipeline Execution ID associated with the Scan
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        gitMetadata:
          $ref: '#/components/schemas/GitMetadata'
        orgId:
          type: string
          description: Harness Organization ID
          example: your_harness_org
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        pipelineId:
          type: string
          description: Harness Organization ID
          example: your_harness_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        productId:
          type: string
          description: The Scan Product used for the Scan
          example: product111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        projectId:
          type: string
          description: Harness Project ID
          example: your_harness_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        refinementVersion:
          type: string
          description: The Issue refinement version used for this Scan
          example: 1.0.5
        stageId:
          type: string
          description: Pipeline Stage ID associated with the Scan
          example: stage_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        status:
          type: string
          description: Current status of the Scan
          example: Succeeded
          enum:
            - Pending
            - Running
            - Succeeded
            - Failed
        stepId:
          type: string
          description: Pipeline Step ID associated with the Scan
          example: step_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        subproduct:
          type: string
          description: The Scan Subproduct used for the Scan
          example: owasp
          format: binary
        targetVariantId:
          type: string
          description: The Target Variant associated with the Scan
          example: variant111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
      example:
        codeCoverage: 65.5
        executionId: abcdef1234567890ghijkl
        gitMetadata:
          detectedName: Sunt doloremque corporis facere aut quasi fugit.
          detectedVariant: Aut repellat.
          droneCorrelated: true
          provider: Quia sed dolorem suscipit dolor.
          pullRequestNumber: 11
          repositoryHttp: https://github.com/harness/drone-cli.git
          repositoryPath:
            - Sit consequatur facilis.
            - Ex sapiente.
          repositorySsh: git@github.com:harness/drone-cli.git
          sourceBranch: feat/shiny-object
          targetBranch: develop
          workspace: /harness
        orgId: your_harness_org
        pipelineId: your_harness_pipeline
        productId: product111111111111111
        projectId: your_harness_project
        refinementVersion: 1.0.5
        stageId: stage_id
        status: Succeeded
        stepId: step_id
        subproduct: owasp
        targetVariantId: variant111111111111111
      required:
        - targetVariantId
        - orgId
        - projectId
        - pipelineId
        - executionId
        - stageId
        - stepId
        - productId
        - status
        - refinementVersion
        - id
        - created
        - lastModified
    CreateTargetRequestBody:
      type: object
      properties:
        baselineRegEx:
          type: string
          description: >-
            RegEx to match for dynamically selecting the Baseline for this Scan
            Target. Must be compatible with the RE2 standard.
          example: release_.*
          maxLength: 128
        baselineVariantId:
          type: string
          description: ID of baseline Target Variant for Issue comparison
          example: abcdef1234567890ghijkl
          pattern: ^([a-zA-Z0-9_-]{22}|)$
        directory:
          type: string
          description: Directory within the Test Target to be scanned
          example: app/src
          maxLength: 1024
        name:
          type: string
          description: Name of the Test Target
          example: NodeGoat
          pattern: ^[a-zA-Z0-9_.:/|()-]+$
          maxLength: 128
        type:
          type: string
          description: Test Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        url:
          type: string
          description: URL used to access the Test Target
          example: https://github.com/example/repo
          maxLength: 1024
      example:
        baselineRegEx: release_.*
        baselineVariantId: abcdef1234567890ghijkl
        directory: app/src
        name: NodeGoat
        type: repository
        url: https://github.com/example/repo
      required:
        - id
        - created
        - lastModified
        - name
        - type
    CreateTargetVariantRequestBody:
      type: object
      properties:
        hash:
          type: string
          description: Git Commit or Container Image hash
          example: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
          maxLength: 64
        parameters:
          type: object
          description: Parameters for this Variant, as a JSON-encoded string
          example:
            branch: main
          additionalProperties:
            type: string
            example: Velit ipsum.
      example:
        hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
        parameters:
          branch: main
      required:
        - parameters
        - id
        - created
        - lastModified
    ExecutionArtifactSummaryRequestBody:
      type: object
      properties:
        artifactFingerprints:
          type: array
          items:
            type: string
            example: gad
            maxLength: 64
          description: Artifact fingerprints for lookup
          example:
            - lm4
            - hdr
            - 52x
          maxItems: 100
        targetVariants:
          type: array
          items:
            $ref: '#/components/schemas/TargetAndVariantNameRequired'
          description: Target-variant pairs for lookup
          example:
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
            - targetName: Dolorem sed qui harum et.
              targetType: repository
              targetVariantName: Doloremque corporis enim.
          maxItems: 100
      example:
        artifactFingerprints:
          - g1k
          - 19u
          - aqe
        targetVariants:
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
          - targetName: Dolorem sed qui harum et.
            targetType: repository
            targetVariantName: Doloremque corporis enim.
    ExecutionIssueCountsRequestBody:
      type: object
      properties:
        targetVariants:
          type: array
          items:
            $ref: '#/components/schemas/TargetAndVariantName'
          description: Target-variant pairs for lookup
          example:
            - targetName: Voluptas facilis tempore facere.
              targetType: repository
              targetVariantName: Qui ut quia error ipsa.
            - targetName: Voluptas facilis tempore facere.
              targetType: repository
              targetVariantName: Qui ut quia error ipsa.
            - targetName: Voluptas facilis tempore facere.
              targetType: repository
              targetVariantName: Qui ut quia error ipsa.
          maxItems: 100
      example:
        targetVariants:
          - targetName: Voluptas facilis tempore facere.
            targetType: repository
            targetVariantName: Qui ut quia error ipsa.
          - targetName: Voluptas facilis tempore facere.
            targetType: repository
            targetVariantName: Qui ut quia error ipsa.
          - targetName: Voluptas facilis tempore facere.
            targetType: repository
            targetVariantName: Qui ut quia error ipsa.
    Exemption:
      type: object
      properties:
        approverId:
          type: string
          description: User ID the user who approved or rejected this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        canApproveFor:
          type: array
          items:
            type: string
            example: PROJECT
            enum:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
              - TARGET
          description: Consists of RBAC scopes for an user associated with this Exemption
          example:
            - ACCOUNT
            - ORG
            - PROJECT
            - PIPELINE
        canCancel:
          type: boolean
          description: States if the user can cancel the exemption
          default: false
          example: true
        canCreate:
          type: boolean
          description: States whether the user can create or reopen the exemption
          default: false
          example: true
        canReApprove:
          type: boolean
          description: >-
            States if the user can re-approve the exemption for the exemption's
            scope
          default: false
          example: true
        canReject:
          type: boolean
          description: States whether the user can reject the exemption
          default: false
          example: true
        comment:
          type: string
          description: The additional comment to include with the exemption
          example: This exemption was reviewed by the security team.
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        exemptionStatusAtScan:
          type: string
          description: Exemption's status at the Security Scan created time
          example: Approved
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        expiration:
          type: integer
          description: Unix timestamp at which this Exemption will expire
          example: 1651578240
          format: int64
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        isDeleted:
          type: boolean
          description: States if the exemption is deleted
          default: false
          example: true
        issueId:
          type: string
          description: Issue ID associated with the Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        link:
          type: string
          description: Link to a related ticket
          example: https://example.com/ABC-1234
          maxLength: 1024
        numOccurrences:
          type: integer
          description: >-
            States how may occurrences are associated with the exemption, if not
            an issue level exemption
          default: 0
          example: 10
          format: int64
        occurrences:
          type: array
          items:
            type: integer
            example: 7251890272479871000
            format: int64
          description: Array of occurrence Ids
          example:
            - 42
            - 666
        orgId:
          type: string
          description: >-
            ID of the Harness Organization to which the exemption applies.
            Cannot be specified alongside "targetId".
          example: your_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        orgName:
          type: string
          description: Name of the organization associated with the exemption
          example: Organization Name
        pendingChanges:
          $ref: '#/components/schemas/PendingChanges'
        pipelineId:
          type: string
          description: >-
            ID of the Harness Pipeline to which the exemption applies. You must
            also specify "projectId" and "orgId". Cannot be specified alongside
            "targetId".
          example: your_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        projectId:
          type: string
          description: >-
            ID of the Harness Project to which the exemption applies. You must
            also specify "orgId". Cannot be specified alongside "targetId".
          example: your_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        projectName:
          type: string
          description: Name of the project associated with the exemption
          example: Project Name
        reason:
          type: string
          description: Text describing why this Exemption is necessary
          example: Waiting on upstream bug fix
          maxLength: 1024
        requesterId:
          type: string
          description: User ID of user who requested this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        scanId:
          type: string
          description: >-
            ID of the Harness Scan to determine all the occurrences for the
            scan-issue. You must also specify "projectId", "orgId" and
            "targetId". Cannot be specified alongside "pipelineId".
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        scope:
          type: string
          description: States the scope for the exemption
          example: PROJECT
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - PIPELINE
            - TARGET
        search:
          type: string
          description: Search parameter to find filtered occurrences of the issue
          example: CWE-123,5
          maxLength: 256
        status:
          type: string
          description: Approval status of Exemption
          default: Pending
          example: Canceled
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
            - Canceled
        targetId:
          type: string
          description: >-
            ID of the Target to which the exemption applies. Cannot be specified
            alongside "projectId" or "pipelineId".
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        type:
          type: string
          description: >-
            Type of Exemption (Compensating Controls / Acceptable Use /
            Acceptable Risk / False Positive / Fix Unavailable / Other)
          example: Other
          enum:
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Other
      description: Information about an Exemption
      example:
        approverId: user111111111111111111
        canApproveFor:
          - ACCOUNT
          - ORG
          - PROJECT
          - PIPELINE
        canCancel: true
        canCreate: true
        canReApprove: true
        canReject: true
        comment: This exemption was reviewed by the security team.
        created: 1651578240
        exemptionStatusAtScan: Approved
        expiration: 1651578240
        id: abcdef1234567890ghijkl
        isDeleted: true
        issueId: abcdef1234567890ghijkl
        lastModified: 1651578240
        link: https://example.com/ABC-1234
        numOccurrences: 10
        occurrences:
          - 42
          - 666
        orgId: your_project
        orgName: Organization Name
        pendingChanges:
          durationDays: 7
        pipelineId: your_pipeline
        projectId: your_project
        projectName: Project Name
        reason: Waiting on upstream bug fix
        requesterId: user111111111111111111
        scanId: abcdef1234567890ghijkl
        scope: PROJECT
        search: CWE-123,5
        status: Rejected
        targetId: abcdef1234567890ghijkl
        type: Other
      required:
        - type
        - reason
        - requesterId
        - pendingChanges
        - issueId
        - status
        - id
        - created
        - lastModified
    ExemptionImpactedTargetsResult:
      type: object
      properties:
        impactedTargets:
          type: array
          items:
            $ref: '#/components/schemas/FrontendExemptionTargets'
          description: Impacted target details
          example:
            - executionId: abcdef1234567890ghijkl
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              lastScanned: 1634836529
              name: NodeGoat
              numExemptedOccurrences: 150
              numOccurrences: 150
              orgId: example_org
              parameters:
                branch: main
              pipelineId: pipeline_1
              projectId: example_project
              scanId: abcdef1234567890ghijkl
              targetId: abcdef1234567890ghijkl
              type: repository
            - executionId: abcdef1234567890ghijkl
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              lastScanned: 1634836529
              name: NodeGoat
              numExemptedOccurrences: 150
              numOccurrences: 150
              orgId: example_org
              parameters:
                branch: main
              pipelineId: pipeline_1
              projectId: example_project
              scanId: abcdef1234567890ghijkl
              targetId: abcdef1234567890ghijkl
              type: repository
            - executionId: abcdef1234567890ghijkl
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              lastScanned: 1634836529
              name: NodeGoat
              numExemptedOccurrences: 150
              numOccurrences: 150
              orgId: example_org
              parameters:
                branch: main
              pipelineId: pipeline_1
              projectId: example_project
              scanId: abcdef1234567890ghijkl
              targetId: abcdef1234567890ghijkl
              type: repository
        pagination:
          $ref: '#/components/schemas/StoPagination'
      description: List of targets for an exemption
      example:
        impactedTargets:
          - executionId: abcdef1234567890ghijkl
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            lastScanned: 1634836529
            name: NodeGoat
            numExemptedOccurrences: 150
            numOccurrences: 150
            orgId: example_org
            parameters:
              branch: main
            pipelineId: pipeline_1
            projectId: example_project
            scanId: abcdef1234567890ghijkl
            targetId: abcdef1234567890ghijkl
            type: repository
          - executionId: abcdef1234567890ghijkl
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            lastScanned: 1634836529
            name: NodeGoat
            numExemptedOccurrences: 150
            numOccurrences: 150
            orgId: example_org
            parameters:
              branch: main
            pipelineId: pipeline_1
            projectId: example_project
            scanId: abcdef1234567890ghijkl
            targetId: abcdef1234567890ghijkl
            type: repository
          - executionId: abcdef1234567890ghijkl
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            lastScanned: 1634836529
            name: NodeGoat
            numExemptedOccurrences: 150
            numOccurrences: 150
            orgId: example_org
            parameters:
              branch: main
            pipelineId: pipeline_1
            projectId: example_project
            scanId: abcdef1234567890ghijkl
            targetId: abcdef1234567890ghijkl
            type: repository
          - executionId: abcdef1234567890ghijkl
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            lastScanned: 1634836529
            name: NodeGoat
            numExemptedOccurrences: 150
            numOccurrences: 150
            orgId: example_org
            parameters:
              branch: main
            pipelineId: pipeline_1
            projectId: example_project
            scanId: abcdef1234567890ghijkl
            targetId: abcdef1234567890ghijkl
            type: repository
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - impactedTargets
        - pagination
    ExemptionsCreateExemptionResponseBody:
      $ref: '#/components/schemas/IDResult'
    ExemptionsListExemptionsResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/Exemption'
          example:
            - approverId: user111111111111111111
              canApproveFor:
                - ACCOUNT
                - ORG
                - PROJECT
                - PIPELINE
              canCancel: true
              canCreate: true
              canReApprove: true
              canReject: true
              comment: This exemption was reviewed by the security team.
              created: 1651578240
              exemptionStatusAtScan: Approved
              expiration: 1651578240
              id: abcdef1234567890ghijkl
              isDeleted: true
              issueId: abcdef1234567890ghijkl
              lastModified: 1651578240
              link: https://example.com/ABC-1234
              numOccurrences: 10
              occurrences:
                - 42
                - 666
              orgId: your_project
              orgName: Organization Name
              pendingChanges:
                durationDays: 7
              pipelineId: your_pipeline
              projectId: your_project
              projectName: Project Name
              reason: Waiting on upstream bug fix
              requesterId: user111111111111111111
              scanId: abcdef1234567890ghijkl
              scope: PROJECT
              search: CWE-123,5
              status: Rejected
              targetId: abcdef1234567890ghijkl
              type: Other
            - approverId: user111111111111111111
              canApproveFor:
                - ACCOUNT
                - ORG
                - PROJECT
                - PIPELINE
              canCancel: true
              canCreate: true
              canReApprove: true
              canReject: true
              comment: This exemption was reviewed by the security team.
              created: 1651578240
              exemptionStatusAtScan: Approved
              expiration: 1651578240
              id: abcdef1234567890ghijkl
              isDeleted: true
              issueId: abcdef1234567890ghijkl
              lastModified: 1651578240
              link: https://example.com/ABC-1234
              numOccurrences: 10
              occurrences:
                - 42
                - 666
              orgId: your_project
              orgName: Organization Name
              pendingChanges:
                durationDays: 7
              pipelineId: your_pipeline
              projectId: your_project
              projectName: Project Name
              reason: Waiting on upstream bug fix
              requesterId: user111111111111111111
              scanId: abcdef1234567890ghijkl
              scope: PROJECT
              search: CWE-123,5
              status: Rejected
              targetId: abcdef1234567890ghijkl
              type: Other
            - approverId: user111111111111111111
              canApproveFor:
                - ACCOUNT
                - ORG
                - PROJECT
                - PIPELINE
              canCancel: true
              canCreate: true
              canReApprove: true
              canReject: true
              comment: This exemption was reviewed by the security team.
              created: 1651578240
              exemptionStatusAtScan: Approved
              expiration: 1651578240
              id: abcdef1234567890ghijkl
              isDeleted: true
              issueId: abcdef1234567890ghijkl
              lastModified: 1651578240
              link: https://example.com/ABC-1234
              numOccurrences: 10
              occurrences:
                - 42
                - 666
              orgId: your_project
              orgName: Organization Name
              pendingChanges:
                durationDays: 7
              pipelineId: your_pipeline
              projectId: your_project
              projectName: Project Name
              reason: Waiting on upstream bug fix
              requesterId: user111111111111111111
              scanId: abcdef1234567890ghijkl
              scope: PROJECT
              search: CWE-123,5
              status: Rejected
              targetId: abcdef1234567890ghijkl
              type: Other
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            comment: This exemption was reviewed by the security team.
            created: 1651578240
            exemptionStatusAtScan: Approved
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            issueId: abcdef1234567890ghijkl
            lastModified: 1651578240
            link: https://example.com/ABC-1234
            numOccurrences: 10
            occurrences:
              - 42
              - 666
            orgId: your_project
            orgName: Organization Name
            pendingChanges:
              durationDays: 7
            pipelineId: your_pipeline
            projectId: your_project
            projectName: Project Name
            reason: Waiting on upstream bug fix
            requesterId: user111111111111111111
            scanId: abcdef1234567890ghijkl
            scope: PROJECT
            search: CWE-123,5
            status: Rejected
            targetId: abcdef1234567890ghijkl
            type: Other
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            comment: This exemption was reviewed by the security team.
            created: 1651578240
            exemptionStatusAtScan: Approved
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            issueId: abcdef1234567890ghijkl
            lastModified: 1651578240
            link: https://example.com/ABC-1234
            numOccurrences: 10
            occurrences:
              - 42
              - 666
            orgId: your_project
            orgName: Organization Name
            pendingChanges:
              durationDays: 7
            pipelineId: your_pipeline
            projectId: your_project
            projectName: Project Name
            reason: Waiting on upstream bug fix
            requesterId: user111111111111111111
            scanId: abcdef1234567890ghijkl
            scope: PROJECT
            search: CWE-123,5
            status: Rejected
            targetId: abcdef1234567890ghijkl
            type: Other
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            comment: This exemption was reviewed by the security team.
            created: 1651578240
            exemptionStatusAtScan: Approved
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            issueId: abcdef1234567890ghijkl
            lastModified: 1651578240
            link: https://example.com/ABC-1234
            numOccurrences: 10
            occurrences:
              - 42
              - 666
            orgId: your_project
            orgName: Organization Name
            pendingChanges:
              durationDays: 7
            pipelineId: your_pipeline
            projectId: your_project
            projectName: Project Name
            reason: Waiting on upstream bug fix
            requesterId: user111111111111111111
            scanId: abcdef1234567890ghijkl
            scope: PROJECT
            search: CWE-123,5
            status: Rejected
            targetId: abcdef1234567890ghijkl
            type: Other
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            comment: This exemption was reviewed by the security team.
            created: 1651578240
            exemptionStatusAtScan: Approved
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            issueId: abcdef1234567890ghijkl
            lastModified: 1651578240
            link: https://example.com/ABC-1234
            numOccurrences: 10
            occurrences:
              - 42
              - 666
            orgId: your_project
            orgName: Organization Name
            pendingChanges:
              durationDays: 7
            pipelineId: your_pipeline
            projectId: your_project
            projectName: Project Name
            reason: Waiting on upstream bug fix
            requesterId: user111111111111111111
            scanId: abcdef1234567890ghijkl
            scope: PROJECT
            search: CWE-123,5
            status: Rejected
            targetId: abcdef1234567890ghijkl
            type: Other
      required:
        - results
        - pagination
    ExportPipelineSecurityIssuesCSVResponseBody:
      type: object
      properties:
        data:
          type: array
          items:
            type: array
            items:
              type: string
              example: Fugit et aut modi culpa.
            example:
              - Error provident ut.
              - Minus non rerum quos eveniet.
              - Repellendus esse saepe.
          description: CSV data rows
          example:
            - - Adipisci ut.
              - Vel hic provident.
              - Aut quis doloribus facere.
            - - Similique magni sit velit expedita.
              - Adipisci ea.
              - Illum sint magni recusandae nihil nisi magni.
              - Eius corporis sit accusantium.
            - - Molestiae qui.
              - Ullam enim eos maxime nostrum quia repellat.
              - Quo consectetur.
        executionId:
          type: string
          description: Execution ID for this export
          example: Assumenda molestiae soluta non.
        filename:
          type: string
          description: Suggested filename for download
          example: Commodi esse eos et rerum.
        headers:
          type: array
          items:
            type: string
            example: Quo quidem quia consectetur quis omnis.
          description: CSV column headers
          example:
            - Eos rerum eos.
            - Accusamus fuga commodi.
            - Hic dolor.
        totalRows:
          type: integer
          description: Total number of data rows
          example: 5899690477853090000
          format: int64
      example:
        data:
          - - Quia quia optio blanditiis porro.
            - Est cumque maxime minus.
            - Dolor laboriosam et nihil illum rem.
          - - Voluptas autem voluptate non quia aut est.
            - Hic earum incidunt nemo et.
            - Quod iste accusamus aut.
          - - Quos similique.
            - Velit quo laborum architecto laboriosam aut.
        executionId: Autem perspiciatis quaerat fuga vitae.
        filename: Quia est fugit quia consectetur non ipsa.
        headers:
          - Odio est voluptatem possimus perferendis voluptate.
          - Assumenda et exercitationem est omnis.
        totalRows: 4063601060825457000
      required:
        - headers
        - data
        - filename
        - totalRows
        - executionId
    FrontendAllIssuesDetailsResponseBody:
      $ref: '#/components/schemas/AllIssuesDetailsResult'
    FrontendAllIssuesFiltersResponseBody:
      $ref: '#/components/schemas/AllIssuesFiltersResult'
    FrontendAllIssuesListResponseBody:
      $ref: '#/components/schemas/AllIssuesListResult'
    FrontendAllIssuesOccurrenceDetailsResponseBody:
      $ref: '#/components/schemas/AllIssuesOccurrenceDetailsResult'
    FrontendExemption:
      type: object
      properties:
        approverId:
          type: string
          description: User ID of the user who approved this Exemption
          example: user111111111111111111
        canApproveFor:
          type: array
          items:
            type: string
            example: ACCOUNT
            enum:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
              - TARGET
          description: Scopes that the user has permission to approve for this Exemption
          example:
            - ACCOUNT
            - ORG
            - PROJECT
            - PIPELINE
        canCancel:
          type: boolean
          description: States if the user can cancel the exemption
          default: false
          example: true
        canCreate:
          type: boolean
          description: States if the user can create or reopen the exemption
          default: false
          example: true
        canReApprove:
          type: boolean
          description: >-
            States if the user can re-approve the exemption for the exemption's
            scope
          default: false
          example: true
        canReject:
          type: boolean
          description: States if the user can reject the exemption
          default: false
          example: true
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        expiration:
          type: integer
          description: Unix timestamp at which this Exemption will expire
          example: 1651578240
          format: int64
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        isDeleted:
          type: boolean
          description: States if the exemption is deleted
          default: false
          example: true
        isOccurrenceLevelExemption:
          type: boolean
          description: States if the exemption is an occurrence level exemption
          default: false
          example: true
        issueSummary:
          $ref: '#/components/schemas/IssueSummary'
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        link:
          type: string
          description: Link related to this Exemption
          example: Upstream bug
        numOccurrences:
          type: integer
          description: >-
            States how may occurrences are associated with the exemption, if not
            an issue level exemption
          default: 0
          example: 10
          format: int64
        orgId:
          type: string
          description: ID of the Harness Org to which this Exemption applies
          example: STO
        pendingChanges:
          $ref: '#/components/schemas/PendingChanges'
        pipelineId:
          type: string
          description: ID of the Harness pipeline to which this Exemption applies
          example: pipeline_1
        projectId:
          type: string
          description: ID of the Harness project to which this Exemption applies
          example: STO
        reason:
          type: string
          description: Reason for Exemption
          example: Upstream bug
        requesterId:
          type: string
          description: User ID of the user who requested this Exemption
          example: user111111111111111111
        scope:
          type: string
          description: The scope of the exemption
          example: PROJECT
          enum:
            - ACCOUNT
            - ORG
            - PROJECT
            - PIPELINE
            - TARGET
        status:
          type: string
          description: Status of this Exemption
          example: Approved
        targetId:
          type: string
          description: ID of Target to which this Exemption applies
          example: target2222222222222222
        totalOccurrences:
          type: integer
          description: States total occurrences associated with the issue exemption
          default: 0
          example: 10
          format: int64
        type:
          type: string
          description: Type of Exemption
          example: Other
      description: Exemption summary for frontend use
      example:
        approverId: user111111111111111111
        canApproveFor:
          - ACCOUNT
          - ORG
          - PROJECT
          - PIPELINE
        canCancel: true
        canCreate: true
        canReApprove: true
        canReject: true
        created: 1651578240
        expiration: 1651578240
        id: abcdef1234567890ghijkl
        isDeleted: true
        isOccurrenceLevelExemption: true
        issueSummary:
          currentStatus: Expired
          exemptionCoverage: Partially Exempted
          exemptionId: abcdef1234567890ghijkl
          exemptionStatusAtScan: Expired
          id: abcdef1234567890ghijkl
          key: json-schema@0.2.3
          numNewOccurrences: 1048060960681060400
          numOccurrences: 8296927288358581000
          numRemediatedOccurrences: 7232480910270412000
          originStatus: approved
          origins:
            - app
            - base
          override:
            originalSeverity: medium
            reason: snyk
          scanId: scan111111111111111111
          severity: 8.5
          severityCode: High
          status: Remediated
          targetVariantName: nodegoat:master
          title: json-schema@0.2.3 is vulnerable to Prototype Pollution
          type: SAST
        lastModified: 1651578240
        link: Upstream bug
        numOccurrences: 10
        orgId: STO
        pendingChanges:
          durationDays: 7
        pipelineId: pipeline_1
        projectId: STO
        reason: Upstream bug
        requesterId: user111111111111111111
        scope: PROJECT
        status: Approved
        targetId: target2222222222222222
        totalOccurrences: 10
        type: Other
      required:
        - id
        - issueSummary
        - status
        - reason
        - created
        - type
        - lastModified
        - requesterId
        - pendingChanges
    FrontendExemptionCounts:
      type: object
      properties:
        Approved:
          type: integer
          description: The count of approved Exemptions
          default: 0
          example: 150
          format: int32
        Expired:
          type: integer
          description: The count of expired Exemptions
          default: 0
          example: 150
          format: int32
        Pending:
          type: integer
          description: The count of pending Exemptions
          default: 0
          example: 150
          format: int32
        Rejected:
          type: integer
          description: The count of rejected Exemptions
          default: 0
          example: 150
          format: int32
      example:
        Approved: 150
        Expired: 150
        Pending: 150
        Rejected: 150
    FrontendExemptionTargets:
      type: object
      properties:
        executionId:
          type: string
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        hash:
          type: string
          description: Git Commit or Container Image hash
          example: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
          maxLength: 64
        lastScanned:
          type: number
          description: Timestamp of the last detection of this issue
          example: 1634836529
          format: float
        name:
          type: string
          description: Name of the Test Target
          example: NodeGoat
          pattern: ^[a-zA-Z0-9_.:/|()-]+$
          maxLength: 128
        numExemptedOccurrences:
          type: integer
          description: Total number of occurrences exempted for an impacted target
          default: 0
          example: 150
          format: int32
        numOccurrences:
          type: integer
          description: Total number of occurrences for an impacted target
          default: 0
          example: 150
          format: int32
        orgId:
          type: string
          description: Harness Organization ID
          example: example_org
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        parameters:
          type: object
          description: Parameters for this Variant, as a JSON-encoded string
          example:
            branch: main
          additionalProperties:
            type: string
            example: Sed eos perferendis vitae provident qui voluptas.
        pipelineId:
          type: string
          description: ID of the Harness pipeline of the scan
          example: pipeline_1
        projectId:
          type: string
          description: Harness Project ID
          example: example_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        scanId:
          type: string
          description: The Security Scan execution that detected this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetId:
          type: string
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        type:
          type: string
          description: Test Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
      description: Impacted targets from an exemption for frontend issue details
      example:
        executionId: abcdef1234567890ghijkl
        hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
        lastScanned: 1634836529
        name: NodeGoat
        numExemptedOccurrences: 150
        numOccurrences: 150
        orgId: example_org
        parameters:
          branch: main
        pipelineId: pipeline_1
        projectId: example_project
        scanId: abcdef1234567890ghijkl
        targetId: abcdef1234567890ghijkl
        type: repository
      required:
        - targetId
        - parameters
    FrontendExpiringExemptionsResponseBody:
      $ref: '#/components/schemas/IssueSummaries'
    FrontendImpactedTargetsForExemptionResponseBody:
      $ref: '#/components/schemas/ExemptionImpactedTargetsResult'
    FrontendIssueCounts:
      type: object
      properties:
        active:
          type: integer
          description: The total of active Issues
          example: 150
          format: int32
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
      example:
        active: 150
        critical: 1
        high: 3
        ignored: 1
        info: 11
        low: 39
        medium: 17
      required:
        - active
        - critical
        - high
        - medium
        - low
        - info
    FrontendIssueForExemptionResponseBody:
      $ref: '#/components/schemas/IssueForExemptionResult'
    FrontendIssueSeverityChangeResponseBody:
      $ref: '#/components/schemas/IssueSeverityChangeResult'
    FrontendOverviewBaselinesResponseBody:
      $ref: '#/components/schemas/BaselineExecutions'
    FrontendOverviewHistoricalCountsResponseBody:
      $ref: '#/components/schemas/HistoricalCounts'
    FrontendPipelineSecurityIssuesResponseBody:
      $ref: '#/components/schemas/PipelineSecurityIssuesResult'
    FrontendPipelineSecurityStepsResponseBody:
      $ref: '#/components/schemas/PipelineSecurityStepsResult'
    FrontendSecurityReviewResponseBody:
      $ref: '#/components/schemas/SecurityReviewResult'
    FrontendTestTargetsResponseBody:
      $ref: '#/components/schemas/TestTargetResult'
    FullIssueCounts:
      type: object
      properties:
        appCritical:
          type: integer
          description: The number of Critical-severity Issues in the App Image
          example: 1
          format: int32
        appHigh:
          type: integer
          description: The number of High-severity Issues in the App Image
          example: 3
          format: int32
        appInfo:
          type: integer
          description: The number of Informational Issues in the App Image
          example: 11
          format: int32
        appLow:
          type: integer
          description: The number of Low-severity Issues in the App Image
          example: 39
          format: int32
        appMedium:
          type: integer
          description: The number of Medium-severity Issues in the App Image
          example: 17
          format: int32
        baseCritical:
          type: integer
          description: The number of Critical-severity Issues in the Base Image
          example: 1
          format: int32
        baseHigh:
          type: integer
          description: The number of High-severity Issues in the Base Image
          example: 3
          format: int32
        baseImageApproved:
          type: boolean
          description: The approval status of the Base Image for the Scan
          example: true
        baseImageDetected:
          type: boolean
          description: The status of the Base Image for the Scan
          example: true
        baseInfo:
          type: integer
          description: The number of Informational Issues in the Base Image
          example: 11
          format: int32
        baseLow:
          type: integer
          description: The number of Low-severity Issues in the Base Image
          example: 39
          format: int32
        baseMedium:
          type: integer
          description: The number of Medium-severity Issues in the Base Image
          example: 17
          format: int32
        codeCoverage:
          type: number
          description: The Code Coverage value for the Scan
          example: 65.5
          format: float
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        externalPolicyFailures:
          type: integer
          description: The number of EXTERNAL_POLICY Issues
          example: 0
          format: int32
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        ignoredCritical:
          type: integer
          description: The number of ignored Critical-severity Issues
          example: 1
          format: int32
        ignoredHigh:
          type: integer
          description: The number of ignored High-severity Issues
          example: 3
          format: int32
        ignoredInfo:
          type: integer
          description: The number of ignored Informational Issues
          example: 11
          format: int32
        ignoredLow:
          type: integer
          description: The number of ignored Low-severity Issues
          example: 39
          format: int32
        ignoredMedium:
          type: integer
          description: The number of ignored Medium-severity Issues
          example: 17
          format: int32
        ignoredUnassigned:
          type: integer
          description: The number of Issues with no associated severity code
          example: 0
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
        newAppCritical:
          type: integer
          description: The number of new Critical-severity Issues in the App Image
          example: 1
          format: int32
        newAppHigh:
          type: integer
          description: The number of new High-severity Issues in the App Image
          example: 3
          format: int32
        newAppInfo:
          type: integer
          description: The number of new Informational Issues in the App Image
          example: 11
          format: int32
        newAppLow:
          type: integer
          description: The number of new Low-severity Issues in the App Image
          example: 39
          format: int32
        newAppMedium:
          type: integer
          description: The number of new Medium-severity Issues in the App Image
          example: 17
          format: int32
        newBaseCritical:
          type: integer
          description: The number of new Critical-severity Issues in the Base Image
          example: 1
          format: int32
        newBaseHigh:
          type: integer
          description: The number of new High-severity Issues in the Base Image
          example: 3
          format: int32
        newBaseInfo:
          type: integer
          description: The number of new Informational Issues in the Base Image
          example: 11
          format: int32
        newBaseLow:
          type: integer
          description: The number of new Low-severity Issues in the Base Image
          example: 39
          format: int32
        newBaseMedium:
          type: integer
          description: The number of new Medium-severity Issues in the Base Image
          example: 17
          format: int32
        newCritical:
          type: integer
          description: The number of new Critical-severity Issues
          example: 1
          format: int32
        newHigh:
          type: integer
          description: The number of new High-severity Issues
          example: 3
          format: int32
        newIgnoredCritical:
          type: integer
          description: The number of ignored Critical-severity Issues
          example: 1
          format: int32
        newIgnoredHigh:
          type: integer
          description: The number of ignored High-severity Issues
          example: 3
          format: int32
        newIgnoredInfo:
          type: integer
          description: The number of ignored Informational Issues
          example: 11
          format: int32
        newIgnoredLow:
          type: integer
          description: The number of ignored Low-severity Issues
          example: 39
          format: int32
        newIgnoredMedium:
          type: integer
          description: The number of ignored Medium-severity Issues
          example: 17
          format: int32
        newIgnoredOccurrencesCritical:
          type: integer
          description: The number of ignored Critical-severity Occurrences
          example: 1
          format: int32
        newIgnoredOccurrencesHigh:
          type: integer
          description: The number of ignored High-severity Occurrences
          example: 3
          format: int32
        newIgnoredOccurrencesInfo:
          type: integer
          description: The number of ignored Informational Occurrences
          example: 11
          format: int32
        newIgnoredOccurrencesLow:
          type: integer
          description: The number of ignored Low-severity Occurrences
          example: 39
          format: int32
        newIgnoredOccurrencesMedium:
          type: integer
          description: The number of ignored Medium-severity Occurrences
          example: 17
          format: int32
        newIgnoredOccurrencesUnassigned:
          type: integer
          description: The number of ignored Occurrences with no associated severity code
          example: 0
          format: int32
        newIgnoredUnassigned:
          type: integer
          description: The number of Issues with no associated severity code
          example: 0
          format: int32
        newInfo:
          type: integer
          description: The number of new Informational Issues
          example: 11
          format: int32
        newLow:
          type: integer
          description: The number of new Low-severity Issues
          example: 39
          format: int32
        newMedium:
          type: integer
          description: The number of new Medium-severity Issues
          example: 17
          format: int32
        newOccurrencesCritical:
          type: integer
          description: The number of new Critical-severity Occurrences
          example: 1
          format: int32
        newOccurrencesHigh:
          type: integer
          description: The number of new High-severity Occurrences
          example: 3
          format: int32
        newOccurrencesInfo:
          type: integer
          description: The number of new Informational Occurrences
          example: 11
          format: int32
        newOccurrencesLow:
          type: integer
          description: The number of new Low-severity Occurrences
          example: 39
          format: int32
        newOccurrencesMedium:
          type: integer
          description: The number of new Medium-severity Occurrences
          example: 17
          format: int32
        newOccurrencesUnassigned:
          type: integer
          description: The number of new Occurrences with no associated severity code
          example: 0
          format: int32
        newTotal:
          type: integer
          description: The total number new Issues
          example: 3
          format: int32
        newTotalBase:
          type: integer
          description: The total number new Issues in the Base Image
          example: 3
          format: int32
        newUnassigned:
          type: integer
          description: The number of new Issues with no associated severity code
          example: 0
          format: int32
        total:
          type: integer
          description: The total number of Issues
          example: 10
          format: int32
        totalBase:
          type: integer
          description: The total number of Issues in the Base Image
          example: 10
          format: int32
        unassigned:
          type: integer
          description: The number of Issues with no associated severity code
          example: 0
          format: int32
      example:
        appCritical: 1
        appHigh: 3
        appInfo: 11
        appLow: 39
        appMedium: 17
        baseCritical: 1
        baseHigh: 3
        baseImageApproved: true
        baseImageDetected: true
        baseInfo: 11
        baseLow: 39
        baseMedium: 17
        codeCoverage: 65.5
        critical: 1
        externalPolicyFailures: 0
        high: 3
        ignored: 1
        ignoredCritical: 1
        ignoredHigh: 3
        ignoredInfo: 11
        ignoredLow: 39
        ignoredMedium: 17
        ignoredUnassigned: 0
        info: 11
        low: 39
        medium: 17
        newAppCritical: 1
        newAppHigh: 3
        newAppInfo: 11
        newAppLow: 39
        newAppMedium: 17
        newBaseCritical: 1
        newBaseHigh: 3
        newBaseInfo: 11
        newBaseLow: 39
        newBaseMedium: 17
        newCritical: 1
        newHigh: 3
        newIgnoredCritical: 1
        newIgnoredHigh: 3
        newIgnoredInfo: 11
        newIgnoredLow: 39
        newIgnoredMedium: 17
        newIgnoredOccurrencesCritical: 1
        newIgnoredOccurrencesHigh: 3
        newIgnoredOccurrencesInfo: 11
        newIgnoredOccurrencesLow: 39
        newIgnoredOccurrencesMedium: 17
        newIgnoredOccurrencesUnassigned: 0
        newIgnoredUnassigned: 0
        newInfo: 11
        newLow: 39
        newMedium: 17
        newOccurrencesCritical: 1
        newOccurrencesHigh: 3
        newOccurrencesInfo: 11
        newOccurrencesLow: 39
        newOccurrencesMedium: 17
        newOccurrencesUnassigned: 0
        newTotal: 3
        newTotalBase: 3
        newUnassigned: 0
        total: 10
        totalBase: 10
        unassigned: 0
      required:
        - newCritical
        - newHigh
        - newMedium
        - newLow
        - newInfo
        - unassigned
        - newUnassigned
        - externalPolicyFailures
        - ignored
        - ignoredCritical
        - ignoredHigh
        - ignoredMedium
        - ignoredLow
        - ignoredInfo
        - ignoredUnassigned
        - newIgnoredCritical
        - newIgnoredHigh
        - newIgnoredMedium
        - newIgnoredLow
        - newIgnoredInfo
        - newIgnoredUnassigned
        - newOccurrencesCritical
        - newOccurrencesHigh
        - newOccurrencesMedium
        - newOccurrencesLow
        - newOccurrencesInfo
        - newOccurrencesUnassigned
        - newIgnoredOccurrencesCritical
        - newIgnoredOccurrencesHigh
        - newIgnoredOccurrencesMedium
        - newIgnoredOccurrencesLow
        - newIgnoredOccurrencesInfo
        - newIgnoredOccurrencesUnassigned
        - total
        - newTotal
        - critical
        - high
        - medium
        - low
        - info
    GetByReferenceIDResponseBody:
      type: object
      properties:
        description:
          type: string
          description: A short description of the identified issue.
          example: Consectetur nulla unde saepe.
        extendedDescription:
          type: string
          description: A more detailed explanation of the issue and its potential impact.
          example: Rerum ut voluptas enim unde.
        remediationSteps:
          type: string
          description: Steps the developer can take to address or mitigate the issue.
          example: Aliquid incidunt.
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: double
        severityCode:
          type: string
          description: Severity code
          example: High
      example:
        description: Sit provident amet porro vero.
        extendedDescription: Eligendi aliquam delectus ea est molestias.
        remediationSteps: Eum nobis voluptas dicta nam.
        severity: 8.5
        severityCode: High
    GitMetadata:
      type: object
      properties:
        detectedName:
          type: string
          description: Detected Name
          example: Quidem iste ut iste.
        detectedVariant:
          type: string
          description: Detected Variant
          example: In deserunt vel id voluptates qui.
        droneCorrelated:
          type: boolean
          description: Drone Correlated
          example: false
        provider:
          type: string
          description: Git Provider
          example: Est voluptatem iure unde magni excepturi iure.
        pullRequestNumber:
          type: integer
          description: Git Pull Request Number
          example: 11
          format: int64
        repositoryHttp:
          type: string
          description: Git HTTP Repository
          example: https://github.com/harness/drone-cli.git
        repositoryPath:
          type: array
          items:
            type: string
            example: Ex est eum.
          description: Git Repository Path
          example:
            - Voluptatem ut eaque voluptates expedita.
            - Non eligendi est fugit id et.
            - Quibusdam et omnis.
        repositorySsh:
          type: string
          description: Git SSH Repository
          example: git@github.com:harness/drone-cli.git
        sourceBranch:
          type: string
          description: Git Source Branch
          example: feat/shiny-object
        targetBranch:
          type: string
          description: Git Target Branch
          example: develop
        workspace:
          type: string
          description: Git Workspace Root
          example: /harness
      description: Git Metadata associated with the Scan
      example:
        detectedName: Id et iste accusantium occaecati laboriosam quibusdam.
        detectedVariant: Eligendi eos qui commodi.
        droneCorrelated: false
        provider: Dignissimos reprehenderit accusamus ducimus.
        pullRequestNumber: 11
        repositoryHttp: https://github.com/harness/drone-cli.git
        repositoryPath:
          - Natus vel est rerum.
          - Repellendus facilis aspernatur cum ab vel.
          - Quae doloremque recusandae qui nostrum nam.
        repositorySsh: git@github.com:harness/drone-cli.git
        sourceBranch: feat/shiny-object
        targetBranch: develop
        workspace: /harness
    GlobalExemptionsRequestBody:
      type: object
      properties:
        orgProjectFilter:
          type: array
          items:
            type: string
            description: Organization:project pair
            example: org1:project1
            pattern: ^[a-zA-Z0-9_-]+:[a-zA-Z0-9_-]+$
          description: List of organization:project pairs
          example:
            - org1:project1
            - org1:project2
      example:
        orgProjectFilter:
          - org1:project1
          - org1:project2
    HistoricalCounts:
      type: object
      properties:
        counts:
          type: array
          items:
            $ref: '#/components/schemas/HistoricalIssueCounts'
          description: >-
            Counts of active issues on baselines for each of the past several
            days
          example:
            - active: true
              counts:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              date: 1651578240
              detections:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              remediations:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
            - active: true
              counts:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              date: 1651578240
              detections:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              remediations:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
            - active: true
              counts:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              date: 1651578240
              detections:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              remediations:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
            - active: true
              counts:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              date: 1651578240
              detections:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
              remediations:
                critical: 1
                high: 3
                ignored: 1
                info: 11
                low: 39
                medium: 17
      example:
        counts:
          - active: true
            counts:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
            date: 1651578240
            detections:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
            remediations:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
          - active: true
            counts:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
            date: 1651578240
            detections:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
            remediations:
              critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
      required:
        - counts
    HistoricalIssueCounts:
      type: object
      properties:
        active:
          type: boolean
          description: True if at least one baseline was scanned on this date
          example: false
        counts:
          $ref: '#/components/schemas/MinimalIssueCounts'
        date:
          type: integer
          example: 1651578240
          format: int64
        detections:
          $ref: '#/components/schemas/MinimalIssueCounts'
        remediations:
          $ref: '#/components/schemas/MinimalIssueCounts'
      example:
        active: false
        counts:
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        date: 1651578240
        detections:
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        remediations:
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
      required:
        - date
        - counts
        - detections
        - remediations
        - active
    IDResult:
      type: object
      properties:
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
      example:
        id: abcdef1234567890ghijkl
      required:
        - id
    ImpactedTarget:
      type: object
      properties:
        executionId:
          type: string
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionId:
          type: string
          description: ID of Security Test Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatus:
          type: string
          description: Exemption Status
          example: Modi omnis architecto incidunt vitae nulla.
        id:
          type: string
          description: The ID of the impacted target
          example: target1111111111111111
        lastDetected:
          type: number
          description: Timestamp of the last detection of this issue
          example: 1634836529
          format: float
        name:
          type: string
          description: The name of the impacted target
          example: The Target Name
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int64
        pipelineId:
          type: string
          description: Harness Pipeline ID
          example: example_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        userId:
          type: string
          description: The user id associated with the last scan run
          example: Tenetur unde aut qui doloribus sunt.
        variantName:
          type: string
          description: Variant name
          example: Dolor atque.
      example:
        executionId: abcdef1234567890ghijkl
        exemptionId: abcdef1234567890ghijkl
        exemptionStatus: Et est.
        id: target1111111111111111
        lastDetected: 1634836529
        name: The Target Name
        numOccurrences: 10
        pipelineId: example_pipeline
        userId: Explicabo nihil qui inventore soluta eius qui.
        variantName: Excepturi et soluta praesentium qui enim.
      required:
        - name
        - id
        - variantName
        - numOccurrences
        - lastDetected
        - pipelineId
        - executionId
    Issue:
      type: object
      properties:
        baseImageName:
          type: string
          description: base image name of the issue
          example: baseImageName
        baselineVariantId:
          type: string
          description: The Baseline Target Variant related to this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        currentStatus:
          type: string
          description: Current status of the Exemption
          example: Approved
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        details:
          type: object
          description: Issue details common to all occurrences
          example:
            package: json-schema
            version: v0.2.3
          additionalProperties: true
        exemptionCoverage:
          type: string
          description: >-
            Indicates if the Security Issue was found to be Exempted, Partially
            Exempted.
          example: Partially Exempted
        exemptionId:
          type: string
          description: ID of the associated Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatusAtScan:
          type: string
          description: Exemption's status at the Security Scan created time
          example: Pending
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        harnessAugmentation:
          type: object
          description: Harness Augmentation details
          example:
            Dolorem nesciunt eum fugiat eum eligendi consequatur.: Ipsam corporis non excepturi temporibus vel.
            Neque unde et.: Voluptates rem earum dolores maiores minus.
          additionalProperties: true
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        key:
          type: string
          description: Compression/deduplication key
          example: json-schema@0.2.3
          maxLength: 512
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int32
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        occurrences:
          type: array
          items:
            type: object
            example:
              Deleniti dolore ut repellat praesentium.: Id quo.
              Non totam aut sit.: Error distinctio aut blanditiis debitis.
              Suscipit voluptatem voluptatem doloribus deleniti quia.: Excepturi animi debitis beatae facere maiores.
            additionalProperties: true
          description: Array of details unique to each occurrence
          example:
            - line: '42'
            - line: '666'
        originStatus:
          type: string
          description: The status of the origin, either 'approved' or 'unapproved'
          example: approved
        origins:
          type: array
          items:
            type: string
            example: Voluptas voluptatum voluptas ut distinctio aspernatur unde.
          description: The origins of the issue
          example:
            - app
            - base
        productId:
          type: string
          description: The scan tool that identified this Security Issue
          example: product1234567890abcde
          pattern: ^[a-zA-Z0-9_-]{22}$
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: float
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        status:
          type: string
          description: >-
            Indicates if the Security Issue was found to be remediated, ignored,
            etc.
          example: Remediated
          enum:
            - Remediated
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Exempted
        subproduct:
          type: string
          description: The subproduct that identified this Security Issue
          example: product
        targetId:
          type: string
          description: The Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: The Name of the Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetType:
          type: string
          description: The type of the Target that this Security Issue affects
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        targetVariantId:
          type: string
          description: The Target Variant that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetVariantName:
          type: string
          description: Name of the associated Target and Variant
          example: nodegoat:master
          pattern: ^[a-zA-Z0-9_-]{22}$
        title:
          type: string
          description: Title of the Security Issue
          example: json-schema@0.2.3 is vulnerable to Prototype Pollution
          maxLength: 128
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      description: Information about a Security Issue
      example:
        baseImageName: baseImageName
        baselineVariantId: abcdef1234567890ghijkl
        created: 1651578240
        currentStatus: Expired
        details:
          package: json-schema
          version: v0.2.3
        exemptionCoverage: Partially Exempted
        exemptionId: abcdef1234567890ghijkl
        exemptionStatusAtScan: Pending
        harnessAugmentation:
          Quaerat aperiam tempore.: Sint quia.
          Recusandae modi debitis fugit.: Beatae dolor voluptas est modi.
        id: abcdef1234567890ghijkl
        key: json-schema@0.2.3
        numOccurrences: 10
        occurrenceId: 12345
        occurrences:
          - line: '42'
          - line: '666'
        originStatus: approved
        origins:
          - app
          - base
        productId: product1234567890abcde
        severity: 8.5
        severityCode: High
        status: Remediated
        subproduct: product
        targetId: abcdef1234567890ghijkl
        targetName: abcdef1234567890ghijkl
        targetType: repository
        targetVariantId: abcdef1234567890ghijkl
        targetVariantName: nodegoat:master
        title: json-schema@0.2.3 is vulnerable to Prototype Pollution
        type: SAST
      required:
        - title
        - key
        - severity
        - severityCode
        - productId
        - details
        - id
        - created
    IssueCounts:
      type: object
      properties:
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
        newCritical:
          type: integer
          description: The number of new Critical-severity Issues
          example: 1
          format: int32
        newHigh:
          type: integer
          description: The number of new High-severity Issues
          example: 3
          format: int32
        newInfo:
          type: integer
          description: The number of new Informational Issues
          example: 11
          format: int32
        newLow:
          type: integer
          description: The number of new Low-severity Issues
          example: 39
          format: int32
        newMedium:
          type: integer
          description: The number of new Medium-severity Issues
          example: 17
          format: int32
        newUnassigned:
          type: integer
          description: The number of new Issues with no associated severity code
          example: 0
          format: int32
        unassigned:
          type: integer
          description: The number of Issues with no associated severity code
          example: 0
          format: int32
      description: >-
        The count of Security Issues, by severity code, for a given Harness
        Pipeline Execution
      example:
        critical: 1
        high: 3
        ignored: 1
        info: 11
        low: 39
        medium: 17
        newCritical: 1
        newHigh: 3
        newInfo: 11
        newLow: 39
        newMedium: 17
        newUnassigned: 0
        unassigned: 0
      required:
        - critical
        - high
        - medium
        - low
        - info
    IssueCountsWithExecutionInfo:
      type: object
      properties:
        artifactFingerprint:
          type: string
          description: Fingerprint which identifies an artifact
          example: jx2
          maxLength: 64
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        executionId:
          type: string
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        lastScanned:
          type: integer
          description: Timestamp at which the target variant was last scanned
          example: 1634836529
          format: int64
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
        pipelineId:
          type: string
          description: Harness Pipeline ID
          example: example_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        targetId:
          type: string
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        targetVariantId:
          type: string
          description: Associated Target Variant ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetVariantName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        type:
          type: string
          description: Scan Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
      description: >-
        The count of Security Issues, by severity code, for a given Harness
        Pipeline Execution along with this execution info
      example:
        artifactFingerprint: acs
        critical: 1
        executionId: abcdef1234567890ghijkl
        high: 3
        ignored: 1
        info: 11
        lastScanned: 1634836529
        low: 39
        medium: 17
        pipelineId: example_pipeline
        targetId: abcdef1234567890ghijkl
        targetName: NodeGoat
        targetVariantId: abcdef1234567890ghijkl
        targetVariantName: NodeGoat
        type: repository
      required:
        - critical
        - high
        - medium
        - low
        - info
        - targetId
        - targetVariantId
        - type
        - targetName
        - targetVariantName
        - executionId
        - pipelineId
        - lastScanned
    IssueForExemptionResult:
      type: object
      properties:
        baseImageName:
          type: string
          description: base image name of the issue
          example: baseImageName
        baselineVariantId:
          type: string
          description: The Baseline Target Variant related to this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        currentStatus:
          type: string
          description: Current status of the Exemption
          example: Rejected
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        details:
          type: object
          description: Issue details common to all occurrences
          example:
            package: json-schema
            version: v0.2.3
          additionalProperties: true
        exemptionCoverage:
          type: string
          description: >-
            Indicates if the Security Issue was found to be Exempted, Partially
            Exempted.
          example: Partially Exempted
        exemptionId:
          type: string
          description: ID of the associated Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatusAtScan:
          type: string
          description: Exemption's status at the Security Scan created time
          example: Expired
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        harnessAugmentation:
          type: object
          description: Harness Augmentation details
          example:
            Culpa tempora.: Voluptatum autem.
          additionalProperties: true
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        key:
          type: string
          description: Compression/deduplication key
          example: json-schema@0.2.3
          maxLength: 512
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int32
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        occurrences:
          type: array
          items:
            type: object
            example:
              Facere sint.: Nesciunt corrupti repudiandae.
              Laudantium quidem similique.: Odio totam molestiae dolorem aut consequatur.
            additionalProperties: true
          description: Array of details unique to each occurrence
          example:
            - line: '42'
            - line: '666'
        occurrencesPagination:
          $ref: '#/components/schemas/StoPagination'
        originStatus:
          type: string
          description: The status of the origin, either 'approved' or 'unapproved'
          example: approved
        origins:
          type: array
          items:
            type: string
            example: Qui ut.
          description: The origins of the issue
          example:
            - app
            - base
        productId:
          type: string
          description: The scan tool that identified this Security Issue
          example: product1234567890abcde
          pattern: ^[a-zA-Z0-9_-]{22}$
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: float
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        status:
          type: string
          description: >-
            Indicates if the Security Issue was found to be remediated, ignored,
            etc.
          example: Remediated
          enum:
            - Remediated
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Exempted
        subproduct:
          type: string
          description: The subproduct that identified this Security Issue
          example: product
        targetId:
          type: string
          description: The Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: The Name of the Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetType:
          type: string
          description: The type of the Target that this Security Issue affects
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        targetVariantId:
          type: string
          description: The Target Variant that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetVariantName:
          type: string
          description: Name of the associated Target and Variant
          example: nodegoat:master
          pattern: ^[a-zA-Z0-9_-]{22}$
        targets:
          type: array
          items:
            type: object
            example:
              Maxime explicabo est iste illo.: Vel laboriosam amet quia dicta.
              Sint sequi nesciunt.: Qui rerum adipisci dolore.
              Veritatis voluptas.: Et aut eos voluptatem id dolor.
            additionalProperties: true
          example:
            - targetId: target2222222222222222
              targetName: Target 1
        title:
          type: string
          description: Title of the Security Issue
          example: json-schema@0.2.3 is vulnerable to Prototype Pollution
          maxLength: 128
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      example:
        baseImageName: baseImageName
        baselineVariantId: abcdef1234567890ghijkl
        created: 1651578240
        currentStatus: Rejected
        details:
          package: json-schema
          version: v0.2.3
        exemptionCoverage: Partially Exempted
        exemptionId: abcdef1234567890ghijkl
        exemptionStatusAtScan: Rejected
        harnessAugmentation:
          Asperiores eius impedit earum nisi odio omnis.: Explicabo voluptatibus ut.
          Fugit et ducimus voluptatem sunt.: Sit aut reprehenderit non.
        id: abcdef1234567890ghijkl
        key: json-schema@0.2.3
        numOccurrences: 10
        occurrenceId: 12345
        occurrences:
          - line: '42'
          - line: '666'
        occurrencesPagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        originStatus: approved
        origins:
          - app
          - base
        productId: product1234567890abcde
        severity: 8.5
        severityCode: High
        status: Remediated
        subproduct: product
        targetId: abcdef1234567890ghijkl
        targetName: abcdef1234567890ghijkl
        targetType: repository
        targetVariantId: abcdef1234567890ghijkl
        targetVariantName: nodegoat:master
        targets:
          - targetId: target2222222222222222
            targetName: Target 1
        title: json-schema@0.2.3 is vulnerable to Prototype Pollution
        type: SAST
      required:
        - targets
        - targetType
        - title
        - key
        - severity
        - severityCode
        - productId
        - details
        - id
        - created
    IssueInScan:
      type: object
      properties:
        baseImageName:
          type: string
          description: base image name of the issue
          example: baseImageName
        baseImageOrgId:
          type: string
          description: org id of the issue from where the base image is being referred
          example: default
        baseImageProjectId:
          type: string
          description: project id of the issue from where the base image is being referred
          example: STO
        baselineVariantId:
          type: string
          description: The Baseline Target Variant related to this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        currentStatus:
          type: string
          description: Current status of the Exemption
          example: Rejected
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        details:
          type: object
          description: Issue details common to all occurrences
          example:
            package: json-schema
            version: v0.2.3
          additionalProperties: true
        exemptionCoverage:
          type: string
          description: >-
            Indicates if the Security Issue was found to be Exempted, Partially
            Exempted.
          example: Partially Exempted
        exemptionId:
          type: string
          description: ID of the associated Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatusAtScan:
          type: string
          description: Exemption's status at the Security Scan created time
          example: Rejected
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        gitMetadata:
          $ref: '#/components/schemas/GitMetadata'
        harnessAugmentation:
          type: object
          description: Harness Augmentation details
          example:
            Consequatur sequi.: Reprehenderit officiis sit veniam mollitia.
            Eum dignissimos quo nulla omnis.: Nobis magni.
            Natus et praesentium excepturi repellendus alias.: Rerum nulla aspernatur dolor aliquam modi.
          additionalProperties: true
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        key:
          type: string
          description: Compression/deduplication key
          example: json-schema@0.2.3
          maxLength: 512
        lastBaseImageScanAt:
          type: integer
          description: last scan timestamp of the base image being referred
          example: 1651578240
          format: int64
        numNonExemptedOccurrences:
          type: integer
          description: >-
            Indicates the number of Occurrences which dont have an active
            exemption on the Occurrence
          default: 0
          example: 10
          format: int32
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int32
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        occurrences:
          type: array
          items:
            type: object
            example:
              Facere sed praesentium consequatur consequatur quia ratione.: Labore optio sit perferendis ut.
              Labore odit doloremque.: >-
                Exercitationem rerum fugit praesentium commodi nostrum
                dignissimos.
            additionalProperties: true
          description: Array of details unique to each occurrence
          example:
            - line: '42'
            - line: '666'
        occurrencesPagination:
          $ref: '#/components/schemas/StoPagination'
        originStatus:
          type: string
          description: The status of the origin, either 'approved' or 'unapproved'
          example: approved
        origins:
          type: array
          items:
            type: string
            example: Repellendus iste aut consequatur.
          description: The origins of the issue
          example:
            - app
            - base
        primaryOccurrenceId:
          type: integer
          description: The primary occurrence's ID
          example: 12345
          format: int64
        productId:
          type: string
          description: The scan tool that identified this Security Issue
          example: product1234567890abcde
          pattern: ^[a-zA-Z0-9_-]{22}$
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: float
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        status:
          type: string
          description: >-
            Indicates if the Security Issue was found to be remediated, ignored,
            etc.
          example: Remediated
          enum:
            - Remediated
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Exempted
        subproduct:
          type: string
          description: The subproduct that identified this Security Issue
          example: product
        targetId:
          type: string
          description: The Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: The Name of the Target that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetType:
          type: string
          description: The type of the Target that this Security Issue affects
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        targetVariantId:
          type: string
          description: The Target Variant that this Security Issue affects
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetVariantName:
          type: string
          description: Name of the associated Target and Variant
          example: nodegoat:master
          pattern: ^[a-zA-Z0-9_-]{22}$
        title:
          type: string
          description: Title of the Security Issue
          example: json-schema@0.2.3 is vulnerable to Prototype Pollution
          maxLength: 128
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      example:
        baseImageName: baseImageName
        baseImageOrgId: default
        baseImageProjectId: STO
        baselineVariantId: abcdef1234567890ghijkl
        created: 1651578240
        currentStatus: Approved
        details:
          package: json-schema
          version: v0.2.3
        exemptionCoverage: Partially Exempted
        exemptionId: abcdef1234567890ghijkl
        exemptionStatusAtScan: Pending
        gitMetadata:
          detectedName: Nesciunt et.
          detectedVariant: Et voluptatem quos voluptate voluptatem eos.
          droneCorrelated: true
          provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
          pullRequestNumber: 11
          repositoryHttp: https://github.com/harness/drone-cli.git
          repositoryPath:
            - Nulla ipsa.
            - Molestiae possimus expedita odio ut.
            - Et dolor doloribus.
            - Ut adipisci optio sit itaque assumenda.
          repositorySsh: git@github.com:harness/drone-cli.git
          sourceBranch: feat/shiny-object
          targetBranch: develop
          workspace: /harness
        harnessAugmentation:
          Omnis omnis tempora consectetur commodi.: Delectus tempore harum atque.
          Ut voluptas et et.: Qui ut ut odio omnis.
        id: abcdef1234567890ghijkl
        key: json-schema@0.2.3
        lastBaseImageScanAt: 1651578240
        numNonExemptedOccurrences: 10
        numOccurrences: 10
        occurrenceId: 12345
        occurrences:
          - line: '42'
          - line: '666'
        occurrencesPagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        originStatus: approved
        origins:
          - app
          - base
        primaryOccurrenceId: 12345
        productId: product1234567890abcde
        severity: 8.5
        severityCode: High
        status: Remediated
        subproduct: product
        targetId: abcdef1234567890ghijkl
        targetName: abcdef1234567890ghijkl
        targetType: repository
        targetVariantId: abcdef1234567890ghijkl
        targetVariantName: nodegoat:master
        title: json-schema@0.2.3 is vulnerable to Prototype Pollution
        type: SAST
      required:
        - primaryOccurrenceId
        - occurrencesPagination
        - numOccurrences
        - numNonExemptedOccurrences
        - title
        - key
        - severity
        - severityCode
        - productId
        - details
        - id
        - created
    IssueSeverityChangeResult:
      type: object
      properties:
        currentSeverityCode:
          type: string
          description: Current severity code of the issue
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        newSeverityCode:
          type: string
          description: New severity code of the issue
          example: Medium
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
      example:
        currentSeverityCode: High
        newSeverityCode: Medium
      required:
        - currentSeverityCode
        - newSeverityCode
    IssueSummaries:
      type: object
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/IssueSummary'
          description: Short summary of an Issue
          example:
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
      description: List of issue summaries
      example:
        issues:
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
      required:
        - issues
    IssueSummary:
      type: object
      properties:
        currentStatus:
          type: string
          description: Current status of the Exemption
          example: Rejected
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        exemptionCoverage:
          type: string
          description: >-
            Indicates if the Security Issue was found to be Exempted, Partially
            Exempted.
          example: Partially Exempted
        exemptionId:
          type: string
          description: ID of the associated Exemption
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        exemptionStatusAtScan:
          type: string
          description: Exemption's status at the Security Scan created time
          example: Expired
          enum:
            - Pending
            - Approved
            - Rejected
            - Expired
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        key:
          type: string
          description: Compression/deduplication key
          example: json-schema@0.2.3
          maxLength: 512
        numNewOccurrences:
          type: integer
          example: 8455684906628951000
          format: int64
        numOccurrences:
          type: integer
          example: 3473290173173724000
          format: int64
        numRemediatedOccurrences:
          type: integer
          example: 1888488220264015600
          format: int64
        originStatus:
          type: string
          description: The status of the origin, either 'approved' or 'unapproved'
          example: approved
        origins:
          type: array
          items:
            type: string
            example: Iure aut vero aut rerum voluptas.
          description: The origin of the issue, either 'app' or 'base'
          example:
            - app
            - base
        override:
          type: object
          description: Indicates the issue has been overridden
          example:
            originalSeverity: medium
            reason: snyk
          additionalProperties: true
        scanId:
          type: string
          description: The ID of the Scan that detected this Security Issue
          example: scan111111111111111111
        severity:
          type: number
          description: Numeric severity, from 0 (lowest) to 10 (highest)
          example: 8.5
          format: float
        severityCode:
          type: string
          description: Severity code
          example: High
          enum:
            - Critical
            - High
            - Medium
            - Low
            - Info
            - Unassigned
        status:
          type: string
          description: >-
            Indicates if the Security Issue was found to be remediated, ignored,
            etc.
          example: Remediated
          enum:
            - Remediated
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Exempted
        targetVariantName:
          type: string
          description: Name of the associated Target and Variant
          example: nodegoat:master
          pattern: ^[a-zA-Z0-9_-]{22}$
        title:
          type: string
          description: Title of the Security Issue
          example: json-schema@0.2.3 is vulnerable to Prototype Pollution
          maxLength: 128
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      description: Short summary of an Issue
      example:
        currentStatus: Expired
        exemptionCoverage: Partially Exempted
        exemptionId: abcdef1234567890ghijkl
        exemptionStatusAtScan: Pending
        id: abcdef1234567890ghijkl
        key: json-schema@0.2.3
        numNewOccurrences: 7765887405066243000
        numOccurrences: 8691339811841726000
        numRemediatedOccurrences: 3789073404689644000
        originStatus: approved
        origins:
          - app
          - base
        override:
          originalSeverity: medium
          reason: snyk
        scanId: scan111111111111111111
        severity: 8.5
        severityCode: High
        status: Remediated
        targetVariantName: nodegoat:master
        title: json-schema@0.2.3 is vulnerable to Prototype Pollution
        type: SAST
      required:
        - title
        - key
        - severity
        - severityCode
        - id
        - scanId
    IssuesAugmentRemediationRequestBody:
      type: object
      properties:
        connectorId:
          type: string
          example: Autem sed corporis exercitationem nostrum.
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        referenceId:
          type: string
          example: CWE-123
        scanId:
          type: string
          description: The Scan ID to use as context for the Security Issue to augment
          example: abcdefghijkl1234567890
          pattern: ^[a-zA-Z0-9_-]{22}$
        userSnippet:
          type: string
          description: The user-supplied code snippet
          example: |-
            func example() int {
              return 0
            }
          minLength: 1
          maxLength: 1024
      example:
        connectorId: Labore rerum quibusdam eius nihil sed.
        occurrenceId: 12345
        referenceId: CWE-123
        scanId: abcdefghijkl1234567890
        userSnippet: |-
          func example() int {
            return 0
          }
      required:
        - scanId
        - occurrenceId
    IssuesIssuesAugmentRemediationResponseBody:
      $ref: '#/components/schemas/AugmentRemediationResult'
    IssuesListIssuesResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/Issue'
          example:
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
      required:
        - results
        - pagination
    LatestBaselineScanInfo:
      type: object
      properties:
        pipelineId:
          type: string
          description: ID of the Harness pipeline to which this Exemption applies
          example: pipeline_1
        scanTool:
          type: string
          description: Product name of the scan tool used in this step
          example: owasp
        scanToolName:
          type: string
          description: Human readable name of the scan tool used in this step
          example: OWASP
        targetId:
          type: string
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: The name of the target of the pipeline step's scan
          example: The Target
        targetType:
          type: string
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
      description: Information about a the latest scan of a targets baseline variant
      example:
        pipelineId: pipeline_1
        scanTool: owasp
        scanToolName: OWASP
        targetId: abcdef1234567890ghijkl
        targetName: The Target
        targetType: repository
      required:
        - targetId
        - targetName
        - targetType
        - pipelineId
        - scanTool
        - scanToolName
    ListPullRequestsResult:
      type: object
      properties:
        pullRequests:
          type: array
          items:
            $ref: '#/components/schemas/PullRequestResult'
          description: The list of Pull Requests
          example:
            - pullRequestNumber: 4105272855209716700
              pullRequestUrl: Rerum blanditiis.
              sourceBranch: feat/shiny-object
            - pullRequestNumber: 4105272855209716700
              pullRequestUrl: Rerum blanditiis.
              sourceBranch: feat/shiny-object
            - pullRequestNumber: 4105272855209716700
              pullRequestUrl: Rerum blanditiis.
              sourceBranch: feat/shiny-object
      example:
        pullRequests:
          - pullRequestNumber: 4105272855209716700
            pullRequestUrl: Rerum blanditiis.
            sourceBranch: feat/shiny-object
          - pullRequestNumber: 4105272855209716700
            pullRequestUrl: Rerum blanditiis.
            sourceBranch: feat/shiny-object
      required:
        - pullRequests
    MinimalIssueCounts:
      type: object
      properties:
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
      description: >-
        The count of Security Issues, by severity code, for a given Harness
        Pipeline Execution
      example:
        critical: 1
        high: 3
        ignored: 1
        info: 11
        low: 39
        medium: 17
      required:
        - critical
        - high
        - medium
        - low
        - info
    MinimalIssueCountsPerScanner:
      type: object
      properties:
        critical:
          type: integer
          description: The number of Critical-severity Issues
          example: 1
          format: int32
        high:
          type: integer
          description: The number of High-severity Issues
          example: 3
          format: int32
        ignored:
          type: integer
          description: >-
            The number of Issues ignored due to Exemptions, and therefore not
            included in other counts
          example: 1
          format: int32
        info:
          type: integer
          description: The number of Informational Issues
          example: 11
          format: int32
        low:
          type: integer
          description: The number of Low-severity Issues
          example: 39
          format: int32
        medium:
          type: integer
          description: The number of Medium-severity Issues
          example: 17
          format: int32
        scanner:
          type: string
          description: Name of the scanner that produced these issues
          example: Semgrep
      description: >-
        The count of Security Issues, by severity code, for a given Harness
        Pipeline Execution
      example:
        critical: 1
        high: 3
        ignored: 1
        info: 11
        low: 39
        medium: 17
        scanner: Semgrep
      required:
        - critical
        - high
        - medium
        - low
        - info
        - scanner
    NotFound:
      type: object
      properties:
        message:
          type: string
          example: Not Found
        status:
          type: integer
          default: 404
          example: 404
          format: int64
      example:
        message: Not Found
        status: 404
      required:
        - message
    PaginatedIssueSummaries:
      type: object
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/IssueSummary'
          description: >-
            Diff-ed Issues related to this scan step, resulting from a diff
            between a scan and its target's latest baseline scan (previous scan
            if no baseline)
          example:
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
        pagination:
          $ref: '#/components/schemas/StoPagination'
      example:
        issues:
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - currentStatus: Expired
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Expired
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numNewOccurrences: 1048060960681060400
            numOccurrences: 8296927288358581000
            numRemediatedOccurrences: 7232480910270412000
            originStatus: approved
            origins:
              - app
              - base
            override:
              originalSeverity: medium
              reason: snyk
            scanId: scan111111111111111111
            severity: 8.5
            severityCode: High
            status: Remediated
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - issues
        - pagination
    StoPagination:
      type: object
      properties:
        link:
          type: string
          description: Link-based paging
          example: ''
        page:
          type: integer
          description: Page number (starting from 0)
          example: 4
          format: int64
        pageSize:
          type: integer
          description: Requested page size
          example: 20
          format: int64
        totalItems:
          type: integer
          description: Total results available
          example: 230
          format: int64
        totalPages:
          type: integer
          description: Total pages available
          example: 12
          format: int64
      example:
        link: ''
        page: 4
        pageSize: 20
        totalItems: 230
        totalPages: 12
      required:
        - page
        - pageSize
        - totalPages
        - totalItems
    PatchTargetRequestBody:
      type: object
      properties:
        baselineRegEx:
          type: string
          description: >-
            RegEx to match for dynamically selecting the Baseline for this Scan
            Target. Must be compatible with the RE2 standard.
          example: release_.*
          maxLength: 128
        baselineVariantId:
          type: string
          description: ID of baseline Target Variant for Issue comparison
          example: abcdef1234567890ghijkl
          pattern: ^([a-zA-Z0-9_-]{22}|)$
        directory:
          type: string
          description: Directory within the Test Target to be scanned
          example: app/src
          maxLength: 1024
        name:
          type: string
          description: Name of the Test Target
          example: NodeGoat
          pattern: ^[a-zA-Z0-9_.:/|()-]+$
          maxLength: 128
        type:
          type: string
          description: Test Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        url:
          type: string
          description: URL used to access the Test Target
          example: https://github.com/example/repo
          maxLength: 1024
      example:
        baselineRegEx: release_.*
        baselineVariantId: abcdef1234567890ghijkl
        directory: app/src
        name: NodeGoat
        type: repository
        url: https://github.com/example/repo
    PendingChanges:
      type: object
      properties:
        durationDays:
          type: integer
          description: The number of days an issue should be exempted for
          example: 7
          format: int64
      example:
        durationDays: 7
    PipelineSecurityCounts:
      type: object
      properties:
        activeIssueCount:
          type: integer
          example: 967442155559725400
          format: int64
        existing:
          $ref: '#/components/schemas/FrontendIssueCounts'
        new:
          $ref: '#/components/schemas/FrontendIssueCounts'
        remediated:
          $ref: '#/components/schemas/FrontendIssueCounts'
        totalActive:
          type: integer
          example: 6195274525853299000
          format: int64
        totalApp:
          type: integer
          example: 2196869789397973200
          format: int64
        totalBase:
          type: integer
          example: 6496336585104447000
          format: int64
        totalDeduplicationRate:
          type: number
          example: 0.51762813
          format: float
        totalExempted:
          type: integer
          example: 2259989023693741300
          format: int64
        totalNoLayer:
          type: integer
          example: 6812810477266077000
          format: int64
        totalNumOccurrence:
          type: integer
          example: 2449781386169293000
          format: int64
        totalPartiallyExempted:
          type: integer
          example: 2605333259226845700
          format: int64
        totalPending:
          type: integer
          example: 4214074080212510700
          format: int64
        totalRejected:
          type: integer
          example: 1098716295872907900
          format: int64
        totalRemediated:
          type: integer
          example: 2581120438516474000
          format: int64
      example:
        activeIssueCount: 1544235739743199200
        existing:
          active: 150
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        new:
          active: 150
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        remediated:
          active: 150
          critical: 1
          high: 3
          ignored: 1
          info: 11
          low: 39
          medium: 17
        totalActive: 2513084582450210300
        totalApp: 2191528669767082200
        totalBase: 7625475638845644000
        totalDeduplicationRate: 0.32979053
        totalExempted: 4993216374650644000
        totalNoLayer: 3411639614350213600
        totalNumOccurrence: 8415228047045286000
        totalPartiallyExempted: 7780078677399778000
        totalPending: 6972574372126504000
        totalRejected: 8240491196709848000
        totalRemediated: 1686290356545852700
      required:
        - new
        - existing
        - remediated
        - totalActive
    PipelineSecurityIssuesResult:
      type: object
      properties:
        counts:
          $ref: '#/components/schemas/PipelineSecurityCounts'
        existing:
          $ref: '#/components/schemas/PaginatedIssueSummaries'
        matchingSteps:
          type: array
          items:
            $ref: '#/components/schemas/StageStepID'
          example:
            - stageId: stage_id
              stepId: step_id
            - stageId: stage_id
              stepId: step_id
            - stageId: stage_id
              stepId: step_id
            - stageId: stage_id
              stepId: step_id
        new:
          $ref: '#/components/schemas/PaginatedIssueSummaries'
      description: Data needed by the PipelineSecurityView
      example:
        counts:
          activeIssueCount: 8118351700684797000
          existing:
            active: 150
            critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
          new:
            active: 150
            critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
          remediated:
            active: 150
            critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
          totalActive: 5573055429440194000
          totalApp: 7230377491846565000
          totalBase: 7321888988188102000
          totalDeduplicationRate: 0.7533872
          totalExempted: 4813427233882540000
          totalNoLayer: 505412228863283700
          totalNumOccurrence: 7787001750933949000
          totalPartiallyExempted: 8003506715595385000
          totalPending: 982006258367386900
          totalRejected: 1519204626652216600
          totalRemediated: 7163594115465648000
        existing:
          issues:
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
          pagination:
            link: ''
            page: 4
            pageSize: 20
            totalItems: 230
            totalPages: 12
        matchingSteps:
          - stageId: stage_id
            stepId: step_id
          - stageId: stage_id
            stepId: step_id
        new:
          issues:
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
          pagination:
            link: ''
            page: 4
            pageSize: 20
            totalItems: 230
            totalPages: 12
      required:
        - existing
        - new
        - counts
        - matchingSteps
    PipelineSecurityStepsResult:
      type: object
      properties:
        steps:
          type: array
          items:
            $ref: '#/components/schemas/StepInfo'
          example:
            - baselineVariant: 'branch: main'
              scanId: scan111111111111111111
              scanTool: owasp
              scanToolName: OWASP
              stageId: stage_id
              stepId: step_id
              subproduct: product
              targetId: target1111111111111111
              targetName: The Target
              targetType: repository
              targetVariant: 'branch: feature'
            - baselineVariant: 'branch: main'
              scanId: scan111111111111111111
              scanTool: owasp
              scanToolName: OWASP
              stageId: stage_id
              stepId: step_id
              subproduct: product
              targetId: target1111111111111111
              targetName: The Target
              targetType: repository
              targetVariant: 'branch: feature'
      example:
        steps:
          - baselineVariant: 'branch: main'
            scanId: scan111111111111111111
            scanTool: owasp
            scanToolName: OWASP
            stageId: stage_id
            stepId: step_id
            subproduct: product
            targetId: target1111111111111111
            targetName: The Target
            targetType: repository
            targetVariant: 'branch: feature'
          - baselineVariant: 'branch: main'
            scanId: scan111111111111111111
            scanTool: owasp
            scanToolName: OWASP
            stageId: stage_id
            stepId: step_id
            subproduct: product
            targetId: target1111111111111111
            targetName: The Target
            targetType: repository
            targetVariant: 'branch: feature'
          - baselineVariant: 'branch: main'
            scanId: scan111111111111111111
            scanTool: owasp
            scanToolName: OWASP
            stageId: stage_id
            stepId: step_id
            subproduct: product
            targetId: target1111111111111111
            targetName: The Target
            targetType: repository
            targetVariant: 'branch: feature'
          - baselineVariant: 'branch: main'
            scanId: scan111111111111111111
            scanTool: owasp
            scanToolName: OWASP
            stageId: stage_id
            stepId: step_id
            subproduct: product
            targetId: target1111111111111111
            targetName: The Target
            targetType: repository
            targetVariant: 'branch: feature'
      required:
        - steps
    Product:
      type: object
      properties:
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        description:
          type: string
          description: Scan Tool's description
          example: OWASP 5.x SCA scanner
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        isEnabled:
          type: boolean
          description: '''true'' if this Scan Tool is enabled for use'
          example: true
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        name:
          type: string
          description: Name of the Scan Tool
          example: owasp
        prettyName:
          type: string
          description: Name of the Scan Tool
          example: owasp
      description: Information about a Scan Tool
      example:
        created: 1651578240
        description: OWASP 5.x SCA scanner
        id: abcdef1234567890ghijkl
        isEnabled: true
        lastModified: 1651578240
        name: owasp
        prettyName: owasp
      required:
        - name
        - prettyName
        - description
        - isEnabled
        - id
        - created
        - lastModified
    ProductsListProductsResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/Product'
          example:
            - created: 1651578240
              description: OWASP 5.x SCA scanner
              id: abcdef1234567890ghijkl
              isEnabled: true
              lastModified: 1651578240
              name: owasp
              prettyName: owasp
            - created: 1651578240
              description: OWASP 5.x SCA scanner
              id: abcdef1234567890ghijkl
              isEnabled: true
              lastModified: 1651578240
              name: owasp
              prettyName: owasp
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - created: 1651578240
            description: OWASP 5.x SCA scanner
            id: abcdef1234567890ghijkl
            isEnabled: true
            lastModified: 1651578240
            name: owasp
            prettyName: owasp
          - created: 1651578240
            description: OWASP 5.x SCA scanner
            id: abcdef1234567890ghijkl
            isEnabled: true
            lastModified: 1651578240
            name: owasp
            prettyName: owasp
          - created: 1651578240
            description: OWASP 5.x SCA scanner
            id: abcdef1234567890ghijkl
            isEnabled: true
            lastModified: 1651578240
            name: owasp
            prettyName: owasp
          - created: 1651578240
            description: OWASP 5.x SCA scanner
            id: abcdef1234567890ghijkl
            isEnabled: true
            lastModified: 1651578240
            name: owasp
            prettyName: owasp
      required:
        - results
        - pagination
    PromoteExemptionRequestBody:
      type: object
      properties:
        approverId:
          type: string
          description: User ID the user who approved or rejected this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        comment:
          type: string
          description: Comment to be added to the Exemption approval or rejection
          example: This is a comment for the approval or rejection of the exemption
          maxLength: 1024
        pipelineId:
          type: string
          description: Harness STO pipeline ID
          example: abcdef1234567890ghijkl
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        targetId:
          type: string
          description: Harness STO Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
      example:
        approverId: user111111111111111111
        comment: This is a comment for the approval or rejection of the exemption
        pipelineId: abcdef1234567890ghijkl
        targetId: abcdef1234567890ghijkl
      required:
        - approverId
        - type
        - reason
        - requesterId
        - pendingChanges
        - issueId
        - status
        - created
        - lastModified
    PullRequestCorrelationResult:
      type: object
      properties:
        isCorrelated:
          type: boolean
          description: True if the path is correlated to the Pull Request
          example: true
      example:
        isCorrelated: true
      required:
        - isCorrelated
    PullRequestResult:
      type: object
      properties:
        pullRequestNumber:
          type: integer
          description: The number of the Pull Request
          example: 6167813541510039000
          format: int64
        pullRequestUrl:
          type: string
          description: The  URL of the Pull Request
          example: Modi debitis at blanditiis molestiae repudiandae nemo.
        sourceBranch:
          type: string
          description: The source branch of the Pull Request
          example: feat/shiny-object
      example:
        pullRequestNumber: 2319546518801501000
        pullRequestUrl: Omnis aut est quod et repudiandae amet.
        sourceBranch: feat/shiny-object
      required:
        - sourceBranch
        - pullRequestNumber
        - pullRequestUrl
    PullRequestsGetPullRequestCorrelationResponseBody:
      $ref: '#/components/schemas/PullRequestCorrelationResult'
    PullRequestsListPullRequestsResponseBody:
      $ref: '#/components/schemas/ListPullRequestsResult'
    RefIds:
      type: object
      properties:
        id:
          type: string
          example: Ut possimus est neque consequatur.
        type:
          type: string
          example: Nemo quas eos nam molestiae quisquam modi.
      example:
        id: Qui consequuntur velit.
        type: Odit harum velit nisi deserunt.
    STODataFrontendAllIssuesListResponseBody:
      $ref: '#/components/schemas/AllIssuesListResultV2'
    Scan:
      type: object
      properties:
        codeCoverage:
          type: number
          description: The Code Coverage value for the Scan
          example: 65.5
          format: float
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        executionId:
          type: string
          description: Pipeline Execution ID associated with the Scan
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        gitMetadata:
          $ref: '#/components/schemas/GitMetadata'
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        metadata:
          $ref: '#/components/schemas/ScanMetadata'
        orgId:
          type: string
          description: Harness Organization ID
          example: your_harness_org
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        pipelineId:
          type: string
          description: Harness Organization ID
          example: your_harness_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        productId:
          type: string
          description: The Scan Product used for the Scan
          example: product111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        projectId:
          type: string
          description: Harness Project ID
          example: your_harness_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        refinementVersion:
          type: string
          description: The Issue refinement version used for this Scan
          example: 1.0.5
        stageId:
          type: string
          description: Pipeline Stage ID associated with the Scan
          example: stage_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        status:
          type: string
          description: Current status of the Scan
          example: Succeeded
          enum:
            - Pending
            - Running
            - Succeeded
            - Failed
        stepId:
          type: string
          description: Pipeline Step ID associated with the Scan
          example: step_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        subproduct:
          type: string
          description: The Scan Subproduct used for the Scan
          example: owasp
          format: binary
        targetVariantId:
          type: string
          description: The Target Variant associated with the Scan
          example: variant111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
      description: Information about a Security Test Scan
      example:
        codeCoverage: 65.5
        created: 1651578240
        executionId: abcdef1234567890ghijkl
        gitMetadata:
          detectedName: Nesciunt et.
          detectedVariant: Et voluptatem quos voluptate voluptatem eos.
          droneCorrelated: true
          provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
          pullRequestNumber: 11
          repositoryHttp: https://github.com/harness/drone-cli.git
          repositoryPath:
            - Nulla ipsa.
            - Molestiae possimus expedita odio ut.
            - Et dolor doloribus.
            - Ut adipisci optio sit itaque assumenda.
          repositorySsh: git@github.com:harness/drone-cli.git
          sourceBranch: feat/shiny-object
          targetBranch: develop
          workspace: /harness
        id: abcdef1234567890ghijkl
        lastModified: 1651578240
        metadata:
          baseImageDigest: sha256:abcdef1234567890ghijkl
          baseImageName: my-image
          baseImageTag: 1.0.0
        orgId: your_harness_org
        pipelineId: your_harness_pipeline
        productId: product111111111111111
        projectId: your_harness_project
        refinementVersion: 1.0.5
        stageId: stage_id
        status: Succeeded
        stepId: step_id
        subproduct: owasp
        targetVariantId: variant111111111111111
      required:
        - targetVariantId
        - orgId
        - projectId
        - pipelineId
        - executionId
        - stageId
        - stepId
        - productId
        - status
        - refinementVersion
        - id
        - created
        - lastModified
    ScanIssueCountsWithExecutionInfo:
      type: object
      properties:
        artifactFingerprint:
          type: string
          description: Fingerprint which identifies an artifact
          example: lv1
          maxLength: 64
        executionId:
          type: string
          description: Harness Execution ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        lastScanned:
          type: integer
          description: Timestamp at which the target variant was last scanned
          example: 1634836529
          format: int64
        pipelineId:
          type: string
          description: Harness Pipeline ID
          example: example_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        scanners:
          type: array
          items:
            $ref: '#/components/schemas/MinimalIssueCountsPerScanner'
          description: List of security issue counts grouped by scanner
          example:
            - critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
              scanner: Semgrep
            - critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
              scanner: Semgrep
            - critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
              scanner: Semgrep
            - critical: 1
              high: 3
              ignored: 1
              info: 11
              low: 39
              medium: 17
              scanner: Semgrep
        targetId:
          type: string
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        targetVariantId:
          type: string
          description: Associated Target Variant ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetVariantName:
          type: string
          description: Name of the Scan Target
          example: NodeGoat
        type:
          type: string
          description: Scan Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
      description: >-
        The count of Security Issues, by severity code, for a given Harness
        Pipeline Execution along with this execution info
      example:
        artifactFingerprint: 94m
        executionId: abcdef1234567890ghijkl
        lastScanned: 1634836529
        pipelineId: example_pipeline
        scanners:
          - critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
            scanner: Semgrep
          - critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
            scanner: Semgrep
          - critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
            scanner: Semgrep
          - critical: 1
            high: 3
            ignored: 1
            info: 11
            low: 39
            medium: 17
            scanner: Semgrep
        targetId: abcdef1234567890ghijkl
        targetName: NodeGoat
        targetVariantId: abcdef1234567890ghijkl
        targetVariantName: NodeGoat
        type: repository
      required:
        - scanners
        - targetId
        - targetVariantId
        - type
        - targetName
        - targetVariantName
        - executionId
        - pipelineId
        - lastScanned
    ScanIssuesResult:
      type: object
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/Issue'
          description: List of Issues
          example:
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            - baseImageName: baseImageName
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              currentStatus: Approved
              details:
                package: json-schema
                version: v0.2.3
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Pending
              harnessAugmentation:
                Tenetur quia.: Facilis minima ea ut sed ab aut.
                Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numOccurrences: 10
              occurrenceId: 12345
              occurrences:
                - line: '42'
                - line: '666'
              originStatus: approved
              origins:
                - app
                - base
              productId: product1234567890abcde
              severity: 8.5
              severityCode: High
              status: Remediated
              subproduct: product
              targetId: abcdef1234567890ghijkl
              targetName: abcdef1234567890ghijkl
              targetType: repository
              targetVariantId: abcdef1234567890ghijkl
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
      description: List of Issues
      example:
        issues:
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
          - baseImageName: baseImageName
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            currentStatus: Approved
            details:
              package: json-schema
              version: v0.2.3
            exemptionCoverage: Partially Exempted
            exemptionId: abcdef1234567890ghijkl
            exemptionStatusAtScan: Pending
            harnessAugmentation:
              Tenetur quia.: Facilis minima ea ut sed ab aut.
              Voluptate ex atque atque hic voluptatibus.: Aut ut voluptas beatae totam.
            id: abcdef1234567890ghijkl
            key: json-schema@0.2.3
            numOccurrences: 10
            occurrenceId: 12345
            occurrences:
              - line: '42'
              - line: '666'
            originStatus: approved
            origins:
              - app
              - base
            productId: product1234567890abcde
            severity: 8.5
            severityCode: High
            status: Remediated
            subproduct: product
            targetId: abcdef1234567890ghijkl
            targetName: abcdef1234567890ghijkl
            targetType: repository
            targetVariantId: abcdef1234567890ghijkl
            targetVariantName: nodegoat:master
            title: json-schema@0.2.3 is vulnerable to Prototype Pollution
            type: SAST
      required:
        - issues
    ScanMetadata:
      type: object
      properties:
        baseImageDigest:
          type: string
          description: Digest of the base image
          example: sha256:1234567890abcdefghijkl
        baseImageName:
          type: string
          description: Name of the base image
          example: alpine
        baseImageTag:
          type: string
          description: Tag of the base image
          example: '3.18'
        deduplicatedCount:
          type: integer
          description: Total number of deduplicated issues found in the scan
          example: 80
          format: int32
        imageDomain:
          type: string
          description: Domain of the container image registry
          example: docker.io
        imageName:
          type: string
          description: Name of the container image
          example: my-application
        imageTag:
          type: string
          description: Tag of the container image
          example: v1.2.3
        normalizedCount:
          type: integer
          description: Total number of normalized issues found in the scan
          example: 100
          format: int32
      description: Metadata specific to the entity being scanned
      example:
        baseImageDigest: sha256:1234567890abcdefghijkl
        baseImageName: alpine
        baseImageTag: '3.18'
        deduplicatedCount: 80
        imageDomain: docker.io
        imageName: my-application
        imageTag: v1.2.3
        normalizedCount: 100
    ScansListScansResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/Scan'
          example:
            - codeCoverage: 65.5
              created: 1651578240
              executionId: abcdef1234567890ghijkl
              gitMetadata:
                detectedName: Nesciunt et.
                detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                droneCorrelated: true
                provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                pullRequestNumber: 11
                repositoryHttp: https://github.com/harness/drone-cli.git
                repositoryPath:
                  - Nulla ipsa.
                  - Molestiae possimus expedita odio ut.
                  - Et dolor doloribus.
                  - Ut adipisci optio sit itaque assumenda.
                repositorySsh: git@github.com:harness/drone-cli.git
                sourceBranch: feat/shiny-object
                targetBranch: develop
                workspace: /harness
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              metadata:
                baseImageDigest: sha256:abcdef1234567890ghijkl
                baseImageName: my-image
                baseImageTag: 1.0.0
              orgId: your_harness_org
              pipelineId: your_harness_pipeline
              productId: product111111111111111
              projectId: your_harness_project
              refinementVersion: 1.0.5
              stageId: stage_id
              status: Succeeded
              stepId: step_id
              subproduct: owasp
              targetVariantId: variant111111111111111
            - codeCoverage: 65.5
              created: 1651578240
              executionId: abcdef1234567890ghijkl
              gitMetadata:
                detectedName: Nesciunt et.
                detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                droneCorrelated: true
                provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                pullRequestNumber: 11
                repositoryHttp: https://github.com/harness/drone-cli.git
                repositoryPath:
                  - Nulla ipsa.
                  - Molestiae possimus expedita odio ut.
                  - Et dolor doloribus.
                  - Ut adipisci optio sit itaque assumenda.
                repositorySsh: git@github.com:harness/drone-cli.git
                sourceBranch: feat/shiny-object
                targetBranch: develop
                workspace: /harness
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              metadata:
                baseImageDigest: sha256:abcdef1234567890ghijkl
                baseImageName: my-image
                baseImageTag: 1.0.0
              orgId: your_harness_org
              pipelineId: your_harness_pipeline
              productId: product111111111111111
              projectId: your_harness_project
              refinementVersion: 1.0.5
              stageId: stage_id
              status: Succeeded
              stepId: step_id
              subproduct: owasp
              targetVariantId: variant111111111111111
            - codeCoverage: 65.5
              created: 1651578240
              executionId: abcdef1234567890ghijkl
              gitMetadata:
                detectedName: Nesciunt et.
                detectedVariant: Et voluptatem quos voluptate voluptatem eos.
                droneCorrelated: true
                provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
                pullRequestNumber: 11
                repositoryHttp: https://github.com/harness/drone-cli.git
                repositoryPath:
                  - Nulla ipsa.
                  - Molestiae possimus expedita odio ut.
                  - Et dolor doloribus.
                  - Ut adipisci optio sit itaque assumenda.
                repositorySsh: git@github.com:harness/drone-cli.git
                sourceBranch: feat/shiny-object
                targetBranch: develop
                workspace: /harness
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              metadata:
                baseImageDigest: sha256:abcdef1234567890ghijkl
                baseImageName: my-image
                baseImageTag: 1.0.0
              orgId: your_harness_org
              pipelineId: your_harness_pipeline
              productId: product111111111111111
              projectId: your_harness_project
              refinementVersion: 1.0.5
              stageId: stage_id
              status: Succeeded
              stepId: step_id
              subproduct: owasp
              targetVariantId: variant111111111111111
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - codeCoverage: 65.5
            created: 1651578240
            executionId: abcdef1234567890ghijkl
            gitMetadata:
              detectedName: Nesciunt et.
              detectedVariant: Et voluptatem quos voluptate voluptatem eos.
              droneCorrelated: true
              provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
              pullRequestNumber: 11
              repositoryHttp: https://github.com/harness/drone-cli.git
              repositoryPath:
                - Nulla ipsa.
                - Molestiae possimus expedita odio ut.
                - Et dolor doloribus.
                - Ut adipisci optio sit itaque assumenda.
              repositorySsh: git@github.com:harness/drone-cli.git
              sourceBranch: feat/shiny-object
              targetBranch: develop
              workspace: /harness
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            metadata:
              baseImageDigest: sha256:abcdef1234567890ghijkl
              baseImageName: my-image
              baseImageTag: 1.0.0
            orgId: your_harness_org
            pipelineId: your_harness_pipeline
            productId: product111111111111111
            projectId: your_harness_project
            refinementVersion: 1.0.5
            stageId: stage_id
            status: Succeeded
            stepId: step_id
            subproduct: owasp
            targetVariantId: variant111111111111111
          - codeCoverage: 65.5
            created: 1651578240
            executionId: abcdef1234567890ghijkl
            gitMetadata:
              detectedName: Nesciunt et.
              detectedVariant: Et voluptatem quos voluptate voluptatem eos.
              droneCorrelated: true
              provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
              pullRequestNumber: 11
              repositoryHttp: https://github.com/harness/drone-cli.git
              repositoryPath:
                - Nulla ipsa.
                - Molestiae possimus expedita odio ut.
                - Et dolor doloribus.
                - Ut adipisci optio sit itaque assumenda.
              repositorySsh: git@github.com:harness/drone-cli.git
              sourceBranch: feat/shiny-object
              targetBranch: develop
              workspace: /harness
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            metadata:
              baseImageDigest: sha256:abcdef1234567890ghijkl
              baseImageName: my-image
              baseImageTag: 1.0.0
            orgId: your_harness_org
            pipelineId: your_harness_pipeline
            productId: product111111111111111
            projectId: your_harness_project
            refinementVersion: 1.0.5
            stageId: stage_id
            status: Succeeded
            stepId: step_id
            subproduct: owasp
            targetVariantId: variant111111111111111
          - codeCoverage: 65.5
            created: 1651578240
            executionId: abcdef1234567890ghijkl
            gitMetadata:
              detectedName: Nesciunt et.
              detectedVariant: Et voluptatem quos voluptate voluptatem eos.
              droneCorrelated: true
              provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
              pullRequestNumber: 11
              repositoryHttp: https://github.com/harness/drone-cli.git
              repositoryPath:
                - Nulla ipsa.
                - Molestiae possimus expedita odio ut.
                - Et dolor doloribus.
                - Ut adipisci optio sit itaque assumenda.
              repositorySsh: git@github.com:harness/drone-cli.git
              sourceBranch: feat/shiny-object
              targetBranch: develop
              workspace: /harness
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            metadata:
              baseImageDigest: sha256:abcdef1234567890ghijkl
              baseImageName: my-image
              baseImageTag: 1.0.0
            orgId: your_harness_org
            pipelineId: your_harness_pipeline
            productId: product111111111111111
            projectId: your_harness_project
            refinementVersion: 1.0.5
            stageId: stage_id
            status: Succeeded
            stepId: step_id
            subproduct: owasp
            targetVariantId: variant111111111111111
          - codeCoverage: 65.5
            created: 1651578240
            executionId: abcdef1234567890ghijkl
            gitMetadata:
              detectedName: Nesciunt et.
              detectedVariant: Et voluptatem quos voluptate voluptatem eos.
              droneCorrelated: true
              provider: Dignissimos incidunt quibusdam officiis doloremque eos et.
              pullRequestNumber: 11
              repositoryHttp: https://github.com/harness/drone-cli.git
              repositoryPath:
                - Nulla ipsa.
                - Molestiae possimus expedita odio ut.
                - Et dolor doloribus.
                - Ut adipisci optio sit itaque assumenda.
              repositorySsh: git@github.com:harness/drone-cli.git
              sourceBranch: feat/shiny-object
              targetBranch: develop
              workspace: /harness
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            metadata:
              baseImageDigest: sha256:abcdef1234567890ghijkl
              baseImageName: my-image
              baseImageTag: 1.0.0
            orgId: your_harness_org
            pipelineId: your_harness_pipeline
            productId: product111111111111111
            projectId: your_harness_project
            refinementVersion: 1.0.5
            stageId: stage_id
            status: Succeeded
            stepId: step_id
            subproduct: owasp
            targetVariantId: variant111111111111111
      required:
        - results
        - pagination
    ScansScanIssueCountsResponseBody:
      $ref: '#/components/schemas/FullIssueCounts'
    ScansScanIssueResponseBody:
      $ref: '#/components/schemas/IssueInScan'
    ScansScanIssuesResponseBody:
      $ref: '#/components/schemas/ScanIssuesResult'
    SecurityReviewResult:
      type: object
      properties:
        counts:
          $ref: '#/components/schemas/FrontendExemptionCounts'
        exemptions:
          type: array
          items:
            $ref: '#/components/schemas/FrontendExemption'
          description: Security Review data
          example:
            - approverId: user111111111111111111
              canApproveFor:
                - ACCOUNT
                - ORG
                - PROJECT
                - PIPELINE
              canCancel: true
              canCreate: true
              canReApprove: true
              canReject: true
              created: 1651578240
              expiration: 1651578240
              id: abcdef1234567890ghijkl
              isDeleted: true
              isOccurrenceLevelExemption: true
              issueSummary:
                currentStatus: Expired
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Expired
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                numNewOccurrences: 1048060960681060400
                numOccurrences: 8296927288358581000
                numRemediatedOccurrences: 7232480910270412000
                originStatus: approved
                origins:
                  - app
                  - base
                override:
                  originalSeverity: medium
                  reason: snyk
                scanId: scan111111111111111111
                severity: 8.5
                severityCode: High
                status: Remediated
                targetVariantName: nodegoat:master
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
              lastModified: 1651578240
              link: Upstream bug
              numOccurrences: 10
              orgId: STO
              pendingChanges:
                durationDays: 7
              pipelineId: pipeline_1
              projectId: STO
              reason: Upstream bug
              requesterId: user111111111111111111
              scope: PROJECT
              status: Approved
              targetId: target2222222222222222
              totalOccurrences: 10
              type: Other
            - approverId: user111111111111111111
              canApproveFor:
                - ACCOUNT
                - ORG
                - PROJECT
                - PIPELINE
              canCancel: true
              canCreate: true
              canReApprove: true
              canReject: true
              created: 1651578240
              expiration: 1651578240
              id: abcdef1234567890ghijkl
              isDeleted: true
              isOccurrenceLevelExemption: true
              issueSummary:
                currentStatus: Expired
                exemptionCoverage: Partially Exempted
                exemptionId: abcdef1234567890ghijkl
                exemptionStatusAtScan: Expired
                id: abcdef1234567890ghijkl
                key: json-schema@0.2.3
                numNewOccurrences: 1048060960681060400
                numOccurrences: 8296927288358581000
                numRemediatedOccurrences: 7232480910270412000
                originStatus: approved
                origins:
                  - app
                  - base
                override:
                  originalSeverity: medium
                  reason: snyk
                scanId: scan111111111111111111
                severity: 8.5
                severityCode: High
                status: Remediated
                targetVariantName: nodegoat:master
                title: json-schema@0.2.3 is vulnerable to Prototype Pollution
                type: SAST
              lastModified: 1651578240
              link: Upstream bug
              numOccurrences: 10
              orgId: STO
              pendingChanges:
                durationDays: 7
              pipelineId: pipeline_1
              projectId: STO
              reason: Upstream bug
              requesterId: user111111111111111111
              scope: PROJECT
              status: Approved
              targetId: target2222222222222222
              totalOccurrences: 10
              type: Other
        pagination:
          $ref: '#/components/schemas/StoPagination'
      description: Data needed by the Security Review page
      example:
        counts:
          Approved: 150
          Expired: 150
          Pending: 150
          Rejected: 150
        exemptions:
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            created: 1651578240
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            isOccurrenceLevelExemption: true
            issueSummary:
              currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            lastModified: 1651578240
            link: Upstream bug
            numOccurrences: 10
            orgId: STO
            pendingChanges:
              durationDays: 7
            pipelineId: pipeline_1
            projectId: STO
            reason: Upstream bug
            requesterId: user111111111111111111
            scope: PROJECT
            status: Approved
            targetId: target2222222222222222
            totalOccurrences: 10
            type: Other
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            created: 1651578240
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            isOccurrenceLevelExemption: true
            issueSummary:
              currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            lastModified: 1651578240
            link: Upstream bug
            numOccurrences: 10
            orgId: STO
            pendingChanges:
              durationDays: 7
            pipelineId: pipeline_1
            projectId: STO
            reason: Upstream bug
            requesterId: user111111111111111111
            scope: PROJECT
            status: Approved
            targetId: target2222222222222222
            totalOccurrences: 10
            type: Other
          - approverId: user111111111111111111
            canApproveFor:
              - ACCOUNT
              - ORG
              - PROJECT
              - PIPELINE
            canCancel: true
            canCreate: true
            canReApprove: true
            canReject: true
            created: 1651578240
            expiration: 1651578240
            id: abcdef1234567890ghijkl
            isDeleted: true
            isOccurrenceLevelExemption: true
            issueSummary:
              currentStatus: Expired
              exemptionCoverage: Partially Exempted
              exemptionId: abcdef1234567890ghijkl
              exemptionStatusAtScan: Expired
              id: abcdef1234567890ghijkl
              key: json-schema@0.2.3
              numNewOccurrences: 1048060960681060400
              numOccurrences: 8296927288358581000
              numRemediatedOccurrences: 7232480910270412000
              originStatus: approved
              origins:
                - app
                - base
              override:
                originalSeverity: medium
                reason: snyk
              scanId: scan111111111111111111
              severity: 8.5
              severityCode: High
              status: Remediated
              targetVariantName: nodegoat:master
              title: json-schema@0.2.3 is vulnerable to Prototype Pollution
              type: SAST
            lastModified: 1651578240
            link: Upstream bug
            numOccurrences: 10
            orgId: STO
            pendingChanges:
              durationDays: 7
            pipelineId: pipeline_1
            projectId: STO
            reason: Upstream bug
            requesterId: user111111111111111111
            scope: PROJECT
            status: Approved
            targetId: target2222222222222222
            totalOccurrences: 10
            type: Other
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - exemptions
        - pagination
        - counts
    StageStepID:
      type: object
      properties:
        stageId:
          type: string
          example: stage_id
        stepId:
          type: string
          example: step_id
      example:
        stageId: stage_id
        stepId: step_id
      required:
        - stageId
        - stepId
    StoStatus:
      type: object
      properties:
        status:
          type: string
          description: Status
          example: ok
      example:
        status: ok
      required:
        - status
    StepInfo:
      type: object
      properties:
        baselineVariant:
          type: string
          description: >-
            A short description of the baseline target variant for the pipeline
            step's scan diff
          example: 'branch: main'
        scanId:
          type: string
          description: Scan id
          example: scan111111111111111111
        scanTool:
          type: string
          description: Product name of the scan tool used in this step
          example: owasp
        scanToolName:
          type: string
          description: Human readable name of the scan tool used in this step
          example: OWASP
        stageId:
          type: string
          example: stage_id
        stepId:
          type: string
          example: step_id
        subproduct:
          type: string
          description: The subproduct that identified this Security Issue
          example: product
        targetId:
          type: string
          description: The ID of the target of the pipeline step's scan
          example: target1111111111111111
        targetName:
          type: string
          description: The name of the target of the pipeline step's scan
          example: The Target
        targetType:
          type: string
          description: The type of the target of the pipeline step's scan
          example: repository
          enum:
            - repository
            - container
            - instance
            - configuration
        targetVariant:
          type: string
          description: >-
            A short description of the target variant of the pipeline step's
            scan
          example: 'branch: feature'
      description: Information about a Scan Step
      example:
        baselineVariant: 'branch: main'
        scanId: scan111111111111111111
        scanTool: owasp
        scanToolName: OWASP
        stageId: stage_id
        stepId: step_id
        subproduct: product
        targetId: target1111111111111111
        targetName: The Target
        targetType: repository
        targetVariant: 'branch: feature'
      required:
        - scanId
        - scanTool
        - scanToolName
        - targetId
        - targetName
        - targetType
        - targetVariant
        - stageId
        - stepId
    StoTarget:
      type: object
      properties:
        baselineRegEx:
          type: string
          description: >-
            RegEx to match for dynamically selecting the Baseline for this Scan
            Target. Must be compatible with the RE2 standard.
          example: release_.*
          maxLength: 128
        baselineVariantId:
          type: string
          description: ID of baseline Target Variant for Issue comparison
          example: abcdef1234567890ghijkl
          pattern: ^([a-zA-Z0-9_-]{22}|)$
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        directory:
          type: string
          description: Directory within the Test Target to be scanned
          example: app/src
          maxLength: 1024
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        name:
          type: string
          description: Name of the Test Target
          example: NodeGoat
          pattern: ^[a-zA-Z0-9_.:/|()-]+$
          maxLength: 128
        orgId:
          type: string
          description: Harness Organization ID
          example: example_org
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        projectId:
          type: string
          description: Harness Project ID
          example: example_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        type:
          type: string
          description: Test Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        url:
          type: string
          description: URL used to access the Test Target
          example: https://github.com/example/repo
          maxLength: 1024
      example:
        baselineRegEx: release_.*
        baselineVariantId: abcdef1234567890ghijkl
        created: 1651578240
        directory: app/src
        id: abcdef1234567890ghijkl
        lastModified: 1651578240
        name: NodeGoat
        orgId: example_org
        projectId: example_project
        type: repository
        url: https://github.com/example/repo
      required:
        - id
        - created
        - lastModified
        - name
        - type
        - orgId
        - projectId
    TargetAndVariantName:
      type: object
      properties:
        targetName:
          type: string
          description: Target name
          example: Alias sed id recusandae iste dolor reiciendis.
        targetType:
          type: string
          description: Type of target
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        targetVariantName:
          type: string
          description: Variant name
          example: Labore quae.
      example:
        targetName: Non aut numquam.
        targetType: repository
        targetVariantName: In et.
    TargetAndVariantNameRequired:
      type: object
      properties:
        targetName:
          type: string
          description: Target name
          example: Perspiciatis et sit molestiae quia dolore cumque.
        targetType:
          type: string
          description: Type of target
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        targetVariantName:
          type: string
          description: Variant name
          example: Officia libero dolor enim.
      example:
        targetName: Et ut.
        targetType: repository
        targetVariantName: Fuga at tempora vero id autem id.
      required:
        - targetName
        - targetVariantName
    TargetVariant:
      type: object
      properties:
        created:
          type: integer
          description: Unix timestamp at which the resource was created
          example: 1651578240
          format: int64
        hash:
          type: string
          description: Git Commit or Container Image hash
          example: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
          maxLength: 64
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        lastModified:
          type: integer
          description: Unix timestamp at which the resource was most recently modified
          example: 1651578240
          format: int64
        parameters:
          type: object
          description: Parameters for this Variant, as a JSON-encoded string
          example:
            branch: main
          additionalProperties:
            type: string
            example: Vel suscipit iusto rerum necessitatibus quis adipisci.
        targetId:
          type: string
          description: Associated Target ID
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
      description: Information about a Scan Target Variant
      example:
        created: 1651578240
        hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
        id: abcdef1234567890ghijkl
        lastModified: 1651578240
        parameters:
          branch: main
        targetId: abcdef1234567890ghijkl
      required:
        - targetId
        - parameters
        - id
        - created
        - lastModified
    TargetVariantStatusInfo:
      type: object
      properties:
        id:
          type: string
          description: Resource identifier
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        status:
          type: string
          description: Associated Target Variant Status
          example: unapproved
          pattern: ^(approved|unapproved)$
      example:
        id: abcdef1234567890ghijkl
        status: unapproved
      required:
        - id
        - status
    TargetVariantsListTargetVariantsResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/TargetVariant'
          example:
            - created: 1651578240
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              parameters:
                branch: main
              targetId: abcdef1234567890ghijkl
            - created: 1651578240
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              parameters:
                branch: main
              targetId: abcdef1234567890ghijkl
            - created: 1651578240
              hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              parameters:
                branch: main
              targetId: abcdef1234567890ghijkl
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - created: 1651578240
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            parameters:
              branch: main
            targetId: abcdef1234567890ghijkl
          - created: 1651578240
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            parameters:
              branch: main
            targetId: abcdef1234567890ghijkl
          - created: 1651578240
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            parameters:
              branch: main
            targetId: abcdef1234567890ghijkl
          - created: 1651578240
            hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            parameters:
              branch: main
            targetId: abcdef1234567890ghijkl
      required:
        - results
        - pagination
    TargetsListTargetsResponseBody:
      type: object
      properties:
        pagination:
          $ref: '#/components/schemas/StoPagination'
        results:
          type: array
          items:
            $ref: '#/components/schemas/StoTarget'
          example:
            - baselineRegEx: release_.*
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              directory: app/src
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              name: NodeGoat
              orgId: example_org
              projectId: example_project
              type: repository
              url: https://github.com/example/repo
            - baselineRegEx: release_.*
              baselineVariantId: abcdef1234567890ghijkl
              created: 1651578240
              directory: app/src
              id: abcdef1234567890ghijkl
              lastModified: 1651578240
              name: NodeGoat
              orgId: example_org
              projectId: example_project
              type: repository
              url: https://github.com/example/repo
      example:
        pagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
        results:
          - baselineRegEx: release_.*
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            directory: app/src
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            name: NodeGoat
            orgId: example_org
            projectId: example_project
            type: repository
            url: https://github.com/example/repo
          - baselineRegEx: release_.*
            baselineVariantId: abcdef1234567890ghijkl
            created: 1651578240
            directory: app/src
            id: abcdef1234567890ghijkl
            lastModified: 1651578240
            name: NodeGoat
            orgId: example_org
            projectId: example_project
            type: repository
            url: https://github.com/example/repo
      required:
        - results
        - pagination
    TestTarget:
      type: object
      properties:
        approvedVariantsCount:
          type: integer
          description: Number of approved variants for a test target
          example: 1
          format: int64
        baseline:
          $ref: '#/components/schemas/TestTargetVariant'
        baselineRegEx:
          type: string
          description: >-
            RegEx to match for dynamically selecting the Baseline for this Scan
            Target. Must be compatible with the RE2 standard.
          example: release_.*
          maxLength: 128
        directory:
          type: string
          description: Directory of target
          example: /
        id:
          type: string
          description: ID of target
          example: target1111111111111111
        lastScanned:
          type: integer
          description: Timestamp at which the Baseline was last scanned
          example: 1634836529
          format: int64
        name:
          type: string
          description: Name of Target
          example: target 1
        status:
          type: string
          description: Status of target as base image
          example: approved
          enum:
            - approved
            - unapproved
        totalVariantsCount:
          type: integer
          description: Number of total variants for a test target
          example: 10
          format: int64
        type:
          type: string
          description: Type of target
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        url:
          type: string
          description: Url of target
          example: github.com/harness/sto-core
        variants:
          type: array
          items:
            $ref: '#/components/schemas/TestTargetVariant'
          example:
            - id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            - id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            - id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
      description: Individual TestTarget
      example:
        approvedVariantsCount: 1
        baseline:
          id: variant111111111111111
          name: 'Branch: feature-1'
          status: approved
        baselineRegEx: release_.*
        directory: /
        id: target1111111111111111
        lastScanned: 1634836529
        name: target 1
        status: approved
        totalVariantsCount: 10
        type: repository
        url: github.com/harness/sto-core
        variants:
          - id: variant111111111111111
            name: 'Branch: feature-1'
            status: approved
          - id: variant111111111111111
            name: 'Branch: feature-1'
            status: approved
          - id: variant111111111111111
            name: 'Branch: feature-1'
            status: approved
          - id: variant111111111111111
            name: 'Branch: feature-1'
            status: approved
      required:
        - id
        - name
        - type
        - variants
        - lastScanned
        - approvedVariantsCount
        - totalVariantsCount
    TestTargetResult:
      type: object
      properties:
        targets:
          type: array
          items:
            $ref: '#/components/schemas/TestTarget'
          description: Test Targets data
          example:
            - approvedVariantsCount: 1
              baseline:
                id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              baselineRegEx: release_.*
              directory: /
              id: target1111111111111111
              lastScanned: 1634836529
              name: target 1
              status: approved
              totalVariantsCount: 10
              type: repository
              url: github.com/harness/sto-core
              variants:
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
            - approvedVariantsCount: 1
              baseline:
                id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              baselineRegEx: release_.*
              directory: /
              id: target1111111111111111
              lastScanned: 1634836529
              name: target 1
              status: approved
              totalVariantsCount: 10
              type: repository
              url: github.com/harness/sto-core
              variants:
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
                - id: variant111111111111111
                  name: 'Branch: feature-1'
                  status: approved
        targetsPagination:
          $ref: '#/components/schemas/StoPagination'
      description: Data needed by the Test Targets page
      example:
        targets:
          - approvedVariantsCount: 1
            baseline:
              id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            baselineRegEx: release_.*
            directory: /
            id: target1111111111111111
            lastScanned: 1634836529
            name: target 1
            status: approved
            totalVariantsCount: 10
            type: repository
            url: github.com/harness/sto-core
            variants:
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
          - approvedVariantsCount: 1
            baseline:
              id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            baselineRegEx: release_.*
            directory: /
            id: target1111111111111111
            lastScanned: 1634836529
            name: target 1
            status: approved
            totalVariantsCount: 10
            type: repository
            url: github.com/harness/sto-core
            variants:
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
          - approvedVariantsCount: 1
            baseline:
              id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            baselineRegEx: release_.*
            directory: /
            id: target1111111111111111
            lastScanned: 1634836529
            name: target 1
            status: approved
            totalVariantsCount: 10
            type: repository
            url: github.com/harness/sto-core
            variants:
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
          - approvedVariantsCount: 1
            baseline:
              id: variant111111111111111
              name: 'Branch: feature-1'
              status: approved
            baselineRegEx: release_.*
            directory: /
            id: target1111111111111111
            lastScanned: 1634836529
            name: target 1
            status: approved
            totalVariantsCount: 10
            type: repository
            url: github.com/harness/sto-core
            variants:
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
              - id: variant111111111111111
                name: 'Branch: feature-1'
                status: approved
        targetsPagination:
          link: ''
          page: 4
          pageSize: 20
          totalItems: 230
          totalPages: 12
      required:
        - targets
        - targetsPagination
    TestTargetVariant:
      type: object
      properties:
        id:
          type: string
          description: Target Variant ID
          example: variant111111111111111
        name:
          type: string
          description: Name of Target Variant
          example: 'Branch: feature-1'
        status:
          type: string
          description: Status of target variant
          example: approved
          enum:
            - approved
            - unapproved
      description: Individual Test Target Variant
      example:
        id: variant111111111111111
        name: 'Branch: feature-1'
        status: approved
      required:
        - id
        - name
    TokenResponse:
      type: object
      properties:
        token:
          type: string
          description: Issued cross-service JWT
          example: >-
            eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
      example:
        token: >-
          eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
      required:
        - token
    UpdateExemptionRequestBody:
      type: object
      properties:
        expiration:
          type: integer
          description: Unix timestamp at which this Exemption will expire
          example: 1651578240
          format: int64
        link:
          type: string
          description: Link to a related ticket
          example: https://example.com/ABC-1234
          maxLength: 1024
        pendingChanges:
          $ref: '#/components/schemas/PendingChanges'
        pipelineId:
          type: string
          description: >-
            ID of the Harness Pipeline to which the exemption applies. You must
            also specify "projectId" and "orgId". Cannot be specified alongside
            "targetId".
          example: your_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        reason:
          type: string
          description: Text describing why this Exemption is necessary
          example: Waiting on upstream bug fix
          maxLength: 1024
        requesterId:
          type: string
          description: User ID of user who requested this exemptions
          example: user111111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        targetId:
          type: string
          description: >-
            ID of the Target to which the exemption applies. Cannot be specified
            alongside "projectId" or "pipelineId".
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        type:
          type: string
          description: >-
            Type of Exemption (Compensating Controls / Acceptable Use /
            Acceptable Risk / False Positive / Fix Unavailable / Other)
          example: Other
          enum:
            - Compensating Controls
            - Acceptable Use
            - Acceptable Risk
            - False Positive
            - Fix Unavailable
            - Other
      example:
        expiration: 1651578240
        link: https://example.com/ABC-1234
        pendingChanges:
          durationDays: 7
        pipelineId: your_pipeline
        reason: Waiting on upstream bug fix
        requesterId: user111111111111111111
        targetId: abcdef1234567890ghijkl
        type: Other
      required:
        - type
        - reason
        - requesterId
        - pendingChanges
        - issueId
        - status
        - created
        - lastModified
    UpdateIssueRequestBody:
      type: object
      properties:
        numOccurrences:
          type: integer
          description: Indicates the number of Occurrences on the Issue
          example: 10
          format: int32
        occurrences:
          type: array
          items:
            type: object
            example:
              Sed architecto autem doloribus accusamus doloremque.: Voluptas ut debitis consequuntur a repellat.
            additionalProperties: true
          description: Array of details unique to each occurrence
          example:
            - line: '42'
            - line: '666'
        scanId:
          type: string
          description: The Security Scan execution that detected this Security Issue
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        type:
          type: string
          description: The type of vulnerability or quality issue for this Issue
          example: SAST
          enum:
            - SAST
            - DAST
            - SCA
            - IAC
            - SECRET
            - MISCONFIG
            - BUG_SMELLS
            - CODE_SMELLS
            - CODE_COVERAGE
            - EXTERNAL_POLICY
      example:
        numOccurrences: 10
        occurrences:
          - line: '42'
          - line: '666'
        scanId: abcdef1234567890ghijkl
        type: SAST
      required:
        - occurrences
        - scanId
    UpdatePullRequestRequestBody:
      type: object
      properties:
        id:
          type: string
          description: The ID of the Security Issue to create a Pull Request for
          example: 1234567890abcdefghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        occurrenceId:
          type: integer
          example: 12345
          format: int64
          minimum: 1
        pipelineUrl:
          type: string
          example: https://app.harness.io/path/to/pipeline
        pullRequestNumber:
          type: integer
          example: 11
          format: int64
          minimum: 1
        remediationCode:
          type: string
          example: |-
            func example() int {
              return 0
            }
        remediationCodeEnd:
          type: integer
          example: 16
          format: int64
        remediationCodePath:
          type: string
          example: path/to/code
        remediationCodeStart:
          type: integer
          example: 14
          format: int64
        remediationContext:
          type: string
          example: Context to the function.
        remediationIndent:
          type: integer
          example: 9
          format: int64
        vulnerableCode:
          type: string
          example: |-
            func example() int {
              return 0
            }
      example:
        id: 1234567890abcdefghijkl
        occurrenceId: 12345
        pipelineUrl: https://app.harness.io/path/to/pipeline
        pullRequestNumber: 11
        remediationCode: |-
          func example() int {
            return 0
          }
        remediationCodeEnd: 16
        remediationCodePath: path/to/code
        remediationCodeStart: 14
        remediationContext: Context to the function.
        remediationIndent: 9
        vulnerableCode: |-
          func example() int {
            return 0
          }
      required:
        - pipelineUrl
        - id
        - occurrenceId
        - vulnerableCode
        - remediationCode
        - remediationCodePath
        - remediationCodeStart
        - remediationCodeEnd
        - remediationContext
        - pullRequestNumber
    UpdateScanRequestBody:
      type: object
      properties:
        artifactFingerprint:
          type: string
          description: The Artifact Fingerprint used use to identify the target
          example: abcdef1234567890ghijkl
          pattern: ^[A-Za-z0-9_]*$
          maxLength: 64
        codeCoverage:
          type: number
          description: The Code Coverage value for the Scan
          example: 65.5
          format: float
        executionId:
          type: string
          description: Pipeline Execution ID associated with the Scan
          example: abcdef1234567890ghijkl
          pattern: ^[a-zA-Z0-9_-]{22}$
        gitMetadata:
          $ref: '#/components/schemas/GitMetadata'
        metadata:
          $ref: '#/components/schemas/ScanMetadata'
        orgId:
          type: string
          description: Harness Organization ID
          example: your_harness_org
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        pipelineId:
          type: string
          description: Harness Organization ID
          example: your_harness_pipeline
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        productId:
          type: string
          description: The Scan Product used for the Scan
          example: product111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
        projectId:
          type: string
          description: Harness Project ID
          example: your_harness_project
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        refinementVersion:
          type: string
          description: The Issue refinement version used for this Scan
          example: 1.0.5
        stageId:
          type: string
          description: Pipeline Stage ID associated with the Scan
          example: stage_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        status:
          type: string
          description: Current status of the Scan
          example: Succeeded
          enum:
            - Pending
            - Running
            - Succeeded
            - Failed
        stepId:
          type: string
          description: Pipeline Step ID associated with the Scan
          example: step_id
          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
          maxLength: 128
        subproduct:
          type: string
          description: The Scan Subproduct used for the Scan
          example: owasp
          format: binary
        targetVariantId:
          type: string
          description: The Target Variant associated with the Scan
          example: variant111111111111111
          pattern: ^[a-zA-Z0-9_-]{22}$
      example:
        artifactFingerprint: abcdef1234567890ghijkl
        codeCoverage: 65.5
        executionId: abcdef1234567890ghijkl
        gitMetadata:
          detectedName: Sunt doloremque corporis facere aut quasi fugit.
          detectedVariant: Aut repellat.
          droneCorrelated: true
          provider: Quia sed dolorem suscipit dolor.
          pullRequestNumber: 11
          repositoryHttp: https://github.com/harness/drone-cli.git
          repositoryPath:
            - Sit consequatur facilis.
            - Ex sapiente.
          repositorySsh: git@github.com:harness/drone-cli.git
          sourceBranch: feat/shiny-object
          targetBranch: develop
          workspace: /harness
        metadata:
          baseImageDigest: sha256:abcdef1234567890ghijkl
          baseImageName: my-image
          baseImageTag: 1.0.0
        orgId: your_harness_org
        pipelineId: your_harness_pipeline
        productId: product111111111111111
        projectId: your_harness_project
        refinementVersion: 1.0.5
        stageId: stage_id
        status: Succeeded
        stepId: step_id
        subproduct: owasp
        targetVariantId: variant111111111111111
      required:
        - targetVariantId
        - orgId
        - projectId
        - pipelineId
        - executionId
        - stageId
        - stepId
        - productId
        - status
        - refinementVersion
        - created
        - lastModified
    UpdateTargetRequestBody:
      type: object
      properties:
        baselineRegEx:
          type: string
          description: >-
            RegEx to match for dynamically selecting the Baseline for this Scan
            Target. Must be compatible with the RE2 standard.
          example: release_.*
          maxLength: 128
        baselineVariantId:
          type: string
          description: ID of baseline Target Variant for Issue comparison
          example: abcdef1234567890ghijkl
          pattern: ^([a-zA-Z0-9_-]{22}|)$
        directory:
          type: string
          description: Directory within the Test Target to be scanned
          example: app/src
          maxLength: 1024
        name:
          type: string
          description: Name of the Test Target
          example: NodeGoat
          pattern: ^[a-zA-Z0-9_.:/|()-]+$
          maxLength: 128
        type:
          type: string
          description: Test Target's type
          example: repository
          enum:
            - container
            - repository
            - instance
            - configuration
        url:
          type: string
          description: URL used to access the Test Target
          example: https://github.com/example/repo
          maxLength: 1024
      example:
        baselineRegEx: release_.*
        baselineVariantId: abcdef1234567890ghijkl
        directory: app/src
        name: NodeGoat
        type: repository
        url: https://github.com/example/repo
      required:
        - created
        - lastModified
        - name
        - type
    UpdateTargetVariantRequestBody:
      type: object
      properties:
        hash:
          type: string
          description: Git Commit or Container Image hash
          example: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
          maxLength: 64
        parameters:
          type: object
          description: Parameters for this Variant, as a JSON-encoded string
          example:
            branch: main
          additionalProperties:
            type: string
            example: Voluptatem officia hic.
      example:
        hash: d1998db4b4651a4b9be9ecf320a2dfb8b4710e35
        parameters:
          branch: main
      required:
        - parameters
        - created
        - lastModified
    UpdateTestTargetVariantsRequestBody:
      type: object
      properties:
        targetVariants:
          type: array
          items:
            $ref: '#/components/schemas/TargetVariantStatusInfo'
          description: List of target variants with their status
          example:
            - id: abcdef1234567890ghijkl
              status: approved
            - id: xyz987zyx654wvu321tsr9
              status: unapproved
          minItems: 1
          maxItems: 100
      example:
        targetVariants:
          - id: abcdef1234567890ghijkl
            status: approved
          - id: xyz987zyx654wvu321tsr9
            status: unapproved
    Usage:
      type: object
      properties:
        count:
          type: integer
          description: Unit count
          example: 0
          format: int64
        displayName:
          type: string
          description: Display name
          example: Last 30 Days
        references:
          type: array
          items:
            type: string
            example: Vel sit.
          description: References
          example:
            - Saepe sint dicta rerum quod aut autem.
            - Corporis expedita rerum.
            - Aut doloremque non at ducimus.
      description: Usage
      example:
        count: 0
        displayName: Last 30 Days
        references:
          - Qui voluptas maxime blanditiis.
          - Accusamus voluptate aperiam itaque velit modi.
      required:
        - count
        - displayName
        - references
    UsageAllAccountsResult:
      type: object
      properties:
        timestamp:
          type: integer
          description: Timestamp
          example: 1670427991307
          format: int64
        usage:
          type: array
          items:
            $ref: '#/components/schemas/AccountUsage'
          description: Usage of all accounts
          example:
            - accountId: BdsgiWzwT7CQFeJl9XkQ3A
              developerCount: 25
              scanCount: 5000
            - accountId: BdsgiWzwT7CQFeJl9XkQ3A
              developerCount: 25
              scanCount: 5000
            - accountId: BdsgiWzwT7CQFeJl9XkQ3A
              developerCount: 25
              scanCount: 5000
      description: All Accounts Usage Result
      example:
        timestamp: 1670427991307
        usage:
          - accountId: BdsgiWzwT7CQFeJl9XkQ3A
            developerCount: 25
            scanCount: 5000
          - accountId: BdsgiWzwT7CQFeJl9XkQ3A
            developerCount: 25
            scanCount: 5000
          - accountId: BdsgiWzwT7CQFeJl9XkQ3A
            developerCount: 25
            scanCount: 5000
          - accountId: BdsgiWzwT7CQFeJl9XkQ3A
            developerCount: 25
            scanCount: 5000
      required:
        - timestamp
        - usage
    UsageReportUsageResponseBody:
      $ref: '#/components/schemas/UsageResult'
    UsageResult:
      type: object
      properties:
        accountIdentifier:
          type: string
          description: Account identifier
          example: BdsgiWzwT7CQFeJl9XkQ3A
        activeDevelopers:
          $ref: '#/components/schemas/Usage'
        activeScans:
          $ref: '#/components/schemas/Usage'
        module:
          type: string
          description: Harness module
          example: STO
        timestamp:
          type: integer
          description: Timestamp
          example: 1670427991307
          format: int64
      description: Usage Result
      example:
        accountIdentifier: BdsgiWzwT7CQFeJl9XkQ3A
        activeDevelopers:
          count: 0
          displayName: Last 30 Days
          references:
            - Numquam ad asperiores rerum illo.
            - Voluptas et odio aut veritatis.
            - Id quis sint magni similique.
            - Labore qui quia est sed repellendus ut.
        activeScans:
          count: 0
          displayName: Last 30 Days
          references:
            - Numquam ad asperiores rerum illo.
            - Voluptas et odio aut veritatis.
            - Id quis sint magni similique.
            - Labore qui quia est sed repellendus ut.
        module: STO
        timestamp: 1670427991307
      required:
        - accountIdentifier
        - module
        - timestamp
        - activeDevelopers
        - activeScans
    UsageUsageAllAccountsResponseBody:
      $ref: '#/components/schemas/UsageAllAccountsResult'
    ChangeLogScript:
      additionalProperties: false
      description: >-
        if schemaType is Script location of the changelog file after using a
        custom script to download
      properties:
        command:
          description: command script used to download the changelog file
          example: curl -X -o changeLog.yaml https://www.filestore.com/changeLog.yaml
          minLength: 1
          type: string
          x-stoplight:
            id: rdani02niu442
        image:
          description: The fully-qualified name (FQN) of the image
          example: plugins/image:latest
          minLength: 1
          type: string
          x-stoplight:
            id: ojq7cfe1up903
        location:
          description: location of the changelog file
          example: folder/changelog.yaml
          type: string
          x-stoplight:
            id: 8qehjmy01r5iw
        shell:
          description: shell type
          example: Sh, Bash, <+pipeline.variables.shell>
          type: string
      required:
        - image
        - command
        - shell
        - location
      title: changeLog script
      type: object
      x-stoplight:
        id: j6ug0asalsuve
    ChangeSetDeploymentStatus:
      description: Status of change set deployment
      enum:
        - Rolled_Back
        - Successfully_Deployed
        - Not_Deployed
        - Deployment_Failed
      title: ChangeSetDeploymentStatus
      type: string
      x-stoplight:
        id: f4whxki5b4cp1
    ChangeSetDeploymentYamlOutput:
      description: ChangeSet deployment yaml info for an instance
      properties:
        yaml:
          type: string
          x-stoplight:
            id: 7py9a7unyct0j
      required:
        - yaml
      title: ChangeSetDeploymentYamlOutput
      type: object
      x-stoplight:
        id: jt9d8omo9k85a
    ChangeSetMetadataOutput:
      description: changeset metadata output object
      properties:
        data:
          items:
            type: string
            x-stoplight:
              id: 0xtfuw0decn73
          type: array
          x-stoplight:
            id: c2h6oo819rvme
      required:
        - data
      title: ChangeSetMetadataOut
      type: object
      x-stoplight:
        id: i2l6jx3t5wwbu
    Changelog:
      additionalProperties: false
      description: >
        if schemaType is Repository location of the changelog file containing
        schema changes in a git repository
      properties:
        archivePath:
          description: path excluding the repo till the archive file
          minLength: 1
          type: string
          x-stoplight:
            id: 53mqhpfa5038m
        connector:
          description: identifier of the harness git connector
          example: harness_git
          minLength: 1
          type: string
        location:
          description: path to the change log file
          example: folder/changelog.yaml
          minLength: 1
          type: string
        repo:
          description: repo name of the git based connector when ConnectionType is Account
          example: folder/changelog.yaml
          minLength: 1
          type: string
          x-stoplight:
            id: pw3ul0rkm8xt6
      required:
        - connector
        - location
      type: object
      x-stoplight:
        id: rytv7gaa34yns
    Command:
      description: Type of the plugin command to run
      enum:
        - Update
        - Validate
        - History
        - Tag
        - Rollback
        - RollbackCount
        - RollbackCountSQL
        - UpdateSQL
        - Clone
        - Custom
        - ParentWrapper
        - RollbackSQL
        - Status
        - MarkNextChangesetRan
        - DBOPSUpdateSQL
        - DBOPSRollbackSQL
        - DBOPSRollbackCountSQL
      minLength: 1
      title: Command
      type: string
      x-internal: true
      x-stoplight:
        id: uwecpn48zn9y9
    CommandExecutionStatus:
      enum:
        - IN_PROGRESS
        - SUCCESS
        - FAILURE
        - CANCELLED
      title: CommandExecutionStatus
      type: string
      x-stoplight:
        id: uo7v8vnfcdljb
    CustomOperationInput:
      description: Input for getting custom property result
      properties:
        command:
          $ref: '#/components/schemas/Command'
        dbInstance:
          type: string
          x-stoplight:
            id: kqeua3w1kdlfb
        dbSchema:
          type: string
          x-stoplight:
            id: lcimin2oa929r
        org:
          type: string
          x-stoplight:
            id: na9nsv9snx24b
        pipelineExecutionMetadata:
          $ref: '#/components/schemas/PipelineExecutionMetadata'
        project:
          type: string
          x-stoplight:
            id: m6o69du0xzei0
        properties:
          items:
            $ref: '#/components/schemas/CustomOperations'
          minItems: 1
          type: array
          x-stoplight:
            id: hfd78pm1cishd
      required:
        - dbSchema
        - dbInstance
        - command
        - pipelineExecutionMetadata
        - org
        - project
        - properties
      title: CustomPropertyInput
      type: object
      x-stoplight:
        id: goeuvpu54rfol
    CustomOperationOutput:
      description: Output for custom property result
      properties:
        deployedChangeSets:
          items:
            $ref: '#/components/schemas/DeployedChangeSets'
          type: array
          x-stoplight:
            id: 6qgl9qxptpk3t
        earlierRunInStage:
          type: boolean
          x-stoplight:
            id: ti08qiylsdd07
        preStartTag:
          type: string
          x-stoplight:
            id: c169v8xj064pk
        successfulChangeSetDeploymentInStage:
          type: boolean
          x-stoplight:
            id: bzamvvnvbijyo
      title: CustomPropertyOutput
      type: object
      x-stoplight:
        id: q374motg2h5ws
    CustomOperations:
      description: Enum for custom operations supported
      enum:
        - EarlierRunInStage
        - SuccessfulChangeSetDeploymentInStage
        - DeployedChangeSets
        - PreStartTag
      title: CustomOperations
      type: string
      x-stoplight:
        id: rxtpi7iwl5prt
    DBInstanceFilterIn:
      description: DB Instance Filter Request
      properties:
        filterType:
          default: Equals
          description: 'filter criteria type. Example: Equals, NotEquals'
          enum:
            - Equals
            - NotEquals
          type: string
          x-stoplight:
            id: wh3jb1x9a4mvl
        instanceTags:
          description: an array on db instance key value pairs used against the filter
          items:
            $ref: '#/components/schemas/DbOpsNGTag'
          type: array
          x-stoplight:
            id: y26ejs0un3e5p
      title: DBInstanceFilterIn
      type: object
      x-stoplight:
        id: pqeg3xqjy34f4
    DBInstanceIn:
      description: Database Instance Request
      properties:
        branch:
          description: |
            branch where the instance is stored
          example: main
          type: string
        connector:
          description: DB Connector
          example: postgres-connector
          minLength: 1
          type: string
        context:
          description: Liquibase context
          type: string
        identifier:
          description: identifier of the database instance
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          type: string
          x-oapi-codegen-extra-tags:
            validate: required,max=128
        liquibaseSubstituteProperties:
          additionalProperties:
            type: string
            x-stoplight:
              id: fbu62w3agfucb
          description: properties to substitute in liquibase changelog
          type: object
          x-stoplight:
            id: x5ohdcgm3tsu7
        name:
          description: name of the database instance
          type: string
          x-oapi-codegen-extra-tags:
            validate: required,max=128
        tags:
          additionalProperties:
            type: string
            x-oapi-codegen-extra-tags:
              validate: max=128
          description: tags attached to the database instance
          maxProperties: 128
          type: object
          x-go-type-skip-optional-pointer: true
      required:
        - identifier
        - connector
      title: Database Instance Request
      type: object
      x-stoplight:
        id: 1li73zi9bs5oi
    DBInstanceListInput:
      description: Input for filtering instances in list API
      properties:
        instanceFQNs:
          description: >-
            list of '-' separated values of schema identifier and instance
            identifiers
          items:
            type: string
            x-stoplight:
              id: 00pgdyu11awof
          type: array
          x-stoplight:
            id: uvfrk9mlk33vq
        schemaIdentifiers:
          description: list of schema identifiers to filter instances
          items:
            type: string
            x-stoplight:
              id: 31wkmpwoswrbq
          type: array
          x-stoplight:
            id: 8t3kd4dz91anx
      title: DBInstanceListInput
      type: object
      x-stoplight:
        id: fx5xiutdaefop
    DBInstanceOut:
      description: Database Instance Response
      properties:
        branch:
          description: branch where the instance is stored
          type: string
        connector:
          description: DB Connector
          type: string
        context:
          description: Liquibase context
          type: string
        created:
          description: epoch seconds when the database instance was created
          format: int64
          type: integer
        identifier:
          description: identifier of the database instance
          type: string
        lastAppliedTag:
          description: Most recent tag applied to the database
          type: string
        lastDeployedChangeSetTag:
          description: Tag on last deployed changeSet
          type: string
          x-stoplight:
            id: dlbvh5adtk2de
        liquibaseSubstituteProperties:
          additionalProperties:
            type: string
            x-stoplight:
              id: 7mt4ppwgzempm
          description: properties to substitute in liquibase changelog
          type: object
          x-stoplight:
            id: hr7hobzo91wqa
        name:
          description: name of the database instance
          type: string
        schemaId:
          type: string
          x-stoplight:
            id: 2n2zy2gxgmycn
        schemaIdentifier:
          type: string
          x-stoplight:
            id: delov0umr51kp
        tags:
          additionalProperties:
            type: string
          description: tags attached to the database instance
          type: object
          x-go-type-skip-optional-pointer: true
        toOnboard:
          type: boolean
          x-stoplight:
            id: y8hnyznezal4i
        updated:
          description: epoch seconds when the database instance was last updated
          format: int64
          type: integer
      required:
        - identifier
        - name
        - created
        - connector
        - lastDeployedChangeSetTag
      title: Database Instance Response
      type: object
      x-stoplight:
        id: qcmn5nllz3a1z
    DBSchemaFilterIn:
      description: List schema body input
      properties:
        identifiers:
          description: list of schema identifiers
          items:
            type: string
            x-stoplight:
              id: nfsp4sjueo3t2
          type: array
          x-stoplight:
            id: va094q90m251a
      title: DBSchemaFilterIn
      type: object
      x-stoplight:
        id: sj7v1o7j1aoz2
    DBSchemaIn:
      description: 'Database Schema Request '
      properties:
        changeLogScript:
          $ref: '#/components/schemas/ChangeLogScript'
        changelog:
          $ref: '#/components/schemas/Changelog'
        identifier:
          description: identifier of the database schema
          pattern: ^[a-zA-Z_][0-9a-zA-Z_$]{0,127}$
          type: string
          x-oapi-codegen-extra-tags:
            validate: required,max=128
        name:
          description: name of the database schema
          type: string
          x-oapi-codegen-extra-tags:
            validate: required,max=128
        service:
          description: |
            harness service corresponding to database schema
          example: harness_service
          minLength: 1
          type: string
        tags:
          additionalProperties:
            type: string
            x-oapi-codegen-extra-tags:
              validate: max=128
          description: tags attached to the database schema
          maxProperties: 128
          type: object
          x-go-type-skip-optional-pointer: true
        type:
          $ref: '#/components/schemas/DBSchemaType'
      required:
        - identifier
        - name
      title: Database Schema Request
      type: object
      x-examples:
        Example 1:
          changelog:
            connector: harness_git
            location: folder/changelog.yaml
          identifier: myservice_database
          name: my service database
          service: harness_service
          tags:
            region: us-east-1
      x-stoplight:
        id: 50h201oitfzde
    DBSchemaOut:
      description: Database Schema Response
      properties:
        changeLogScript:
          $ref: '#/components/schemas/ChangeLogScript'
        changelog:
          $ref: '#/components/schemas/Changelog'
        created:
          description: epoch seconds when the database schema was created
          format: int64
          type: integer
        identifier:
          description: identifier of the database schema
          type: string
        instanceCount:
          description: number of database instances corresponding to database schema
          format: int64
          type: integer
        name:
          description: name of the database schema
          type: string
        parentId:
          description: parentUniqueId for scope schema belongs to
          type: string
          x-stoplight:
            id: ly84xx0ojw0dw
        primaryDbInstanceId:
          description: >-
            Identifier for the primary dbInstance used for advanced feature like
            LLM Authoring etc.
          type: string
          x-stoplight:
            id: 2q5akpayctizx
        schemaSourceType:
          enum:
            - Git
            - Artifactory
            - Custom
          readOnly: true
          type: string
          x-stoplight:
            id: 802m1r25ghm6l
        service:
          description: harness service corresponding to database schema
          type: string
        tags:
          additionalProperties:
            type: string
          description: tags attached to the database schema
          type: object
          x-go-type-skip-optional-pointer: true
        type:
          $ref: '#/components/schemas/DBSchemaType'
        updated:
          description: epoch seconds when the database schema was last updated
          format: int64
          type: integer
      required:
        - identifier
        - name
        - created
        - instanceCount
        - type
        - parentId
      title: Database Schema Response
      type: object
      x-stoplight:
        id: 1y01syuq8w851
    DBSchemaType:
      description: db schema type
      enum:
        - Repository
        - Script
      title: DBSchemaType
      type: string
      x-stoplight:
        id: 8x2xf0r3syqjg
    DBStepType:
      enum:
        - DBSchemaApply
        - DBSchemaRollback
      title: DBStepType
      type: string
      x-stoplight:
        id: ookg93k67z8hz
    DeployedChangeSets:
      properties:
        changeSetFQN:
          type: string
          x-stoplight:
            id: f4kzaer1jlada
      required:
        - changeSetFQN
      title: DeployedChangeSets
      type: object
      x-stoplight:
        id: 2xl1xyvguonyv
    DeployedChangesetSqlOutput:
      description: Response Body for Fetching SQL statements
      properties:
        sql:
          items:
            type: string
            x-stoplight:
              id: 8r7yk67k7rcj4
          type: array
          x-stoplight:
            id: frzyxa67l6mgs
      title: DeployedChangesetSqlOutput
      type: object
      x-stoplight:
        id: nazria0es5v7a
    DeployedStateInput:
      description: Input for getting execution deployed states
      properties:
        pipeline:
          description: identifier of the pipeline
          type: string
          x-stoplight:
            id: 8qs6o89je9q7t
        planExecutionId:
          type: string
          x-stoplight:
            id: sg8bjjivonl2n
        stageExecutionId:
          type: string
          x-stoplight:
            id: uyjy3losyw3wv
        startTime:
          default: 0
          description: start time of step execution
          format: int64
          type: integer
          x-stoplight:
            id: ycpp05a282ivu
        stepType:
          $ref: '#/components/schemas/DBStepType'
      required:
        - planExecutionId
        - stageExecutionId
        - stepType
        - pipeline
      title: DeployedStateInput
      type: object
      x-stoplight:
        id: vfiwroxnuheqj
    DeployedStateOutput:
      description: The status of changeset deployment
      properties:
        author:
          type: string
          x-stoplight:
            id: 929dnscx95ypb
        changeSetFQN:
          description: >-
            changesetFQN is a unique identifier for database changesets in the
            format filename::changesetId::author
          type: string
          x-stoplight:
            id: 83slrsi8j4ahm
        changeSetId:
          type: string
          x-stoplight:
            id: x47961ux78m1z
        command:
          $ref: '#/components/schemas/Command'
        comment:
          description: comment in changeset definition
          type: string
          x-stoplight:
            id: 47voyp56s2n3k
        deployedAt:
          format: int64
          type: integer
          x-stoplight:
            id: 5e34nn5l71tit
        deployedInCurrentExecution:
          description: if changeset run as part of current step execution
          type: boolean
          x-stoplight:
            id: hvppxpin4swwy
        fileName:
          type: string
          x-stoplight:
            id: t5k0ya5j14ek5
        label:
          description: label in changeset definition
          type: string
          x-stoplight:
            id: 2w8f4a2s0cbfp
        metadata:
          $ref: '#/components/schemas/DbOpsExecutionMetadata'
        status:
          $ref: '#/components/schemas/CommandExecutionStatus'
        tag:
          type: string
          x-stoplight:
            id: eg643qgsnus6y
      required:
        - status
        - changeSetId
        - author
        - fileName
        - command
        - metadata
        - deployedInCurrentExecution
        - changeSetFQN
      title: DeployedStateOutput
      type: object
      x-stoplight:
        id: qa93jh433xexc
    DbOpsError:
      description: Error Response
      properties:
        message:
          description: error message detail
          type: string
      required:
        - message
      title: Error Response
      type: object
      x-stoplight:
        id: 61cwtgnps2mpt
    ExecutionConfigOperation:
      additionalProperties: false
      description: Operations to set the images tag to particular version
      properties:
        field:
          description: Image tag field names which can be retrieved from get-default-config
          example: gitCloneTag, defaultTag, mongoTag, etc
          type: string
          x-stoplight:
            id: c4ao9gsw8bec7
        value:
          description: Value of the image tag
          example: harness/drone-git:1.5.6-rootless
          type: string
          x-stoplight:
            id: qvg6n55o8e6t7
      required:
        - field
        - value
      title: ExecutionConfigOperation
      type: object
      x-examples:
        Example 1:
          field: gitCloneTag
          value: harness/drone-git:1.5.6-rootless
      x-stoplight:
        id: az6vxqusd38xv
    ExecutionConfigTags:
      properties:
        artifactoryTag:
          type: string
          x-stoplight:
            id: hy9876z3lbcoy
        defaultTag:
          type: string
          x-stoplight:
            id: 5ij9lx02mahxf
        gitCloneTag:
          type: string
          x-stoplight:
            id: j86rn4rdhn52k
        mongoTag:
          type: string
          x-stoplight:
            id: crzzbjc0o7s1j
        spannerTag:
          type: string
          x-stoplight:
            id: mgm4y32fkx1xt
      title: ExecutionConfigTags
      type: object
      x-examples:
        Example 1:
          artifactoryTag: string
          defaultTag: string
          gitCloneTag: string
          mongoTag: string
          spannerTag: string
      x-stoplight:
        id: qezvgyoecifmt
    DbOpsExecutionMetadata:
      description: Properties related to pipeline execution
      properties:
        pipeline:
          type: string
          x-stoplight:
            id: 5k3ff780hrran
        planExecutionId:
          type: string
          x-stoplight:
            id: q74ihd08grz1n
        stageExecutionId:
          type: string
          x-stoplight:
            id: m9yhkxclgnwn2
      required:
        - pipeline
        - planExecutionId
        - stageExecutionId
      title: ExecutionMetadata
      type: object
      x-stoplight:
        id: tkbzev2tuyv9j
    InstanceDetail:
      description: Name and identifier of instance
      properties:
        identifier:
          type: string
          x-stoplight:
            id: 31d4qf39t64hx
        name:
          type: string
          x-stoplight:
            id: zvigh51qdhg7m
      required:
        - identifier
        - name
      title: InstanceDetail
      type: object
      x-stoplight:
        id: b0ge7609tlr6s
    InstanceMigrationStateChangeSet:
      description: Deployment info of Change Sets across instances
      properties:
        author:
          type: string
        changeSet:
          description: Identifier of the Change Set
          type: string
        changeSetFQN:
          type: string
          x-stoplight:
            id: 4z9kxognzb0di
        comment:
          description: comment defined in changeSet
          type: string
          x-stoplight:
            id: 74w4qvz4i3p78
        deployedAt:
          format: int64
          type: integer
          x-stoplight:
            id: 2agm7gbw2pq9k
        fileName:
          type: string
        label:
          description: label defined in changeSet
          type: string
          x-stoplight:
            id: 15ozawdz45jq4
        pipeline:
          type: string
          x-stoplight:
            id: ow7y4tlbwll6s
        planExecutionId:
          type: string
          x-stoplight:
            id: 0r1nyz293ph4h
        stageExecutionId:
          type: string
          x-stoplight:
            id: 9nqtr1j9uiers
        status:
          $ref: '#/components/schemas/ChangeSetDeploymentStatus'
        tag:
          type: string
          x-stoplight:
            id: olwe8u50gytkp
      required:
        - changeSet
        - deployedAt
        - author
        - fileName
        - status
        - pipeline
        - planExecutionId
        - stageExecutionId
        - changeSetFQN
      title: InstanceMigrationStateChangeSet
      type: object
      x-stoplight:
        id: vfjspbwnr93bq
    InstanceMigrationStateOut:
      description: Change Set deployment info for a instance
      properties:
        changeSets:
          items:
            $ref: '#/components/schemas/InstanceMigrationStateChangeSet'
          type: array
        instanceName:
          description: Name of the Instance
          type: string
          x-stoplight:
            id: 9ysq7wf9p1keo
        schemaName:
          description: Name of the Schema
          type: string
          x-stoplight:
            id: wjdx4nkmfse8q
      required:
        - schemaName
        - instanceName
      title: InstanceMigrationStateOut
      type: object
      x-stoplight:
        id: o8h98fwt2xvn0
    MigrationStateChangeSet:
      description: Deployment info of Change Sets across instances
      properties:
        author:
          type: string
          x-stoplight:
            id: mob4f4s0lovhs
        changeSet:
          description: Identifier of the Change Set
          type: string
          x-stoplight:
            id: 44ec50vd5krrf
        changeSetFQN:
          description: >-
            changesetFQN is a unique identifier for database changesets in the
            format filename::changesetId::author
          type: string
          x-stoplight:
            id: imclno1hwt5tu
        fileName:
          type: string
          x-stoplight:
            id: 31qx3sb0zigel
        instances:
          items:
            $ref: '#/components/schemas/MigrationStateInstance'
          type: array
          x-stoplight:
            id: k3xi8j4pkqn48
        synced:
          default: false
          description: If Change Set is successfully deployed to all instances
          type: boolean
          x-stoplight:
            id: fwvilhcjrnzuk
        updated:
          format: int64
          type: integer
          x-stoplight:
            id: 3pq420g29khfg
      required:
        - changeSet
        - synced
        - instances
        - updated
        - author
        - fileName
        - changeSetFQN
      title: MigrationStateChangeSet
      type: object
      x-stoplight:
        id: lu7ke7g87jfq3
    MigrationStateIn:
      description: Get migration state request input
      properties:
        instanceFilter:
          $ref: '#/components/schemas/MigrationStateInstanceIn'
      title: MigrationStateIn
      type: object
      x-stoplight:
        id: h52h1mz8ooyrq
    MigrationStateInstance:
      description: Change Set Deployment info of instance
      properties:
        error:
          type: string
          x-stoplight:
            id: lwtp6ijz0wb0y
        instance:
          description: Identfier of the instance
          type: string
          x-stoplight:
            id: 0v28kt08qg9bv
        pipeline:
          type: string
          x-stoplight:
            id: ons3mctnaool3
        planExecutionId:
          type: string
          x-stoplight:
            id: lebh5202yl46k
        stageExecutionId:
          type: string
          x-stoplight:
            id: c44thbf6c2mw6
        status:
          $ref: '#/components/schemas/ChangeSetDeploymentStatus'
        tag:
          type: string
          x-stoplight:
            id: 3bkegz2orl3se
        updated:
          description: 'Time of last Change Set Deployment/Rollback attempt '
          format: int64
          type: integer
          x-stoplight:
            id: 67g7rn5rj6k6y
      required:
        - instance
        - status
        - pipeline
        - planExecutionId
        - stageExecutionId
      title: MigrationStateInstance
      type: object
      x-stoplight:
        id: 0tdlaexf41tyg
    MigrationStateInstanceIn:
      description: Get migration state request instance input
      properties:
        instances:
          items:
            type: string
            x-stoplight:
              id: u06e41dzptghg
          type: array
          x-stoplight:
            id: xgfy8jpfw9mll
        order:
          $ref: '#/components/schemas/OrderInstance'
        sort:
          $ref: '#/components/schemas/SortInstance'
      title: MigrationStateInstanceIn
      type: object
      x-stoplight:
        id: 7mrokzsmxkufd
    MigrationStateOut:
      description: Change Set deployment info for a schema
      properties:
        changeSets:
          items:
            $ref: '#/components/schemas/MigrationStateChangeSet'
          type: array
          x-stoplight:
            id: nur8lhmmq4k80
        instances:
          items:
            $ref: '#/components/schemas/InstanceDetail'
          type: array
          x-stoplight:
            id: c4j467g3ps0hq
        schema:
          description: Identifier of the Schema
          type: string
          x-stoplight:
            id: c2cmn4x96fces
      required:
        - schema
      title: MigrationStateOut
      type: object
      x-stoplight:
        id: vvx7j4u21jjs5
    DbOpsNGTag:
      description: 'ng tag with key and value '
      properties:
        key:
          type: string
          x-stoplight:
            id: t2goca5st7qs2
        value:
          nullable: true
          type: string
          x-stoplight:
            id: 2mwjdtx5vmiqo
      required:
        - key
      title: NGTag
      type: object
      x-stoplight:
        id: k8zieexitrnwq
    OrderInstance:
      default: ASC
      description: order of instance entity
      enum:
        - DESC
        - ASC
      title: OrderInstance
      type: string
      x-stoplight:
        id: l0hdqldkwdms9
    OverviewResponseOutput:
      properties:
        dbInstanceIdentifier:
          type: string
          x-stoplight:
            id: ro2tbyjw4ret9
        dbInstanceName:
          type: string
          x-stoplight:
            id: rfhtocn7bxq4e
        dbSchemaIdentifier:
          type: string
          x-stoplight:
            id: armfitbm4jksk
        dbSchemaName:
          type: string
          x-stoplight:
            id: 0dy50a77d4uwj
        lastDeployed:
          format: int64
          type: integer
          x-stoplight:
            id: o071rdrf2o8px
      required:
        - dbSchemaIdentifier
        - dbSchemaName
        - dbInstanceIdentifier
        - dbInstanceName
        - lastDeployed
      title: Overview Response Output
      type: object
      x-stoplight:
        id: rf7l1cm9j1d8b
    ParsedLogOut:
      properties:
        command:
          type: string
        id:
          description: identifier of the logIngest entity
          type: string
        success:
          type: boolean
      required:
        - success
        - command
        - id
      title: Ingest Log
      type: object
      x-stoplight:
        id: 9du4yc03ok29w
    PipelineExecutionMetadata:
      description: Pipeline execution details
      properties:
        pipeline:
          type: string
          x-stoplight:
            id: m0brmgpaary62
        planExecutionId:
          type: string
          x-stoplight:
            id: g9v8rf388hk5i
        stageExecutionId:
          type: string
          x-stoplight:
            id: apfaqclu5g6cd
      required:
        - pipeline
        - planExecutionId
        - stageExecutionId
      title: PipelineExecutionMetadata
      type: object
      x-stoplight:
        id: kseu1nigtorbn
    PipelineStatusOutput:
      description: Response body for Pipeline execution status
      properties:
        metadata:
          additionalProperties:
            type: string
            x-stoplight:
              id: 2i73nst31myn0
          description: meta data of the api
          type: object
          x-stoplight:
            id: cxoes7axeir9k
        response:
          description: response message for the pipeline stage api
          type: string
          x-stoplight:
            id: 494611cyszcwg
        status:
          description: status of the pipeline
          type: string
          x-stoplight:
            id: 6bbkskvv8gjmj
      required:
        - status
        - response
        - metadata
      title: PipelineStatusOutput
      type: object
      x-stoplight:
        id: e0nqtodc72o27
    SchemaInstanceMetadataInput:
      description: Input for getting schema-instance metadata
      properties:
        dbInstance:
          type: string
          x-stoplight:
            id: 71zvtnqo1i9p7
        dbSchema:
          type: string
          x-stoplight:
            id: 58poqah29d3tq
        org:
          type: string
          x-stoplight:
            id: d6jpmjxz5epw1
        project:
          type: string
          x-stoplight:
            id: edvf3j0f87khx
      required:
        - dbSchema
        - dbInstance
        - org
        - project
      title: SchemaInstanceMetadataInput
      type: object
      x-stoplight:
        id: l3zdbihh7akfq
    SchemaInstanceMetadataOutput:
      description: 'output of schema-instance metadata '
      properties:
        dbImages:
          type: object
          x-stoplight:
            id: prp7tzdbfqod7
        dbInstance:
          $ref: '#/components/schemas/DBInstanceOut'
        dbSchema:
          $ref: '#/components/schemas/DBSchemaOut'
        defaultConfigs:
          additionalProperties:
            type: string
            x-stoplight:
              id: dyfm1p5xnen3h
          type: object
          x-stoplight:
            id: kcc25crqizy3m
        downloadImages:
          type: object
          x-stoplight:
            id: 72rtyf1kqsuo2
        image:
          type: string
          x-stoplight:
            id: ko9cub3l40axh
      required:
        - dbSchema
        - dbInstance
        - image
        - dbImages
        - downloadImages
        - defaultConfigs
      title: SchemaInstanceMetadataOutput
      type: object
      x-stoplight:
        id: rnlwlr8fwopid
    SortInstance:
      default: identifier
      description: sort for instance entity
      enum:
        - name
        - updated
        - created
        - identifier
      title: SortInstance
      type: string
      x-stoplight:
        id: zhl6a0ksg19p2
    Error2:
      type: object
      properties:
        id:
          type: string
        message:
          type: string
        temporary:
          type: boolean
        timeout:
          type: boolean
        fault:
          type: boolean
    UsageResponse1:
      type: object
      properties:
        records:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
              description:
                type: string
              is_predefined:
                type: boolean
              enabled:
                type: boolean
              count_of_ous:
                type: integer
              created_at:
                type: integer
              updated_at:
                type: integer
        count:
          type: integer
        _metadata:
          type: object
          properties:
            page_size:
              type: integer
            page:
              type: integer
            has_next:
              type: boolean
            total_count:
              type: integer
    CategoryResponse:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        is_predefined:
          type: boolean
        enabled:
          type: boolean
    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'
    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
    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
    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
    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'
    SbomProcessResponseBody:
      title: SbomProcessResponseBody
      x-stoplight:
        id: x7513y8mz7mbg
      type: object
      properties:
        artifact_id:
          type: string
          description: Id of created artifact
    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'
    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
    EnforceSbomRequestBodyV2:
      title: SbomEnforceRequestBody
      x-stoplight:
        id: 5i41oo0fat2yv
      type: object
      required:
        - enforcement_id
        - artifact
      properties:
        enforcement_id:
          type: string
        artifact:
          $ref: '#/components/schemas/Artifact1'
        policy_set_ref:
          type: array
          items:
            type: string
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
    TokenIssueResponseBody:
      title: TokenIssueResponseBody
      x-stoplight:
        id: bs0ribdnc8esu
      type: object
      x-internal: true
      properties:
        token:
          type: string
          description: Issued cross-service JWT
      required:
        - token
    TokenIssueTokenResponseBody:
      type: object
      properties:
        token:
          type: string
          x-stoplight:
            id: z31a965n8a318
          description: Issued cross-service JWT
      required:
        - token
      title: ''
      x-internal: true
      x-stoplight:
        id: 85jzv1sf3rhh9
    ArtifactSbomResponseBody:
      title: ArtifactSbomResponseBody
      x-stoplight:
        id: vqsbzq42jdfl8
      type: object
      properties:
        sbom:
          type: string
      description: ''
    OrchestrationSummaryResponse:
      title: OrchestrationSummary
      x-stoplight:
        id: 8uhz8zuinfdbw
      type: object
      properties:
        step_execution_id:
          type: string
          x-stoplight:
            id: b8by5512yxwds
        is_attested:
          x-stoplight:
            id: c1kg3hhd80s69
          type: boolean
        artifact:
          $ref: '#/components/schemas/Artifact1'
        sbom:
          $ref: '#/components/schemas/SbomDetails'
        drift_summary:
          $ref: '#/components/schemas/OrchestrationDriftSummary'
        scorecard_summary:
          $ref: '#/components/schemas/OrchestrationScorecardSummary'
    EnforcementSummaryResponse:
      title: EnforcementSummaryResponse
      x-stoplight:
        id: bw1b59mkwp23i
      type: object
      properties:
        artifact:
          $ref: '#/components/schemas/Artifact1'
        enforcement_id:
          type: string
          x-stoplight:
            id: z3gbbwmjfj9pc
        allow_list_violation_count:
          type: integer
          x-stoplight:
            id: pyx4490itpx6w
        deny_list_violation_count:
          type: integer
          x-stoplight:
            id: lo79k2drvspk5
        status:
          type: string
          x-stoplight:
            id: pqwzlr10w01hm
        exempted_component_count:
          type: integer
      description: Enforcement Summary
    SbomDetails:
      title: SbomDetails
      x-stoplight:
        id: y2liozyptegss
      type: object
      description: Sbom Details
      properties:
        name:
          type: string
          x-stoplight:
            id: hshq9gvgpta9p
      required:
        - name
    PolicyViolation:
      type: object
      x-examples: {}
      properties:
        enforcement_id:
          type: string
          x-stoplight:
            id: u6sbgtmy5wra6
        artifact_id:
          type: string
          x-stoplight:
            id: 2604cwa0jjdw5
        tag:
          type: string
        image_name:
          type: string
          x-stoplight:
            id: fs3nst342golm
        account:
          type: string
          x-stoplight:
            id: f2oj7i5p9qq4h
        org:
          type: string
          x-stoplight:
            id: yl6jynnzkcibo
        project:
          type: string
          x-stoplight:
            id: tbae7bb9yf51j
        orchestration_id:
          type: string
          x-stoplight:
            id: zz2jdp70vk2gl
        violation_type:
          type: string
          x-stoplight:
            id: vtgnfrx87ka2x
        violation_details:
          type: string
          x-stoplight:
            id: 78wywme9bsvbu
        name:
          type: string
        version:
          type: string
        supplier:
          type: string
        supplier_type:
          type: string
          x-stoplight:
            id: mnk7v7d72i7pp
        package_manager:
          type: string
          x-stoplight:
            id: 7w5ud9unw6war
        license:
          type: array
          items:
            type: string
        purl:
          type: string
        is_exempted:
          type: boolean
        exemption_id:
          type: string
        filter_tags:
          type: array
          items:
            $ref: '#/components/schemas/LayerType'
        language:
          type: string
      title: ''
      x-stoplight:
        id: kjtyfl18ttgbk
    NormalizedSbomComponentDTO:
      title: NormalizedSbomComponentDTO
      x-stoplight:
        id: 6glvdvqsaxb52
      type: object
      description: Normalized SBOM Component Details
      properties:
        orchestration_id:
          type: string
        sbom_version:
          type: string
        artifact_url:
          type: string
        artifact_id:
          type: string
        artifact_name:
          type: string
        tags:
          type: array
          items:
            type: string
        created:
          type: number
        tool_version:
          type: string
        tool_name:
          type: string
        tool_vendor:
          type: string
        package_id:
          type: string
        package_name:
          type: string
        package_description:
          type: string
        package_license:
          type: array
          items:
            type: string
        package_source_info:
          type: string
        package_version:
          type: string
        package_supplier_name:
          type: string
        package_originator_name:
          type: string
        originator_type:
          type: string
        package_type:
          type: string
        package_cpe:
          type: string
        package_properties:
          type: string
        package_manager:
          type: string
        package_namespace:
          type: string
        major_version:
          type: number
        minor_version:
          type: number
        patch_version:
          type: number
        pipeline_identifier:
          type: string
        project_identifier:
          type: string
        org_identifier:
          type: string
        sequence_id:
          type: string
        account_id:
          type: string
        purl:
          type: string
        language:
          type: string
        filter_tags:
          type: array
          items:
            $ref: '#/components/schemas/LayerType'
    SbomComponentRequestDTO:
      title: NormalizedSbomComponentDTO
      x-stoplight:
        id: w7dtx3sur4642
      type: object
      description: Normalized SBOM Component Details
      properties:
        tags:
          type: array
          items:
            type: string
        package_id:
          type: string
        package_name:
          type: string
        package_description:
          type: string
        package_license:
          type: array
          items:
            type: string
        package_source_info:
          type: string
        package_version:
          type: string
        package_originator_name:
          type: string
        originator_type:
          type: string
        package_type:
          type: string
        package_cpe:
          type: string
        package_properties:
          type: string
        package_manager:
          type: string
        package_namespace:
          type: string
        major_version:
          type: number
        minor_version:
          type: number
        patch_version:
          type: number
        purl:
          type: string
        language:
          type: string
        filter_tags:
          type: array
          items:
            $ref: '#/components/schemas/LayerType'
    EnforcementResultDTO:
      title: EnforcementResultDTO
      x-stoplight:
        id: 9cqjc50lih6xp
      type: object
      description: Enforcement Result Details DTO
      x-examples: {}
      properties:
        enforcement_id:
          type: string
        artifact_id:
          type: string
        tag:
          type: string
        image_name:
          type: string
        account_id:
          type: string
        org_identifier:
          type: string
        project_identifier:
          type: string
        orchestration_id:
          type: string
        violation_type:
          type: string
        violation_details:
          type: string
        name:
          type: string
        version:
          type: string
        supplier:
          type: string
        supplier_type:
          type: string
        package_manager:
          type: string
        license:
          type: array
          items:
            type: string
        purl:
          type: string
        is_exempted:
          type: boolean
        exemption_id:
          type: string
      required:
        - enforcement_id
        - artifact_id
        - tag
        - image_name
        - account_id
        - org_identifier
        - project_identifier
        - orchestration_id
        - violation_type
        - violation_details
    EnvironmentTypeFilter:
      title: EnvironmentTypeFilter
      x-stoplight:
        id: vkao4sb4qhrp3
      enum:
        - Prod
        - PreProd
        - None
        - All
    EnvironmentType2:
      title: EnvironmentType
      x-stoplight:
        id: 7v5fj6xgubcbs
      enum:
        - Prod
        - PreProd
    EnforcementSummaryDTO:
      title: EnforcementSummaryDTO
      x-stoplight:
        id: 64g1wsvw49kdm
      type: object
      description: Enforcement summary detail DTO
      x-examples: {}
      properties:
        artifact:
          $ref: '#/components/schemas/Artifact1'
        enforcement_id:
          type: string
        orchestration_id:
          type: string
        deny_list_violation_count:
          type: number
        allow_list_violation_count:
          type: number
        status:
          type: string
        account_id:
          type: string
        org_identifier:
          type: string
        project_identifier:
          type: string
        pipeline_execution_id:
          type: string
        created:
          type: number
        exempted_component_count:
          type: number
      required:
        - artifact
        - enforcement_id
        - orchestration_id
        - deny_list_violation_count
        - allow_list_violation_count
        - status
        - account_id
        - org_identifier
        - project_identifier
        - pipeline_execution_id
        - created
    NormalisedSbomComponentRequestBody:
      $ref: '#/components/schemas/Artifact1'
      x-stoplight:
        id: t54mxrvnecev5
    ArtifactListingRequestBody:
      type: object
      x-examples: {}
      properties:
        search_term:
          type: string
        component_filter:
          type: array
          items:
            $ref: '#/components/schemas/ComponentFilter'
        license_filter:
          $ref: '#/components/schemas/LicenseFilter'
        policy_violation:
          type: string
          enum:
            - ALLOW
            - DENY
            - ANY
            - NONE
        environment_type:
          type: string
          enum:
            - Prod
            - NonProd
            - None
            - All
      x-stoplight:
        id: 9ddio8k8n5fia
    ArtifactListingResponse:
      title: ArtifactListingResponse
      x-stoplight:
        id: ffkyhbx1mpa93
      type: object
      x-examples: {}
      required:
        - id
        - name
        - tag
      properties:
        id:
          type: string
        name:
          type: string
        tag:
          type: string
        url:
          type: string
        components_count:
          type: integer
        allow_list_violation_count:
          type: string
        deny_list_violation_count:
          type: string
        activity:
          type: string
          enum:
            - DEPLOYED
            - GENERATED
        updated:
          type: string
        prod_env_count:
          type: integer
        non_prod_env_count:
          type: integer
        enforcement_id:
          type: string
        orchestration_id:
          type: string
        build_pipeline_id:
          type: string
        build_pipeline_execution_id:
          type: string
        baseline:
          type: boolean
          x-stoplight:
            id: bhdfxt2zo1ccg
        metadata:
          type: object
          additionalProperties: true
        scorecard:
          type: object
          x-stoplight:
            id: 7cnufejjvh2xb
          properties:
            max_score:
              type: string
              x-stoplight:
                id: 8rfm461fllni5
            avg_score:
              type: string
              x-stoplight:
                id: rloj7ie5t1u6x
    ArtifactDetailResponse:
      title: ArtifactDetailResponse
      type: object
      x-examples: {}
      x-stoplight:
        id: px56xa89l9myy
      properties:
        id:
          type: string
          description: Artifact Identifier
        name:
          type: string
          description: Name of the artifact
        url:
          type: string
          description: Registry url of the artifact
        tag:
          type: string
          description: Version of the artifact
        components_count:
          type: integer
          description: Count of the normalized components within the artifact
        updated:
          type: string
          description: Last Updated time of artifact
        prod_env_count:
          type: integer
          description: Count of production env in which artifact is deployed
        non_prod_env_count:
          type: integer
          description: Count of pre-production env in which artifact is deploye
        build_pipeline_id:
          type: string
          description: Pipeline id of build pipeline used to orchestrate the artifact
        build_pipeline_name:
          type: string
          x-stoplight:
            id: rswo3za1467x2
          description: Pipeline name of build pipeline used to orchestrate the artifact
        build_pipeline_execution_id:
          type: string
          description: >-
            Pipeline execution id of build pipeline used to orchestrate the
            artifact
        orchestration_id:
          type: string
          description: Orchestration step identifier
        scorecard:
          type: object
          x-stoplight:
            id: m4r1asknhuioj
          properties:
            max_score:
              type: string
              x-stoplight:
                id: a3gfc89dp2mv9
            avg_score:
              type: string
              x-stoplight:
                id: ukdzx8upko3wt
        metadata:
          type: object
          additionalProperties: true
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
      required:
        - id
        - name
        - tag
    ArtifactComponentViewRequestBody:
      title: ArtifactComponentViewRequestBody
      x-stoplight:
        id: x5f2v20n46hkz
      type: object
      properties:
        component_filter:
          type: array
          items:
            $ref: '#/components/schemas/ComponentFilter'
        license_filter:
          $ref: '#/components/schemas/LicenseFilter'
        package_supplier:
          type: string
        package_manager:
          type: string
        image_layer:
          $ref: '#/components/schemas/LayerType'
    DeleteRepositoriesRequestBody:
      title: DeleteRepositoriesRequestBody
      x-stoplight:
        id: k5i9vmudevv6v
      type: array
      items:
        $ref: '#/components/schemas/Repositories'
    Repositories:
      title: Repositories
      x-stoplight:
        id: g7mmcc1qasngi
      type: object
      required:
        - repo_url
        - org_identifier
        - project_identifier
      properties:
        repo_url:
          type: string
          x-stoplight:
            id: veuh1bjeksk3g
          description: URL of the repo to be deleted
        repo_branch:
          type: string
          x-stoplight:
            id: udulq793jiljv
        org_identifier:
          type: string
          x-stoplight:
            id: cefofd4glde0e
          description: Org of the repository to be deleted.
        project_identifier:
          type: string
          x-stoplight:
            id: 7muf87n2tf8pd
          description: Project of the repository to be deleted.
    ArtifactDeploymentViewRequestBody:
      title: ArtifactDeploymentViewRequestBody
      x-stoplight:
        id: 5qyutfccgf2o9
      type: object
      properties:
        environment:
          type: string
        environment_type:
          type: string
          enum:
            - Prod
            - NonProd
        policy_violation:
          type: string
          enum:
            - ALLOW
            - DENY
            - ANY
            - NONE
    ArtifactComponentViewResponse:
      title: ArtifactComponentViewResponse
      x-stoplight:
        id: ifxc5m0lb9u32
      type: object
      properties:
        package_name:
          type: string
        package_version:
          type: string
        package_supplier:
          type: string
        package_manager:
          type: string
        purl:
          type: string
        package_license:
          type: string
        filter_tags:
          type: array
          x-stoplight:
            id: disrwjq6ou28k
          items:
            $ref: '#/components/schemas/LayerType'
    ArtifactDeploymentViewResponse:
      title: ArtifactDeploymentViewResponse
      x-stoplight:
        id: jugz9izzxuuvo
      type: object
      properties:
        env_id:
          type: string
          description: Harness environment id
        env_name:
          type: string
          description: Environment name
        env_type:
          type: string
          enum:
            - PROD
            - NONPROD
          description: Environment type
        pipeline_id:
          type: string
          description: Pipeline identifier of deployment pipeline
        pipeline_name:
          type: string
          description: Pipeline name of deployment pipeline
        pipeline_execution_id:
          type: string
          description: Pipeline execution identifier of deployment pipeline
        pipeline_sequence_id:
          type: string
          description: Pipeline Sequence id of deployment pipeline
        allow_list_violation_count:
          type: string
          description: Allow list type policy violation count
        deny_list_violation_count:
          type: string
          description: Deny list type policy violation count
        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: string
          description: Time of trigger of the deployment pipeline
        triggered_type:
          type: string
          description: Trigger type of the deployment pipeline
        enforcement_id:
          type: string
          description: Enforcement step identifier
        slsa_verification:
          $ref: '#/components/schemas/Slsa'
      x-examples: {}
    Operator:
      title: Operator
      x-stoplight:
        id: nxhoa45ajna2q
      enum:
        - Equals
        - StartsWith
        - Contains
        - NotEquals
        - GreaterThan
        - GreaterThanEquals
        - LessThan
        - LessThanEquals
    ComponentFilter:
      title: ComponentFilter
      type: object
      properties:
        field_name:
          type: string
          enum:
            - ComponentVersion
            - ComponentName
        value:
          type: string
        operator:
          $ref: '#/components/schemas/Operator'
      required:
        - field_name
        - value
        - operator
      x-stoplight:
        id: p0u8koyls0i0c
    LicenseFilter:
      title: LicenseFilter
      type: object
      properties:
        value:
          type: string
        operator:
          $ref: '#/components/schemas/Operator'
      required:
        - value
        - operator
      x-stoplight:
        id: ae7ieb3d1qze1
    Slsa:
      title: Slsa
      x-stoplight:
        id: ay4nzhxmkraca
      type: object
      description: Slsa Verification Data
      properties:
        provenance:
          type: string
          x-stoplight:
            id: yyy7o9vx6ht3f
          description: Slsa provenance data
        policy_outcome_status:
          type: string
          x-stoplight:
            id: rany3wjtgl60e
          description: Slsa policy outcome
    CategoryScorecard:
      title: CategoryScorecard
      x-stoplight:
        id: 6v2m98svtxdra
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: ra6pk1e1heg1n
        is_enabled:
          type: string
          x-stoplight:
            id: 3h269prrbiyft
        weightage:
          type: string
          x-stoplight:
            id: mfraxqfwg9tcj
        max_score:
          type: string
          x-stoplight:
            id: gk3c15sbckyt9
        score:
          type: string
          x-stoplight:
            id: 6k44spofqj7d1
        checks:
          type: array
          x-stoplight:
            id: co4k2r34qb28u
          items:
            $ref: '#/components/schemas/CategoryScorecardCheck'
    ScorecardInfo:
      title: ScorecardInfo
      x-stoplight:
        id: si4vj4j2zfbkr
      type: object
      properties:
        tool_name:
          type: string
          x-stoplight:
            id: m2ion268kdz4s
        tool_version:
          type: string
          x-stoplight:
            id: jeauam61iap1k
    SbomDetailsForScorecard:
      title: SbomDetailsForScorecard
      x-stoplight:
        id: c53wqz9j9llof
      type: object
      properties:
        tool_name:
          type: string
          x-stoplight:
            id: xtpb8ku3wkk5w
        tool_version:
          type: string
          x-stoplight:
            id: icym30io16ncy
        sbom_file_name:
          type: string
          x-stoplight:
            id: bsdkyhabiqeva
        sbom_format:
          type: string
          x-stoplight:
            id: q1trja4shztqx
        sbom_version:
          type: string
          x-stoplight:
            id: mhy9fbf7pwc9u
        file_format:
          type: string
          x-stoplight:
            id: pm7s0v55ci4hj
    SbomScorecardResponseBody:
      type: object
      x-examples: {}
      title: SbomScoreCardResponseBody
      properties:
        orchestration_id:
          type: string
          x-stoplight:
            id: y861542jly6we
        account_id:
          type: string
          x-stoplight:
            id: bzajsphwi4ssi
        org_id:
          type: string
          x-stoplight:
            id: pco0ysoq49zp9
        project_id:
          type: string
          x-stoplight:
            id: yjfm2swj8rjjs
        avg_score:
          type: string
          x-stoplight:
            id: hj4v4pu3ktetr
        max_score:
          type: string
          x-stoplight:
            id: nsf1v53wdt2o0
        creation_on:
          type: string
          x-stoplight:
            id: zrt6ikywuxxjc
        sbom_details:
          $ref: '#/components/schemas/SbomDetailsForScorecard'
        score_card_info:
          $ref: '#/components/schemas/ScorecardInfo'
        category:
          type: array
          items:
            $ref: '#/components/schemas/CategoryScorecard'
      x-stoplight:
        id: ffcmct55bddmm
    SbomScorecardRequest:
      title: SbomScorecardRequestBody
      x-stoplight:
        id: 1hsts8ibsfe22
      type: object
      properties:
        orchestration_id:
          type: string
          x-stoplight:
            id: 473tkkkjlmh9i
        account_id:
          type: string
          x-stoplight:
            id: kiwjgwivgqyyg
        org_id:
          type: string
          x-stoplight:
            id: 9h3v65z90htgv
        project_id:
          type: string
          x-stoplight:
            id: j9z1jh3en75ag
        avg_score:
          type: string
          x-stoplight:
            id: inakcdrn67uz8
        max_score:
          type: string
          x-stoplight:
            id: smpn3sv0sztni
        creation_on:
          type: string
          x-stoplight:
            id: emolyvjgp9xxe
        sbom_details:
          $ref: '#/components/schemas/SbomDetailsForScorecard'
        score_card_info:
          $ref: '#/components/schemas/ScorecardInfo'
        category:
          type: array
          items:
            $ref: '#/components/schemas/CategoryScorecard'
    ConfigInfo:
      title: ConfigInfo
      x-stoplight:
        id: 580wu9wrkgt0r
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: ygal56c1ulaoo
        name:
          type: string
          x-stoplight:
            id: 3kxzpnr61yx3x
        config:
          type: array
          x-stoplight:
            id: hfoistv7iy703
          items:
            x-stoplight:
              id: 4wwrulu2igigz
            type: object
            properties:
              key:
                type: string
                x-stoplight:
                  id: 1938pk1gbxhge
              value:
                type: string
                x-stoplight:
                  id: 2pmir0wexum5b
    ConfigRequestBody:
      title: Config
      x-stoplight:
        id: 9jg78indgdmi8
      type: object
      properties:
        account_id:
          type: string
          x-stoplight:
            id: 8g8nrhuvd0sit
        org_id:
          type: string
          x-stoplight:
            id: 3g6unusnh57bp
        project_id:
          type: string
          x-stoplight:
            id: i75mm1aqjwpda
        user_id:
          type: string
          x-stoplight:
            id: p0oajkc2imyb3
        config_id:
          type: string
          x-stoplight:
            id: fsbft09616skw
        name:
          type: string
          x-stoplight:
            id: w8htw3ebyxow7
        type:
          type: string
          x-stoplight:
            id: 9wrk1dsfu645g
        creation_on:
          type: string
          x-stoplight:
            id: zvxx5fp6ltmfb
        config_info:
          x-stoplight:
            id: h6e2jds5jahst
          type: array
          items:
            $ref: '#/components/schemas/ConfigInfo'
    ExecutionLimitRequestBody:
      title: ExeuctionLimitConfig
      type: object
      properties:
        config_id:
          type: string
        configs:
          x-stoplight:
            id: h6e2jds5jahst
          type: array
          items:
            $ref: '#/components/schemas/ConfigInfo'
    PipelineInfraConfigRequestBody:
      title: PipelineInfraConfig
      x-stoplight:
        id: 177a15306985b
      type: object
      required:
        - spec
      properties:
        org:
          type: string
          description: If the org id is not provided, infra is set at account-level.
        project:
          type: string
          description: If the project id is not provided, infra is set at org-level.
        spec:
          type: string
          description: >-
            Define the configuration of your infrastructure in JSON format. We
            now support both Kubernetes and Virtual Machines.
          x-stoplight:
            id: wj3kwuape6zan
        allow_override:
          type: boolean
          description: >-
            When set to true, this setting enables configurations to be
            overridden at the project or organization level, regardless of
            whether they were previously defined at the account level.
          x-stoplight:
            id: 47ni9vvackpg0
      description: Infra Config Details of Pipeline
    PipelineStoreConfigRequestBody:
      title: PipelineStoreConfig
      type: object
      required:
        - scan_type
        - repo
        - base_branch
      properties:
        scan_type:
          $ref: '#/components/schemas/ComplianceScanType'
        connector_id:
          type: string
        repo:
          type: string
        base_branch:
          type: string
        yaml_path:
          type: string
      description: Remote Config Details of Pipeline
    ConfigResponseBody:
      title: ConfigResponse
      x-stoplight:
        id: 5gjep7i88xomz
      type: object
      properties:
        account_id:
          type: string
          x-stoplight:
            id: 1hpj7auq2gdi7
        org_id:
          type: string
          x-stoplight:
            id: x6u5udext36h7
        project_id:
          type: string
          x-stoplight:
            id: rcekofy1jhk9b
        user_id:
          type: string
          x-stoplight:
            id: fjnu07i1cknvp
        config_id:
          type: string
          x-stoplight:
            id: 0k3r8wahjh3ig
        name:
          type: string
          x-stoplight:
            id: m501ugdvusexa
        type:
          type: string
          x-stoplight:
            id: blybei9t1z6n7
        creation_on:
          type: string
          x-stoplight:
            id: 9kfsoepf16mvj
        config_info:
          type: array
          x-stoplight:
            id: ku34eojwp5k91
          items:
            $ref: '#/components/schemas/ConfigInfo'
    ExecutionLimitResponseBody:
      title: ExecutionLimitConfigResponse
      type: object
      properties:
        account_id:
          type: string
          x-stoplight:
            id: 1hpj7auq2gdi7
        config_id:
          type: string
          x-stoplight:
            id: 0k3r8wahjh3ig
        name:
          type: string
          x-stoplight:
            id: m501ugdvusexa
        type:
          type: string
          x-stoplight:
            id: blybei9t1z6n7
        configs:
          type: array
          x-stoplight:
            id: ku34eojwp5k91
          items:
            $ref: '#/components/schemas/ConfigInfo'
    SaveResponse:
      title: SaveResponse
      x-stoplight:
        id: uqzrp59icfge8
      type: object
      description: 'response for Save/Update operations '
      properties:
        status:
          type: string
          x-stoplight:
            id: 0kwqjkjtppozz
        response:
          $ref: '#/components/schemas/PluginResponseBody'
    ComponentSummary:
      type: object
      x-examples:
        Example 1:
          package_name: string
          package_version: string
          package_supplier: string
          package_manager: string
          purl: string
          package_license: string
          filter_tags:
            type: array
            x-stoplight:
              id: 7g4k2ra6i06bh
            items:
              $ref: '#/components/schemas/LayerType'
      title: ComponentSummary
      description: Provides component summary
      properties:
        package_name:
          type: string
          description: Component Name
        package_version:
          type: string
          description: Component Version
        package_supplier:
          type: string
          description: Component Supplier
        package_manager:
          type: string
          description: Package manager of component
        purl:
          type: string
          description: purl of component
        package_license:
          type: string
          description: Licenses of component
        filter_tags:
          type: array
          x-stoplight:
            id: 7g4k2ra6i06bh
          items:
            $ref: '#/components/schemas/LayerType'
      x-stoplight:
        id: ml8xhgivh3dyk
    ComponentDrift:
      type: object
      x-examples:
        Example 1:
          status: ADDED / MODIFIED / DELETED
          old_component:
            package_name: string
            package_version: string
            package_supplier: string
            package_manager: string
            purl: string
            package_license: string
          new_component:
            package_name: string
            package_version: string
            package_supplier: string
            package_manager: string
            purl: string
            package_license: string
      title: Component Drift
      description: Compnent Drift model
      properties:
        status:
          enum:
            - modified
            - added
            - deleted
          description: >-
            Provides status of component whether it got added, deleted or
            modified
        old_component:
          $ref: '#/components/schemas/ComponentSummary'
        new_component:
          $ref: '#/components/schemas/ComponentSummary'
      x-stoplight:
        id: uy3wrdn73yshg
    BaselineRequestBody:
      title: BaselineRequest
      x-stoplight:
        id: 34tfr05xc97g2
      type: object
      properties:
        tag:
          type: string
          x-stoplight:
            id: f1g80cyz8vsx1
          description: Version of the Artifact
    BaselineResponseBody:
      title: BaselineResponseBody
      x-stoplight:
        id: j7vau29flric4
      type: object
      properties:
        artifact_id:
          type: string
          x-stoplight:
            id: dtkxcner1lm4q
          description: Id of the artifact
        tag:
          type: string
          x-stoplight:
            id: lubtz5yi0ccc9
          description: Version of the artifact
    ArtifactSbomDriftRequestBody:
      title: ArtifactSbomDriftRequestBody
      x-stoplight:
        id: n0v1tljx2yttx
      type: object
      properties:
        tag:
          type: string
          x-stoplight:
            id: sl8ssim1u8uk5
          description: Tag on which drift has to be calculated
        base_tag:
          type: string
          x-stoplight:
            id: i4g6dfh1vcksu
          description: Base tag to calculate drift from
      required:
        - tag
        - base_tag
      description: Request body for caclulating drift between 2 versions of artifact
    ArtifactSbomDriftResponse:
      title: ArtifactSbomDriftResponse
      x-stoplight:
        id: 8wtldj2bdrxbl
      type: object
      description: Response body for sbom drift calculation between 2 artifact versions.
      required:
        - drift_id
        - tag
        - base_tag
        - artifact_name
        - total_drifts
      properties:
        drift_id:
          type: string
          x-stoplight:
            id: abkvlxxav7a0m
          description: Drift ID to get the drift results
        tag:
          type: string
          x-stoplight:
            id: r8jspopjepniy
          description: Tag on which drift was calculated
        base_tag:
          type: string
          x-stoplight:
            id: vp5s1sanmd26h
          description: Base tag from which drift was calculated
        artifact_name:
          type: string
          x-stoplight:
            id: v2iqwtzrsb78d
          description: Artifact name
        total_drifts:
          type: integer
          x-stoplight:
            id: qii5blwextc6b
          description: Sum total of component and license drifts.
        component_drift_summary:
          $ref: '#/components/schemas/ComponentDriftSummary'
        license_drift_summary:
          $ref: '#/components/schemas/LicenseDriftSummary'
    LicenseDrift:
      title: LicenseDrift
      x-stoplight:
        id: t284iz1qxez0u
      type: object
      properties:
        status:
          x-stoplight:
            id: r2e6nepnq5d4i
          description: |
            Status of license
          enum:
            - added
            - deleted
        license:
          type: string
          x-stoplight:
            id: 6qcrhmnaue2jt
          description: License name
        components:
          type: array
          x-stoplight:
            id: vrimmuw32htbc
          items:
            $ref: '#/components/schemas/ComponentSummary'
      description: Element of license drift
    VulnerabilitySeverity:
      title: VulnerabilitySeverity
      x-stoplight:
        id: 6fxyyopskl7rp
      enum:
        - INFO
        - LOW
        - MEDIUM
        - HIGH
        - CRITICAL
      description: Severity of the Vulnerability.
    ContactInfo:
      title: ContactInfo
      x-stoplight:
        id: inl50bp7x1g5z
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: da9w1xqxv9z1k
          description: Name of the contact person.
        email:
          type: string
          x-stoplight:
            id: 3ty5nsl5eyl1x
          description: Email of the Contact person.
      description: Contact Details.
    RemediationCondition:
      title: RemediationCondition
      x-stoplight:
        id: gq6jfg0tk3v08
      type: object
      properties:
        version:
          type: string
          x-stoplight:
            id: pes5gkkhd6b6d
          description: >
            Component Version for Remediation. For operator like less than, less
            than equals, range, semantic versioning is required.
        operator:
          type: string
          enum:
            - LessThan
            - LessThanEquals
            - Matches
            - All
          description: 'Operator for Remediation Condition. '
      required:
        - operator
      description: Removal of the following version indicates Artifact is remediated.
    RemediationTrackerCreateResponseBody:
      title: RemediationTrackerCreateResponseBody
      x-stoplight:
        id: ayed05b8fvi1n
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: jj8go337l14j6
          description: Remediation Tracker Id.
      required:
        - id
    VulnerabilityInfo:
      title: VulnerabilityInfo
      x-stoplight:
        id: roc2n9mk3y5ga
      type: object
      discriminator:
        propertyName: type
        mapping:
          CVE: '#/components/schemas/CVEVulnerability'
          Default: '#/components/schemas/DefaultVulnerability'
      properties:
        component_name:
          type: string
          x-stoplight:
            id: qjvq75h0i3ml3
          description: Name of the component where vulnerability is found.
        vulnerability_description:
          type: string
          x-stoplight:
            id: lbzaacmud1q9z
          description: Details of the vulnerability.
        severity:
          $ref: '#/components/schemas/VulnerabilitySeverity'
        type:
          enum:
            - CVE
            - Default
      required:
        - component_name
        - severity
        - type
    CVEVulnerability:
      title: CVEVulnerability
      x-stoplight:
        id: p9o02alktq4kd
      x-discriminator-value: CVE
      allOf:
        - $ref: '#/components/schemas/VulnerabilityInfo'
        - type: object
          properties:
            cve:
              type: string
              x-stoplight:
                id: 06lpy3qb39n8x
              description: CVE number of the vulnerability.
          required:
            - cve
      required:
        - type
    DefaultVulnerability:
      title: DefaultVulnerability
      x-stoplight:
        id: 60vx5981dgwdx
      x-discriminator-value: Default
      type: object
      allOf:
        - $ref: '#/components/schemas/VulnerabilityInfo'
    RemediationTrackerCreateRequestBody:
      title: RemediationTrackerCreateRequestBody
      x-stoplight:
        id: msfdp2vaxe25c
      type: object
      properties:
        vulnerability_info:
          $ref: '#/components/schemas/VulnerabilityInfo'
        contact:
          $ref: '#/components/schemas/ContactInfo'
        comments:
          type: string
          x-stoplight:
            id: z4kjp4gxjuieg
          description: Description/comments for the tracker.
        remediation_condition:
          $ref: '#/components/schemas/RemediationCondition'
        target_end_date:
          type: string
          x-stoplight:
            id: fesu25cnud2g5
          format: date
          description: Target End Date in UTC.
      required:
        - remediation_condition
      description: Create Request Body For Remediation tracker.
    ExcludeArtifactRequest:
      title: ExcludeArtifactRequest
      x-stoplight:
        id: 8zstw5pc37lei
      type: object
      properties:
        artifact_id:
          type: string
          x-stoplight:
            id: pq3635o6c8dbd
          description: Artifact Id that needs to be excluded from the tracker.
      required:
        - artifact_id
    OrchestrationStepDriftRequestBody:
      title: OrchestrationStepDriftRequestBody
      x-stoplight:
        id: a10i10ic81mf2
      type: object
      properties:
        base:
          x-stoplight:
            id: hpnybas76g36y
          enum:
            - baseline
            - last_generated_sbom
            - repository
          description: Provide the baseline from which drift has to be calculated
        variant:
          $ref: '#/components/schemas/ArtifactVariant'
      required:
        - base
    OrchestrationDriftSummary:
      title: OrchestrationDriftSummary
      x-stoplight:
        id: bt7iwlyxwvu6d
      type: object
      properties:
        base:
          x-stoplight:
            id: 03jtqgpu3ytss
          type: string
        total_drifts:
          type: integer
          x-stoplight:
            id: 1sh13lvpgzvsc
        license_drifts:
          type: integer
          x-stoplight:
            id: yvchfgcgggjls
        component_drifts:
          type: integer
          x-stoplight:
            id: 420o9fow31y8c
        components_added:
          type: integer
          x-stoplight:
            id: 8bv6t3pcnutdu
        components_deleted:
          type: integer
          x-stoplight:
            id: gk64fxw51grkm
        components_modified:
          type: integer
          x-stoplight:
            id: m19qzum0f4ou9
        license_added:
          type: integer
          x-stoplight:
            id: gvvpuqxzkwa9p
        license_deleted:
          type: integer
          x-stoplight:
            id: 7gla1b1oom7aj
        base_tag:
          type: string
          x-stoplight:
            id: d66nz5mbgyfgd
        drift_id:
          type: string
          x-stoplight:
            id: 0to8vkd3bphkq
    OrchestrationScorecardSummary:
      title: OrchestrationScorecardSummary
      x-stoplight:
        id: esgpy3s1ulj4r
      type: object
      properties:
        avg_score:
          type: string
          x-stoplight:
            id: x77dm8kju5gb2
        max_score:
          type: string
          x-stoplight:
            id: 1wyh0qaiyni1t
    RemediationTrackersOverallSummaryResponseBody:
      title: RemediationTrackersOverallSummaryResponseBody
      x-stoplight:
        id: qego172jozoq6
      type: object
      properties:
        mean_time_to_remediate_in_hours:
          type: number
          x-stoplight:
            id: 7fhckh6uidvwl
          format: double
          description: Mean time to complete the Remediation in Hours.
        remediation_counts:
          x-stoplight:
            id: fh4ewst1z2xzw
          type: array
          description: List of statuses and their counts.
          items:
            $ref: '#/components/schemas/RemediationCount'
        deployments_count:
          $ref: '#/components/schemas/DeploymentsCount'
    RemediationStatus:
      title: RemediationStatus
      x-stoplight:
        id: 63pz8brn3jf4c
      enum:
        - IN_PROGRESS
        - DONE
    RemediationCount:
      title: RemediationCount
      x-stoplight:
        id: sbx2cw30oiuxo
      type: object
      properties:
        status:
          $ref: '#/components/schemas/RemediationStatus'
        count:
          type: integer
          x-stoplight:
            id: kjek6z7qvo2ta
          format: int64
          default: 0
          description: Number of trackers having the status.
      required:
        - status
        - count
    ComponentDriftSummary:
      title: ComponentDriftSummary
      x-stoplight:
        id: b32uzhtuywe2w
      type: object
      description: Component drift summary
      properties:
        total:
          type: integer
          x-stoplight:
            id: hxyal6jm7n1op
          description: Total number of component drifts.
        added:
          type: integer
          x-stoplight:
            id: r0v4mbai7xjnj
          description: Number of components added.
        deleted:
          type: integer
          x-stoplight:
            id: cloho1oa3yqwg
          description: Number of components deleted.
        modified:
          type: integer
          x-stoplight:
            id: eg71m292ud719
          description: Number of components modified.
      required:
        - total
        - added
        - deleted
        - modified
    LicenseDriftSummary:
      title: LicenseDriftSummary
      x-stoplight:
        id: xqrznhby6s5pm
      type: object
      properties:
        total:
          type: integer
          x-stoplight:
            id: rv3e26us1gpns
          description: Total number of license drifts.
        added:
          type: integer
          x-stoplight:
            id: i712aeyzprqnp
          description: Total number of licenses added.
        deleted:
          type: integer
          x-stoplight:
            id: 78xi96muf5dzy
          description: Total number of licenses deleted
      required:
        - total
        - added
        - deleted
      description: Provides License Drift Summary
    RemediationListingRequestBody:
      title: RemediationListingRequestBody
      x-stoplight:
        id: rksqf5o09fhae
      type: object
      properties:
        component_name_filter:
          x-stoplight:
            id: 3tkq4ge9znqqs
          type: object
          description: Filter for Component Name.
          properties:
            operator:
              $ref: '#/components/schemas/NameOperator'
            value:
              type: string
              x-stoplight:
                id: e3466w426g7dh
          required:
            - operator
            - value
        cve_filter:
          x-stoplight:
            id: 1sqdll9itus52
          type: object
          description: Filter for CVE.
          properties:
            operator:
              $ref: '#/components/schemas/NameOperator'
            value:
              type: string
              x-stoplight:
                id: j1g5bilq86a3a
          required:
            - operator
            - value
    RemediationListingResponse:
      title: RemediationListingResponse
      x-stoplight:
        id: vxldq239q3p78
      type: object
      x-examples: {}
      properties:
        id:
          type: string
          description: Tracker Id.
        component:
          type: string
          x-stoplight:
            id: 3iof2uw444ynl
          description: Component Name.
        cve:
          type: string
          x-stoplight:
            id: blcuikrxrhqth
          description: CVE number.
        artifacts:
          type: integer
          x-stoplight:
            id: s5hdmaqt4f664
          description: Total distinct artifacts included in the tracker.
          format: int64
        severity:
          $ref: '#/components/schemas/VulnerabilitySeverity'
        deployments_count:
          $ref: '#/components/schemas/DeploymentsCount'
        status:
          $ref: '#/components/schemas/RemediationStatus'
        contact:
          $ref: '#/components/schemas/ContactInfo'
        target_date:
          type: string
          x-stoplight:
            id: o8s7v1phqs963
          description: Target End Date set by the user.
        schedule_status:
          type: string
          x-stoplight:
            id: fhb8ew9zkzl8n
          description: |
            This indicates how we are going with schedule of target date.
        remediation_condition:
          $ref: '#/components/schemas/RemediationCondition'
        closed_by:
          type: string
          x-stoplight:
            id: xwcbadxo27tdo
          description: |
            If tracker was closed manually , name of the person who closed it
        created_by:
          type: string
          x-stoplight:
            id: fay5tmt3blo2g
          description: Name of the person who created the tracker.
        created_at:
          type: integer
          format: int64
          x-stoplight:
            id: e5v40417cnl5a
          description: Time when tracker was created.
      required:
        - id
        - component
        - artifacts
        - severity
        - deployments_count
        - status
        - schedule_status
        - remediation_condition
        - created_at
        - created_by
    DeploymentsCount:
      title: DeploymentsCount
      x-stoplight:
        id: mnpaggac1u7q1
      type: object
      properties:
        pending_prod_count:
          type: integer
          description: Pending Prod Deployments to remediate.
          format: int64
          nullable: true
        pending_non_prod_count:
          type: integer
          description: Pending Non Prod Deployments to remediate.
          format: int64
          nullable: true
        new_pending_count:
          type: integer
          description: New Pending Deployments.
          format: int64
          nullable: true
        patched_prod_count:
          type: integer
          description: Patched Prod Deployments.
          format: int64
          nullable: true
        patched_non_prod_count:
          type: integer
          description: Patched Non Prod Deployments.
          format: int64
          nullable: true
        new_patched_count:
          type: integer
          description: New Patched Deployments.
          format: int64
          nullable: true
    NameOperator:
      title: NameOperator
      x-stoplight:
        id: z7xam58090ncp
      enum:
        - Equals
        - StartsWith
        - Contains
    CreateTicketRequest:
      type: object
      x-examples:
        Example 1:
          custom_fields:
            custom_field_1:
              id: '12345'
            custom_field_2:
              - value: value1
              - value: value2
          description: This is the very long ticket description...
          exists: false
          external_id: ABC-1234
          identifiers:
            id_name:
              - value1
              - value2
              - value3
          issue_type: Bug
          priority: High
          project_key: ABC
          title: A new ticket
      properties:
        custom_fields:
          type: object
        description:
          type: string
        exists:
          type: boolean
        external_id:
          type: string
        identifiers:
          type: object
        issue_type:
          type: string
        priority:
          type: string
        project_key:
          type: string
        title:
          type: string
        artifact_id:
          type: string
          x-stoplight:
            id: ab59cnwosnqtj
      x-stoplight:
        id: xmrbbzi8s77gb
    RemediationArtifactDetailsResponse:
      title: RemediationArtifactDetailsResponse
      x-stoplight:
        id: j1n29lhfn6ofq
      type: object
      properties:
        id:
          type: string
          description: Artifact Id.
        remediation_id:
          type: string
          description: Renmediation Tracker Id.
        component:
          type: string
          x-stoplight:
            id: l8olno2phx50z
          description: Component Name.
        cve:
          type: string
          x-stoplight:
            id: dsbd8qytcr0c9
          description: CVE number.
        severity:
          $ref: '#/components/schemas/VulnerabilitySeverity'
        status:
          $ref: '#/components/schemas/RemediationStatus'
        deployments_count:
          $ref: '#/components/schemas/DeploymentsCount'
        artifact_name:
          type: string
          x-stoplight:
            id: 3aagj65ohtwgq
          description: Name of the artifact.
        latest_fixed_artifact:
          type: string
          x-stoplight:
            id: 3o3bn0hao6wwe
          description: Latest Orchestrated Artifact with Fix.
        contact:
          $ref: '#/components/schemas/ContactInfo'
        build_pipeline:
          $ref: '#/components/schemas/PipelineInfo'
        latest_build_tag:
          type: string
          x-stoplight:
            id: h09vzd3khupci
        ticket:
          $ref: '#/components/schemas/TicketInfo'
      required:
        - id
        - remediation_id
        - component
        - severity
        - status
        - deployments_count
        - artifact_name
    RemediationDetailsResponse:
      title: RemediationDetailsResponse
      x-stoplight:
        id: lgm3ozxcxijzl
      type: object
      properties:
        id:
          type: string
          description: Remediation Id.
        component:
          type: string
          x-stoplight:
            id: jpqinfqcc5ao1
          description: Component Name.
        cve:
          type: string
          x-stoplight:
            id: 04w5pvfvqtaq3
          description: CVE number.
        severity:
          $ref: '#/components/schemas/VulnerabilitySeverity'
        status:
          $ref: '#/components/schemas/RemediationStatus'
        artifacts:
          type: integer
          x-stoplight:
            id: d7h8y4sw4m16x
          description: Total distinct artifacts included in the tracker.
          format: int64
          minimum: 0
        artifacts_excluded:
          type: integer
          x-stoplight:
            id: wfxtsxy6bw5he
          format: int64
          minimum: 0
          description: Total Number of Excluded Artifacts.
        new_artifacts_count:
          type: integer
          x-stoplight:
            id: 4wqt3vl7ybnci
          format: int64
          minimum: 0
          description: Total Number of New Artifacts.
        environments:
          type: integer
          x-stoplight:
            id: t2qoukfumxxl3
          description: Total environments included in the tracker.
          format: int64
          minimum: 0
        new_environments_count:
          type: integer
          x-stoplight:
            id: n6l8s9npjkb86
          format: int64
          minimum: 0
          description: Total Number of New Environments.
        remediation_condition:
          $ref: '#/components/schemas/RemediationCondition'
        deployments_count:
          $ref: '#/components/schemas/DeploymentsCount'
        vulnerability_description:
          type: string
          x-stoplight:
            id: j0vfqz5pefzq1
          description: Details of the vulnerability.
        comments:
          type: string
          x-stoplight:
            id: q6wmcgtr1z8yz
          description: Description/comments for the tracker.
        ticket:
          $ref: '#/components/schemas/TicketInfo'
        start_time_milli:
          type: integer
          x-stoplight:
            id: uje0d8kys48lk
          format: int64
          minimum: 0
        end_time_milli:
          type: integer
          x-stoplight:
            id: u4n155d0c36l6
          format: int64
          minimum: 0
          nullable: true
        contact:
          $ref: '#/components/schemas/ContactInfo'
        created_by_name:
          type: string
          x-stoplight:
            id: 5qlr2ws3u7oi9
          description: Name of the User who created the Remediation Tracker.
        created_by_email:
          type: string
          x-stoplight:
            id: 1i587hn9x44wl
          description: Email of the User who created the Remediation Tracker.
        closed_by:
          type: string
          x-stoplight:
            id: rrnb6lgm5k06n
          description: >-
            If Remediation Tracker was closed manually , name of the user who
            closed it.
        target_date:
          type: string
          x-stoplight:
            id: ej0x3hdn7g2zs
          description: End date set by the user.
      required:
        - id
        - component
        - severity
        - status
        - artifacts
        - artifacts_excluded
        - new_artifacts_count
        - environments
        - new_environments_count
        - deployments_count
        - start_time_milli
        - remediation_condition
    PipelineInfo:
      title: PipelineInfo
      x-stoplight:
        id: v9stjwvu2ulvu
      type: object
      properties:
        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
          description: Time of trigger of the deployment pipeline
          format: int64
          nullable: true
        triggered_type:
          type: string
          description: Trigger type of the deployment pipeline
    RemediationArtifactListingResponse:
      title: RemediationArtifactListingResponse
      x-stoplight:
        id: orocfqbopzjik
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: mxz6snb9d3oq6
          description: Artifact Id.
        name:
          type: string
          x-stoplight:
            id: ofik1gmhv6nsx
          description: Artifact Name.
        deployments:
          $ref: '#/components/schemas/DeploymentsCount'
        is_excluded:
          type: boolean
          x-stoplight:
            id: uc571ew7vstax
          description: Whether the artifact is excluded.
        is_new:
          type: boolean
          x-stoplight:
            id: p9diecz5s4vmb
          description: Whether the artifact is new.
        ticket:
          $ref: '#/components/schemas/TicketInfo'
      required:
        - id
        - name
        - deployments
        - is_excluded
    TicketInfo:
      title: TicketInfo
      x-stoplight:
        id: cwruxfom4rfcx
      type: object
      description: Ticket Details.
      properties:
        external_id:
          type: string
          x-stoplight:
            id: ex86pido7jo69
        status:
          type: string
          x-stoplight:
            id: gywmzyljeu184
        url:
          type: string
          x-stoplight:
            id: j45rig13j82ss
        id:
          type: string
          x-stoplight:
            id: 9tpd12on9q3xs
      required:
        - external_id
    RemediationArtifactDeploymentsListingResponse:
      title: RemediationArtifactDeploymentsListingResponse
      x-stoplight:
        id: 8ubnvb2b71yhv
      type: object
      properties:
        type:
          $ref: '#/components/schemas/EnvironmentType2'
        name:
          type: string
          x-stoplight:
            id: i1t5z87fgwylv
          description: Name of the Environment.
        identifier:
          type: string
          x-stoplight:
            id: dv7gxnaj1kpmf
          description: Identifier of the Environment.
        digest:
          type: string
          x-stoplight:
            id: 6z1v5z1z1z1z1
          description: Digest of the artifact.
        tag:
          type: string
          x-stoplight:
            id: 66ruc3h15zi4y
          description: Tag deployed in the environment.
        status:
          $ref: '#/components/schemas/RemediationStatus'
        deployment_pipeline:
          $ref: '#/components/schemas/PipelineInfo'
        component_version:
          type: string
          x-stoplight:
            id: v39a9bzbs6ha5
          description: The version of the impacted components used in this artifact.
      required:
        - type
        - name
        - identifier
        - tag
        - status
        - deployment_pipeline
        - component_version
    RemediationTrackerUpdateRequestBody:
      title: RemediationTrackerUpdateRequestBody
      x-stoplight:
        id: f75veqdadq005
      type: object
      properties:
        contact:
          $ref: '#/components/schemas/ContactInfo'
        comments:
          type: string
          x-stoplight:
            id: 4bxs4lw4t4kgb
          description: Description/comments for the tracker.
        target_end_date:
          type: string
          x-stoplight:
            id: 7q27i501xeec6
          format: date
          description: Target End Date in UTC.
        vulnerability_description:
          type: string
          x-stoplight:
            id: asy2wup0wipt9
          description: Details of the vulnerability.
        severity:
          $ref: '#/components/schemas/VulnerabilitySeverity'
      required:
        - contact
        - comments
        - target_end_date
        - vulnerability_description
        - severity
    RemediationTrackerUpdateResponseBody:
      title: RemediationTrackerUpdateResponseBody
      x-stoplight:
        id: t14atvve77l8w
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: q1bcb1t7i6eew
          description: Remediation Tracker Id.
      required:
        - id
    RemediationArtifactListingRequestBody:
      title: RemediationArtifactListingRequestBody
      x-stoplight:
        id: qu034pbirnp2u
      type: object
      properties:
        deployment_status:
          type: string
          x-stoplight:
            id: 0eodz14ae6y3f
          enum:
            - Prod
            - PreProd
        remediation_status:
          type: string
          x-stoplight:
            id: vda48wyasqwzo
          enum:
            - Done
            - In_Progress
    RemediationArtifactDeploymentsListingRequestBody:
      title: RemediationArtifactDeploymentsListingRequestBody
      x-stoplight:
        id: uhlyjg0ie3q7n
      type: object
      properties:
        env_identifier:
          type: string
          x-stoplight:
            id: wlwtwo71eqdhx
        env_type:
          $ref: '#/components/schemas/EnvironmentTypeFilter'
    ArtifactAndDeploymentsResponseBody:
      title: ArtifactAndDeploymentsResponseBody
      x-stoplight:
        id: kyxd9vg0xko63
      type: object
      properties:
        is_valid:
          type: boolean
          x-stoplight:
            id: 5hth153x3d2z0
          default: false
        message:
          type: string
          x-stoplight:
            id: uruyn057krd4w
    EnvironmentInfo:
      title: EnvironmentInfo
      x-stoplight:
        id: f673knxyn1t3b
      type: object
      properties:
        identifier:
          type: string
          x-stoplight:
            id: 6j1r342qw2q2g
          description: Identifier of the Environment.
        name:
          type: string
          x-stoplight:
            id: d1uquwd53cydg
          description: Name of the Environment.
        type:
          $ref: '#/components/schemas/EnvironmentType2'
      required:
        - identifier
        - name
        - type
    CreateTicketResponse:
      title: CreateTicketResponse
      x-stoplight:
        id: 6j8ei25vvgcmt
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: pyz5amzlbutor
          description: Ticket Identifier
      required:
        - id
    ExemptionInitiatorDTO:
      type: object
      x-stoplight:
        id: ps02pr2nesa5m
      x-examples: {}
      title: ExemptionInitiatorDTO
      properties:
        project_identifier:
          type: string
          x-stoplight:
            id: s4jyr2h417qgt
        enforcement_id:
          type: string
          x-stoplight:
            id: nwpqxpx81btr0
        artifact_id:
          type: string
          x-stoplight:
            id: gnzd8c6qusr3p
    ExemptionDurationDTO:
      type: object
      x-stoplight:
        id: gwea7nn03kd7b
      x-examples: {}
      title: ExemptionDurationDTO
      properties:
        always_exempt:
          type: boolean
          x-stoplight:
            id: 0gnxtzccq3n5d
        days:
          type: integer
    ExemptionStatusDTO:
      x-stoplight:
        id: 5jdd05223xfdn
      type: string
      enum:
        - PENDING
        - APPROVED
        - REJECTED
        - EXPIRED
      title: ExemptionStatusDTO
    ExemptionResponseDTO:
      type: object
      x-stoplight:
        id: qhlradvqdsoka
      x-examples: {}
      title: ExemptionResponseDTO
      properties:
        component_name:
          type: string
          x-stoplight:
            id: yoobm06ffppgf
        component_version:
          type: string
          x-stoplight:
            id: 92jdhofe26h2u
        version_operator:
          $ref: '#/components/schemas/Operator'
        reason:
          type: string
        exemption_duration:
          $ref: '#/components/schemas/ExemptionDurationDTO'
        exemption_status:
          $ref: '#/components/schemas/ExemptionStatusDTO'
        uuid:
          type: string
        artifact_id:
          type: string
          x-stoplight:
            id: x22p27k9urw84
        account_id:
          type: string
          x-stoplight:
            id: i54s7qtrmnt2j
        org_identifier:
          type: string
          x-stoplight:
            id: s1g762zgwnq1a
        project_identifier:
          type: string
          x-stoplight:
            id: 4haq8eju77mtp
        created_by_user_id:
          type: string
          x-stoplight:
            id: a19ykfdcx14am
        created_by_name:
          type: string
          x-stoplight:
            id: 24ht62fxl5olb
        reviewed_by_user_id:
          type: string
          x-stoplight:
            id: jsavsciecjikp
        reviewed_by_name:
          type: string
          x-stoplight:
            id: 4pr8z1usbabey
        updated_by:
          type: string
          x-stoplight:
            id: 9lxgpvwcsrmun
        review_comment:
          type: string
          x-stoplight:
            id: mwqkzg4jbz7md
        created_at:
          type: integer
          format: int64
          x-stoplight:
            id: m05xxmxxzgzkz
        updated_at:
          type: integer
          format: int64
          x-stoplight:
            id: 5zci7bmqul8xl
        valid_until:
          type: integer
          format: int64
          x-stoplight:
            id: fby36b6and04x
        reviewed_at:
          type: integer
          format: int64
          x-stoplight:
            id: 2sl9aqhubqket
        exemption_initiator:
          $ref: '#/components/schemas/ExemptionInitiatorDTO'
    ExemptionRequestDTO:
      type: object
      x-examples: {}
      properties:
        component_name:
          type: string
          x-stoplight:
            id: yc0pzdwxtjgad
        component_version:
          type: string
          x-stoplight:
            id: lly9gx9ion1xh
        version_operator:
          $ref: '#/components/schemas/Operator'
        reason:
          type: string
        exemption_duration:
          $ref: '#/components/schemas/ExemptionDurationDTO'
        exemption_initiator:
          $ref: '#/components/schemas/ExemptionInitiatorDTO'
      x-stoplight:
        id: 9jp76e9ramh63
    ExemptionReviewRequestDTO:
      type: object
      x-examples: {}
      properties:
        exemption_status:
          $ref: '#/components/schemas/ExemptionStatusDTO'
        review_comment:
          type: string
          x-stoplight:
            id: 0i96zm7yk9awf
      x-stoplight:
        id: f28re4dygdmwl
    RepositoryArtifactMetadata:
      title: RepositoryArtifactMetadata
      x-stoplight:
        id: r2eorx2z237fq
      type: object
      properties:
        branch:
          type: string
          x-stoplight:
            id: xvjq4scosgnvt
          description: Branch name of the repository being orchestrated.
        git_tag:
          type: string
          x-stoplight:
            id: rsjgkyoljktk1
          description: Git tag of the repository being orchestrated.
        commit_sha:
          type: string
          x-stoplight:
            id: 3mcf3dzcbsznt
          description: Commit ID of the repository being orchestrated.
    ContainerArtifactMetadata:
      title: ContainerArtifactMetadata
      x-stoplight:
        id: si5tcv3884wtu
      type: object
    ArtifactListingResponseV2:
      type: object
      x-stoplight:
        id: oqobxoa0w5k6d
      x-examples: {}
      properties:
        id:
          type: string
          description: Artifact ID
        name:
          type: string
          description: Artifact Name
        url:
          type: string
          description: Artifact Origin URL
        type:
          type: string
          x-stoplight:
            id: puscy5vqienvv
          description: artifact type
          enum:
            - image
            - repository
        variant:
          $ref: '#/components/schemas/ArtifactVariant'
        metadata:
          type: object
          additionalProperties: true
        components_count:
          type: integer
          description: Number of components of the artifact
        updated:
          type: string
          description: Last updated time of the artifact
        baseline:
          type: boolean
          description: Flag denoting if current artifact is baseline
        scorecard:
          type: object
          properties:
            max_score:
              type: string
              description: Maximum score of the artifact SBOM
            avg_score:
              type: string
              description: Average score of the artifact SBOM
        policy_enforcement:
          type: object
          x-stoplight:
            id: gy1y5dicgpypq
          properties:
            id:
              type: string
              x-stoplight:
                id: n4wdtm6y3ifje
              description: Enforcement Step Id for the artifact lastest enfrocement.
            allow_list_violation_count:
              type: string
              x-stoplight:
                id: 93fyhq0f48926
              description: Count of the allow list policy violations
            deny_list_violation_count:
              type: string
              x-stoplight:
                id: qkv64n8a15xb3
              description: Count of the deny list policy violations
        deployment:
          type: object
          x-stoplight:
            id: fybqbfp2x69l3
          properties:
            activity:
              type: string
              enum:
                - DEPLOYED
                - GENERATED
              x-stoplight:
                id: 9z1oefzulp1zq
              description: Latest deployment activity of the artifact
            prod_env_count:
              type: integer
              x-stoplight:
                id: wux3zmbktqqs0
              description: >-
                Count of production environment this artifact is currently
                deployed.
            non_prod_env_count:
              type: integer
              x-stoplight:
                id: vqey9t8s156s4
              description: >-
                Count of pre-production environment this artifact is currently
                deployed.
        orchestration:
          type: object
          x-stoplight:
            id: hchdgdaay5ros
          properties:
            id:
              type: string
              x-stoplight:
                id: hwqaymud6ahig
              description: Orchestration step execution ID for the aritfact.
            pipeline_id:
              type: string
              x-stoplight:
                id: t6jtif1llpafh
              description: Build pipeline Id used for orchestration of the artifact
            pipeline_execution_id:
              type: string
              x-stoplight:
                id: ojs3ry10yq7em
              description: >-
                Build pipeline execution Id used for orchestration of the
                artifact
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
    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.
    ComponentDTO:
      title: Component
      x-stoplight:
        id: xi0g0zfek2kev
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: 56tepandvuzlx
        project:
          type: string
          x-stoplight:
            id: vaesi5rigs7nx
        org:
          type: string
          x-stoplight:
            id: f6m867s10lp7k
    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: '#/components/schemas/PipelineDetails'
    SSCASummary:
      title: SSCASummary
      x-stoplight:
        id: nxdskdfanqumz
      type: object
      description: Summary Information for SSCA Tab
      properties:
        artifacts:
          type: object
          x-stoplight:
            id: 91l0sh6kha2zv
          properties:
            containers:
              type: integer
              x-stoplight:
                id: oxd1zvncj6awh
            repositories:
              type: integer
              x-stoplight:
                id: 6xxw06b4hfsld
        drifts:
          type: object
          x-stoplight:
            id: hw1zb5ejf1w1i
          properties:
            components:
              type: integer
              x-stoplight:
                id: 3iy0vc2a04hxp
            licenses:
              type: integer
              x-stoplight:
                id: hhnol4fe7ernr
        policy_violations:
          type: object
          x-stoplight:
            id: ei3f7t0ecocop
          properties:
            allow_list:
              type: integer
              x-stoplight:
                id: wwlnvezrq03nf
            deny_list:
              type: integer
              x-stoplight:
                id: h6yvi446m6gyk
        slsa_verifications:
          type: object
          x-stoplight:
            id: 5vvs0i80gklzr
          properties:
            successes:
              type: integer
              x-stoplight:
                id: 9lr6ydad1ymyc
            failures:
              type: integer
              x-stoplight:
                id: u3it6zwcsf9yk
        verification:
          type: object
          x-stoplight:
            id: po2bjbscxrm9e
          properties:
            success_count:
              type: integer
              x-stoplight:
                id: z5xbbgwxo87vu
            failure_count:
              type: integer
              x-stoplight:
                id: a68y3zknjhgm8
    ArtifactListingPipelineResponse:
      title: ArtifactListingPipelineResponse
      x-stoplight:
        id: aeh4bb2etl1zj
      type: object
      properties:
        org_id:
          type: string
          x-stoplight:
            id: otu437vy8o9m4
        project_id:
          type: string
          x-stoplight:
            id: iqi70origyrml
        pipeline_id:
          type: string
          x-stoplight:
            id: j4q0jvsik5xfl
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: 8xlxngqfeu81e
        artifact:
          $ref: '#/components/schemas/ArtifactModelPipeline'
        orchestration:
          $ref: '#/components/schemas/OrchestrationModelPipeline'
        enforcement:
          $ref: '#/components/schemas/EnforcementModelPipeline'
        slsa:
          $ref: '#/components/schemas/SlsaModelPipeline'
        verification:
          $ref: '#/components/schemas/IntegrityVerificationModelPipeline'
    ArtifactModelPipeline:
      title: ArtifactModelPipeline
      x-stoplight:
        id: 61ctnoe7t4ss3
      type: object
      properties:
        id:
          type: string
          x-stoplight:
            id: yefth9vlf9svq
        type:
          type: string
          x-stoplight:
            id: tv59jsryuwpbn
          enum:
            - image
            - repository
        name:
          type: string
          x-stoplight:
            id: 1pqx5aj5zkzlf
        registry_url:
          type: string
          x-stoplight:
            id: 2d0pchss1tcw3
        variant:
          $ref: '#/components/schemas/ArtifactVariant'
        tag:
          type: string
          x-stoplight:
            id: 69micl0vn4rn8
        digest:
          type: string
          x-stoplight:
            id: 6z1z7v5v1zv5z
        metadata:
          type: object
          additionalProperties: true
          x-stoplight:
            id: bcmiu856m2sf8
        source_id:
          type: string
          x-stoplight:
            id: fstrqsl3noow2
    OrchestrationModelPipeline:
      title: OrchestrationModePipeline
      x-stoplight:
        id: 61x767p8t90t2
      type: object
      properties:
        scorecard:
          type: object
          x-stoplight:
            id: ci34722bpbodk
          properties:
            avg_score:
              type: string
              x-stoplight:
                id: ewa6ci4p65agj
            max_score:
              type: string
              x-stoplight:
                id: 3nj5re44p2k22
        orchestration_id:
          type: string
          x-stoplight:
            id: u1o02n7nepeuy
        stage_identifier:
          type: string
          x-stoplight:
            id: vplf4ny64cwtg
        stage_execution_identifier:
          type: string
          x-stoplight:
            id: o99jmwgk54yzx
        stage_name:
          type: string
          x-stoplight:
            id: 9k096jp7uh1tj
        step_identifier:
          type: string
          x-stoplight:
            id: 11j0xvak1mwzi
        step_name:
          type: string
          x-stoplight:
            id: vcpzjyxv1p82p
        step_execution_identifier:
          type: string
          x-stoplight:
            id: x63abctu3ltn5
        drift:
          $ref: '#/components/schemas/ArtifactSbomDriftResponse'
    EnforcementModelPipeline:
      title: EnforcementModelPipeline
      x-stoplight:
        id: ut3o0hygwe7ix
      type: object
      properties:
        enforcement_id:
          type: string
          x-stoplight:
            id: b2hgfv4mj8241
        stage_identifier:
          type: string
          x-stoplight:
            id: oz5ws0a02laui
        stage_execution_identifier:
          type: string
          x-stoplight:
            id: whewc03m3qozi
        stage_name:
          type: string
          x-stoplight:
            id: ikgtltwwdg0rw
        step_identifier:
          type: string
          x-stoplight:
            id: orepr0579uyzj
        step_name:
          type: string
          x-stoplight:
            id: kbee31r1eoczc
        step_execution_identifier:
          type: string
          x-stoplight:
            id: yjzg8nk78u4iu
        violations:
          type: object
          x-stoplight:
            id: rvy4v3poiwxzh
          properties:
            allow_list_violation_count:
              type: integer
              x-stoplight:
                id: t7h07x2uykclv
            deny_list_violation_count:
              type: integer
              x-stoplight:
                id: x443igjdrgko3
    LicenseUsageResponse:
      title: LicenseUsageResponse
      x-stoplight:
        id: c36braq0f3evu
      type: object
      properties:
        usage_data:
          type: object
          x-stoplight:
            id: bot9tmrtxm152
          required:
            - count
            - display_name
          properties:
            count:
              type: integer
              x-stoplight:
                id: pe3bi8gacqu49
              format: int64
            display_name:
              type: string
              x-stoplight:
                id: 4eiel8gv2jxyo
            references:
              type: object
              x-stoplight:
                id: jmhjop6pvx67w
              properties:
                name:
                  type: string
                  x-stoplight:
                    id: ckuo9wyjqg2xv
                identifier:
                  type: string
                  x-stoplight:
                    id: 65762ek67pl3z
                project:
                  type: string
                  x-stoplight:
                    id: 2vk0svvxj975y
                org:
                  type: string
                  x-stoplight:
                    id: t1ydg69ht7ii9
                account:
                  type: string
                  x-stoplight:
                    id: 60ibjwoyuorkb
                count:
                  type: string
                  x-stoplight:
                    id: lbo24xvew0we9
        active_developers:
          type: object
          x-stoplight:
            id: hxum0rydu8tl1
          properties:
            count:
              type: integer
              format: int64
            display_name:
              type: string
              x-stoplight:
                id: 22bipiwuhcqck
    SlsaModelPipeline:
      title: SlsaModelPipeline
      x-stoplight:
        id: 1z6mnbbfer07f
      type: object
      properties:
        provenance:
          type: object
          x-stoplight:
            id: 29j0fyhin0nuj
          properties:
            stage_identifier:
              type: string
              x-stoplight:
                id: rqs5xr64xzbxo
            stage_name:
              type: string
              x-stoplight:
                id: 6ybgbfkjwuufx
            step_identifier:
              type: string
              x-stoplight:
                id: arvcco3se0mxz
            stage_execution_identifier:
              type: string
              x-stoplight:
                id: yz44a4c1khoxk
            step_execution_identifier:
              type: string
              x-stoplight:
                id: gbr8qzstojw7k
            step_name:
              type: string
              x-stoplight:
                id: pnrz6vu99auuc
        verification:
          type: object
          x-stoplight:
            id: ikcpg6cglf5wi
          properties:
            stage_identifier:
              type: string
              x-stoplight:
                id: 4az31tpd3pkqi
            stage_name:
              type: string
              x-stoplight:
                id: bp57ajwvnyaxp
            step_identifier:
              type: string
              x-stoplight:
                id: djmajul37bqb9
            stage_execution_identifier:
              type: string
              x-stoplight:
                id: 8u6s0pzqjd3vf
            step_execution_identifier:
              type: string
              x-stoplight:
                id: yhftfabswfwb2
            step_name:
              type: string
              x-stoplight:
                id: lmhd1iss860xs
            verification_details:
              type: object
              x-stoplight:
                id: qvol899j1bvrm
              properties:
                verification_status:
                  type: string
                  x-stoplight:
                    id: 2vckjnzizsiaf
                  enum:
                    - passed
                    - failed
                policy_enforcement_status:
                  type: string
                  x-stoplight:
                    id: mjtplnggn4n6m
    ArtifactListingPipelineRequestBody:
      title: ArtifactListingPipelineRequestBody
      x-stoplight:
        id: d4ha2g16j957p
      type: object
      properties:
        search_term:
          type: string
          x-stoplight:
            id: dlr5jr8z718u8
          description: Search Artifact By name
        artifact_type:
          type: string
          x-stoplight:
            id: w4rkgep4sfhkl
          description: Filter Artifacts By type
          enum:
            - image
            - repository
    SLSAVerificationRequestBody:
      title: SLSAVerificationRequestBody
      x-stoplight:
        id: 8t7dukf8hgxhy
      type: object
      properties:
        org:
          type: string
          x-stoplight:
            id: f9j8whl2ap87r
        project:
          type: string
          x-stoplight:
            id: 7xexwfd9yzhob
        pipeline:
          type: string
          x-stoplight:
            id: qvmd24rnyqbhr
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: ufenkf0qyywbl
        stage_identifier:
          type: string
          x-stoplight:
            id: 6g9gqvcnpp9n3
        stage_name:
          type: string
          x-stoplight:
            id: 2ztsfqskl6q25
        stage_type:
          type: string
          x-stoplight:
            id: wf9a2j94b5qrk
        step_identifier:
          type: string
          x-stoplight:
            id: 3efo8vqhonnn0
        stage_execution_identifier:
          type: string
          x-stoplight:
            id: 49tn13u10i0bc
        step_execution_identifier:
          type: string
          x-stoplight:
            id: rxkn3zxxzsfb0
        step_name:
          type: string
          x-stoplight:
            id: 1v0an7wa3axp3
        artifact:
          $ref: '#/components/schemas/ArtifactModelPipeline'
        verification_status:
          type: string
          x-stoplight:
            id: qqz5h836cnx7p
          enum:
            - passed
            - failed
        provenance:
          type: string
          x-stoplight:
            id: 0hfc9st05b64o
    SLSAVerificationRequestBodyV2:
      title: SLSAVerificationRequestBody
      x-stoplight:
        id: 8t7dukf8hgxhy
      type: object
      required:
        - provenance_data
      properties:
        artifact:
          $ref: '#/components/schemas/ArtifactModelPipeline'
        verification_status:
          type: string
          x-stoplight:
            id: qqz5h836cnx7p
          enum:
            - passed
            - failed
        provenance_data:
          type: string
          x-stoplight:
            id: 0hfc9st05b64o
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
    ProvenanceRequestBody:
      title: ProvenanceRequestBody
      x-stoplight:
        id: 7fk0tu5tr18ey
      type: object
      properties:
        org:
          type: string
          x-stoplight:
            id: u3gqutc6vlo6v
        project:
          type: string
          x-stoplight:
            id: 2z51gqtxdq39v
        pipeline:
          type: string
          x-stoplight:
            id: pgg4s4tnf1plj
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: fblunix2vocn2
        stage_identifier:
          type: string
          x-stoplight:
            id: flprgshzh6e67
        stage_name:
          type: string
          x-stoplight:
            id: hju8gww2fjn05
        stage_type:
          type: string
          x-stoplight:
            id: dr7zlbpy69e90
        step_identifier:
          type: string
          x-stoplight:
            id: 6c9o2p3443die
        step_name:
          type: string
          x-stoplight:
            id: otzukpaffwzds
        stage_execution_identifier:
          type: string
          x-stoplight:
            id: ge6l6xduq9gas
        step_execution_identifier:
          type: string
          x-stoplight:
            id: 8z5ck5yv128zc
        artifact:
          type: array
          items:
            $ref: '#/components/schemas/ArtifactModelPipeline'
        provenance:
          type: string
          x-stoplight:
            id: dhufvf7s3aoh6
    ProvenanceRequestBodyV2:
      title: ProvenanceRequestBody
      x-stoplight:
        id: 7fk0tu5tr18ey
      type: object
      required:
        - provenance_data
      properties:
        artifact:
          type: array
          items:
            $ref: '#/components/schemas/ArtifactModelPipeline'
        provenance_data:
          type: string
          x-stoplight:
            id: dhufvf7s3aoh6
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
    ProvenanceResponseBody:
      title: ProvenanceResponseBody
      x-stoplight:
        id: 4ha9dk07nj6sy
      type: object
      properties:
        provenance:
          type: string
          x-stoplight:
            id: z7ob40xv3x4gx
    PolicyViolationRequestBody:
      title: PolicyViolationRequestBody
      x-stoplight:
        id: jfyn73ecqkty5
      type: object
      properties:
        violations:
          type: integer
          x-stoplight:
            id: fh5lq1tv0m3ng
        status:
          type: string
          x-stoplight:
            id: clpjrz44aod7m
    CategoryScorecardCheck:
      title: CategoryScorecardCheck
      x-stoplight:
        id: plkv9ik7nxsj7
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: omu3b0fjthf9l
        description:
          type: string
          x-stoplight:
            id: ujytl7crx3jfj
        score:
          type: string
          x-stoplight:
            id: hyd61bdewsrqp
        max_score:
          type: string
          x-stoplight:
            id: xjw7p46j8yo1t
        is_enabled:
          type: string
          x-stoplight:
            id: b66zw233nwij6
    SbomMetadataV2:
      title: SbomMetadataV2
      x-stoplight:
        id: 4na922okidtvc
      type: object
      required:
        - name
        - format
        - tool_name
        - tool_version
      properties:
        name:
          type: string
          x-stoplight:
            id: 0160bbgwts3sz
        format:
          type: string
          minLength: 3
          example: spdx-json
        tool_name:
          type: string
          minLength: 3
          example: synk
          x-stoplight:
            id: ic4qf7a3stbw7
        tool_version:
          type: string
          x-stoplight:
            id: 1mfkoo8p7i071
        created:
          type: number
          x-stoplight:
            id: ldh7rwijoj89o
        sbom_version:
          type: string
          x-stoplight:
            id: feovw69zekn4x
        tool_vendor:
          type: string
          x-stoplight:
            id: cbdqudq2dotry
    ExecutionContext:
      title: ExecutionContext
      x-stoplight:
        id: 7o6l08qrn9k92
      type: object
      required:
        - pipeline_id
        - stage_id
        - sequence_id
        - pipeline_execution_id
        - step_id
        - step_execution_id
        - stage_execution_id
      properties:
        pipeline_id:
          type: string
          x-stoplight:
            id: 2ggh8qbfitm2h
        stage_id:
          type: string
          x-stoplight:
            id: nr3flmafic61d
        sequence_id:
          type: string
          x-stoplight:
            id: eahgdg9y3657d
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: 9pmcytlzquu73
        step_id:
          type: string
          example: Orchestrate
          x-stoplight:
            id: v1lrfnusqdk4s
        build_url:
          type: string
          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
          example: betatest1
        step_name:
          type: string
          x-stoplight:
            id: agubor4ho34r5
        stage_name:
          type: string
          x-stoplight:
            id: r1ir58caw421i
        stage_execution_id:
          type: string
          x-stoplight:
            id: u8z5q12sxlz7a
        stage_type:
          type: string
          x-stoplight:
            id: h8ulrl6swxcbf
          description: |
            Stage type of the step
    SaveOrchestrationRequest:
      title: SaveOrchestrationRequest
      x-stoplight:
        id: 5tb5gd8m5ehto
      type: object
      required:
        - artifact
        - sbom_metadata
        - attestation
      properties:
        components:
          type: array
          x-stoplight:
            id: x8wtamg34sbym
          items:
            $ref: '#/components/schemas/SbomComponentRequestDTO'
        artifact:
          $ref: '#/components/schemas/Artifact1'
        sbom_metadata:
          $ref: '#/components/schemas/SbomMetadataV2'
        attestation:
          $ref: '#/components/schemas/Attestation'
        execution_context:
          $ref: '#/components/schemas/ExecutionContext'
    SaveOrchestrationRequestV2:
      title: SaveOrchestrationRequest
      x-stoplight:
        id: 5tb5gd8m5ehto
      type: object
      required:
        - artifact
        - sbom_metadata
        - attestation
      properties:
        components:
          type: array
          x-stoplight:
            id: x8wtamg34sbym
          items:
            $ref: '#/components/schemas/SbomComponentRequestDTO'
        artifact:
          $ref: '#/components/schemas/Artifact1'
        sbom_metadata:
          $ref: '#/components/schemas/SbomMetadataV2'
        attestation:
          $ref: '#/components/schemas/Attestation'
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
    SaveOrchestrationResponseBody:
      title: SaveOrchestrationResponseBody
      x-stoplight:
        id: ud8owob6dy3nb
      type: object
      required:
        - artifact_id
      properties:
        artifact_id:
          type: string
          x-stoplight:
            id: wrz7jes211t3j
    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
    ArtifactComponentsRequestBody:
      title: ArtifactComponentsRequestBody
      x-stoplight:
        id: 45pb19tb7yncu
      type: object
      required:
        - artifact
      properties:
        artifact:
          $ref: '#/components/schemas/ContainerArtifactFilter'
    ArtifactComponentsResponseBody:
      title: ArtifactComponentsResponseBody
      x-stoplight:
        id: bc82hi7wvhio9
      type: object
      properties:
        artifact:
          $ref: '#/components/schemas/Artifact1'
        org_id:
          type: string
          x-stoplight:
            id: uah149juuwja2
        project_id:
          type: string
          x-stoplight:
            id: 3m8u5nranuszo
        components:
          type: array
          x-stoplight:
            id: w29wzy3d6tr5f
          items:
            $ref: '#/components/schemas/ComponentSummary'
    ContainerArtifactFilter:
      title: ContainerArtifactFilter
      x-stoplight:
        id: r5j97yhalgdbh
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: 26o2s59783s4x
        digest:
          type: string
          x-stoplight:
            id: 0oo6468e7gqkk
        url:
          type: string
          x-stoplight:
            id: iei6g8hzcf59y
        tag:
          type: string
          x-stoplight:
            id: b638u1kytv431
    LayerType:
      title: LayerType
      enum:
        - BASE
        - APP
        - DISTRO
      x-stoplight:
        id: 151c5cf8ekave
    Integration:
      title: Integration
      x-stoplight:
        id: 6axbafhrofhlj
      type: object
      properties:
        connector_id:
          type: string
          x-stoplight:
            id: eo22hombv1onr
        type:
          x-stoplight:
            id: cdadkkovsokz0
          type: string
          enum:
            - GITHUB
            - HARNESS
        status:
          x-stoplight:
            id: agclruavjfdgd
          type: string
          enum:
            - ACTIVE
            - INACTIVE
        last_scan_at:
          type: integer
          format: int64
          x-stoplight:
            id: xq0ekqwxfs0h2
        org:
          type: string
          x-stoplight:
            id: gp06vsh5ipdb7
        id:
          type: string
          x-stoplight:
            id: v881x9gudjrn9
    UpdateIntegration:
      description: Example response
      type: object
      properties:
        all_repos_configured:
          type: boolean
          x-stoplight:
            id: mzqfyvpcwazsh
        missing_repos:
          type: object
          x-stoplight:
            id: ojbz7bwfxr7nc
          properties:
            count:
              type: integer
              x-stoplight:
                id: ig8gb6hujl1ao
            names:
              type: array
              x-stoplight:
                id: bkwtvt92gi2mp
              items:
                type: string
                x-stoplight:
                  id: p58wnzr4nvs0a
            reason:
              type: string
              x-stoplight:
                id: s8khufnak4py8
      x-examples:
        Example 1:
          integration_id: alksdfjals98-23malsdf
          all_repos_configured: false
          missing_repos:
            count: 2
            names:
              - repo1
              - repo2
            reason: Repo not found
    CreateIntegrationRequest:
      title: CreateIntegrationRequest
      x-stoplight:
        id: eny9m50k3l3m7
      type: object
      properties:
        installation_id:
          type: string
          x-stoplight:
            id: gd9u12jql4ynt
        connector_id:
          type: string
        type:
          $ref: '#/components/schemas/IntegrationType'
    Error3:
      title: Response ErrorDTO
      type: object
      properties:
        status:
          type: integer
        code:
          type: string
        message:
          type: string
      required:
        - code
        - message
    RepoDetailsDTO:
      title: RepoDetailsDTO
      x-stoplight:
        id: eihp15s8nv92s
      type: object
      required:
        - name
      properties:
        visibility:
          x-stoplight:
            id: ez0edh2q63cx2
          type: string
          enum:
            - PUBLIC
            - PRIVATE
            - INTERNAL
        name:
          type: string
          x-stoplight:
            id: nxbdl5uhz9o08
        url:
          type: string
          x-stoplight:
            id: 7d09rjt1h1dgf
        owner:
          type: string
          x-stoplight:
            id: x5vboqzmz2d6e
        branch:
          type: string
          x-stoplight:
            id: oi7kymx5agh5l
        id:
          type: string
          x-stoplight:
            id: 0rxqrs8wzvqk7
        size:
          type: string
          x-stoplight:
            id: 0rxqrs8wfvqk7
    IntegrationType:
      title: IntegrationType
      x-stoplight:
        id: esn5ncpsf2q8l
      enum:
        - GITHUB
        - HARNESS
    ComplianceCheck:
      type: object
      x-examples:
        Example 1:
          can_execute: true
          compliance_id: 1.2.1
          category: Source Code
          category_id: '1'
          sub_category: Repository Management
          sub_category_id: '1.2'
          title: Ensure all public repositories contain a SECURITY.md file
          severity: LOW
          type: SCM
          entity: REPOSITORY
          description: >-
            SECURITY.md file is a security policy file, which gives people
            instructions when they are reporting security vulnerabilities in a
            project. When someone creates an issue in that project, a link to
            the SECURITY.md file will be shown.
          remediation: >-
            For each repository in use, create a SECURITY.md file and save it in
            the documents or root directory of the repository.
          integrations:
            - GITHUB
          standards:
            - CIS
          tags:
            - CIS-1.2.1
          url: >-
            https://avd.aquasec.com/compliance/softwaresupplychain/cis-1.0/cis-1.0-sourcecode/1.2
          scan_type: REPOSITORY
      description: Represents Single SSCA Compliance Check
      required:
        - compliance_id
        - category
        - category_id
        - title
        - severity
        - type
        - entity
        - description
        - standards
        - sub_category
        - sub_category_id
        - can_execute
        - scan_type
      properties:
        compliance_id:
          type: string
          x-stoplight:
            id: ak9y7kwry6e2o
        category:
          type: string
          x-stoplight:
            id: zvq34yh1ak6nz
        category_id:
          type: string
          x-stoplight:
            id: v0fnkw247n211
        title:
          type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        type:
          $ref: '#/components/schemas/ComplianceCheckType'
        entity:
          $ref: '#/components/schemas/ComplianceCheckEntityType'
        description:
          type: string
        remediation:
          type: string
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        tags:
          type: array
          items:
            type: string
            x-stoplight:
              id: kd1ktfq6vjcvf
        url:
          type: string
          x-stoplight:
            id: 0q36p62mq8bur
        sub_category:
          type: string
          x-stoplight:
            id: 2iczkwuwdnahe
        sub_category_id:
          type: string
          x-stoplight:
            id: hoh6mm0iogk3u
        integrations:
          type: array
          x-stoplight:
            id: 8fb60msdrzd09
          items:
            type: string
        can_execute:
          type: boolean
          x-stoplight:
            id: q0qq16vpi1pf6
        scan_type:
          $ref: '#/components/schemas/ComplianceScanType'
      x-stoplight:
        id: vlfta3sppng1w
    ComplianceCheckType:
      title: ComplianceCheckType
      type: string
      x-stoplight:
        id: 172pz2p0c2bc1
      enum:
        - SCM
        - ARTIFACT
        - BUILD
        - DEPENDENCIES
      description: Represents Type of Compliance Check
    ComplianceFilter:
      title: ComplianceFilter
      x-stoplight:
        id: 2s5vjjncxduj6
      type: object
      properties:
        standards:
          x-stoplight:
            id: 93rw59dvxegw7
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        type:
          $ref: '#/components/schemas/ComplianceCheckType'
        entity:
          $ref: '#/components/schemas/ComplianceCheckEntityType'
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        search_term:
          type: string
          x-stoplight:
            id: l10xdz7ssp9vn
        integrations_filter:
          type: array
          x-stoplight:
            id: 9vnhu1ikeqtxh
          items:
            $ref: '#/components/schemas/ComplianceStandardsFilterEntity'
    ComplianceCheckEntityType:
      title: ComplianceCheckEntityType
      type: string
      x-stoplight:
        id: c9u1ph0w9r2pc
      enum:
        - REPOSITORY
        - ORGANIZATION
        - BRANCH
        - PACKAGEREGISTRY
        - PIPELINE
        - DEPENDENCIES
        - All
      description: Represents entity type on which compliance check is applicable
    ComplianceStandardType:
      title: ComplianceStandardType
      type: string
      x-stoplight:
        id: hqwyia5x65e2x
      enum:
        - CIS
        - OWASP
    ArtifactSourcesListingResponse:
      title: ArtifactSourcesListingResponse
      x-stoplight:
        id: 0ledarfaonfm8
      type: object
      properties:
        source_id:
          type: string
          x-stoplight:
            id: uyispgbipmns3
          description: Identifier of the Artifact Source
        url:
          type: string
          x-stoplight:
            id: 4683hqfn3uwk4
          description: Artifact Registry url
        name:
          type: string
          x-stoplight:
            id: l0ig1j04d1icc
          description: Artifact name
        count:
          type: integer
          x-stoplight:
            id: b1z2ixivcm5kv
          description: Count of artifacts with the given url and name.
        deployments:
          $ref: '#/components/schemas/Deployments'
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
    ArtifactV2ListingResponse:
      type: object
      x-stoplight:
        id: 963kgsf6l6o5x
      x-examples: {}
      title: ArtifactV2ListingResponse
      properties:
        id:
          type: string
          description: Artifact ID
        digest:
          type: string
          x-stoplight:
            id: 05r9msnbxlpwq
          description: Digest of the Artifact
        name:
          type: string
          description: Artifact Name
        tags:
          type: array
          x-stoplight:
            id: 6qeg5nzw8an2j
          items:
            x-stoplight:
              id: fnvzg8zbc8iun
            type: string
        url:
          type: string
          description: Artifact Origin URL
        metadata:
          type: object
        components_count:
          type: integer
          description: Number of components of the artifact
        updated:
          type: string
          description: Last updated time of the artifact
        scorecard:
          type: object
          properties:
            max_score:
              type: string
              description: Maximum score of the artifact SBOM
            avg_score:
              type: string
              description: Average score of the artifact SBOM
        policy_enforcement:
          type: object
          x-stoplight:
            id: gy1y5dicgpypq
          properties:
            id:
              type: string
              x-stoplight:
                id: n4wdtm6y3ifje
              description: Enforcement Step Id for the artifact lastest enfrocement.
            allow_list_violation_count:
              type: string
              x-stoplight:
                id: 93fyhq0f48926
              description: Count of the allow list policy violations
            deny_list_violation_count:
              type: string
              x-stoplight:
                id: qkv64n8a15xb3
              description: Count of the deny list policy violations
        deployment:
          type: object
          x-stoplight:
            id: fybqbfp2x69l3
          properties:
            prod_env_count:
              type: integer
              x-stoplight:
                id: wux3zmbktqqs0
              description: >-
                Count of production environment this artifact is currently
                deployed.
            non_prod_env_count:
              type: integer
              x-stoplight:
                id: vqey9t8s156s4
              description: >-
                Count of pre-production environment this artifact is currently
                deployed.
        orchestration:
          type: object
          x-stoplight:
            id: hchdgdaay5ros
          properties:
            id:
              type: string
              x-stoplight:
                id: hwqaymud6ahig
              description: Orchestration step execution ID for the aritfact.
            pipeline_id:
              type: string
              x-stoplight:
                id: t6jtif1llpafh
              description: Build pipeline Id used for orchestration of the artifact
            pipeline_execution_id:
              type: string
              x-stoplight:
                id: ojs3ry10yq7em
              description: >-
                Build pipeline execution Id used for orchestration of the
                artifact
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
        signing:
          $ref: '#/components/schemas/IntegrityVerification'
    ConfigureReposRequest:
      title: ConfigureReposRequest
      x-stoplight:
        id: uyhoz22jjl5wa
      type: object
      properties:
        include_all_repos:
          type: boolean
          x-stoplight:
            id: xymwue0lwsv5i
          default: false
        repositories:
          type: array
          x-stoplight:
            id: hntwo5gylga5s
          items:
            $ref: '#/components/schemas/RepoDetailsDTO'
      description: ''
    BaselineV2RequestBody:
      title: BaselineV2RequestBody
      x-stoplight:
        id: y60iad0s15yud
      type: object
      properties:
        artifact_id:
          type: string
          x-stoplight:
            id: b0k4daa1bufjy
          description: Artifact Id of artifact to be set as baseline
    ComplianceResult:
      type: object
      x-examples: {}
      required:
        - compliance_id
        - compliance_val
        - category
        - category_id
        - standards
        - severity
        - reason
        - status
        - remediation
        - entity
        - sub_category
        - sub_category_id
      properties:
        compliance_id:
          type: string
          x-stoplight:
            id: l9pks9athcp51
        compliance_val:
          type: integer
          x-stoplight:
            id: u21ksorb3iewy
          example: 110
        title:
          type: string
        category:
          type: string
        category_id:
          type: string
          x-stoplight:
            id: kg7ooi3esk292
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        description:
          type: string
        tags:
          type: array
          items:
            type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        reason:
          type: string
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        remediation:
          type: string
        url:
          type: string
        entity:
          $ref: '#/components/schemas/ComplianceCheckEntityType'
        sub_category:
          type: string
          x-stoplight:
            id: t6uyz63sy5k68
        sub_category_id:
          type: string
          x-stoplight:
            id: gz47g56itzdmu
        occurrences:
          type: array
          x-stoplight:
            id: zgqjsm3l2x3xr
          items:
            $ref: '#/components/schemas/ComplianceOccurrenceDTO'
      x-stoplight:
        id: sxoz6cpmag92w
    ComplianceResultFilter:
      type: object
      x-examples:
        Example 1:
          standards:
            - OSWAP
          severity: High
          result: Pass/Fail/Unknown
          compliance_id: 1.1.1
      x-stoplight:
        id: vi62tlx38whfy
      properties:
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        compliance_id:
          type: string
        search_term:
          type: string
          x-stoplight:
            id: 42wz9mcka07j4
        scan_types:
          x-stoplight:
            id: kp8bgb4ba4i1q
          type: array
          items:
            $ref: '#/components/schemas/ComplianceScanType'
    ComplianceResultDTO:
      type: object
      x-examples: {}
      required:
        - compliance_id
        - scm_platform
        - title
        - category
        - category_id
        - standards
        - description
        - severity
        - reason
        - status
        - remediation
        - entity
        - type
        - sub_category
        - sub_category_id
      properties:
        repo_url:
          type: string
        compliance_id:
          type: string
        scm_platform:
          type: string
        title:
          type: string
        category:
          type: string
        category_id:
          type: string
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        description:
          type: string
        tags:
          type: array
          items:
            type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        reason:
          type: string
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        remediation:
          type: string
        url:
          type: string
        entity:
          $ref: '#/components/schemas/ComplianceCheckEntityType'
        type:
          $ref: '#/components/schemas/ComplianceCheckType'
        sub_category:
          type: string
          x-stoplight:
            id: n601b1is8kj1o
        sub_category_id:
          type: string
          x-stoplight:
            id: 9a1i8xv2h02g2
      x-stoplight:
        id: d289c0pet70he
    ListIntegrationReposResponse:
      title: ListIntegrationReposResponse
      x-stoplight:
        id: jx70puazwzas1
      type: object
      properties:
        include_all_repos:
          type: boolean
          x-stoplight:
            id: 0k4btbe9o81ux
        repositories:
          type: array
          x-stoplight:
            id: nnbw016e2blci
          items:
            $ref: '#/components/schemas/RepoDetailsDTO'
    CreateComplianceResult:
      type: object
      x-examples:
        Example 1:
          repo_url: string
          repo_org: string
          repo_name: string
          default_branch: string
          pipeline_execution_identifier: string
          step_execution_identifier: string
          scm_platform: string
          results:
            - compliance_id: string
              title: string
              category: string
              category_id: string
              type: SCM
              standards:
                - CIS
              description: string
              tags:
                - string
              severity: string
              reason: string
              status: string
              remediation: string
              url: string
              entity: REPOSITORY
          stage_execution_identifier: string
          pipeline: string
      x-stoplight:
        id: crbwzlzs27g42
      properties:
        repo_url:
          type: string
        repo_org:
          type: string
        repo_name:
          type: string
        default_branch:
          type: string
        pipeline_execution_identifier:
          type: string
        step_execution_identifier:
          type: string
        scm_platform:
          type: string
        results:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceResult'
        stage_execution_identifier:
          type: string
        pipeline:
          type: string
        stage_type:
          type: string
          x-stoplight:
            id: us5qtvrch01yx
    CreateComplianceResultV2:
      type: object
      x-stoplight:
        id: 16fsbiusxpwm1
      x-examples:
        Example 1:
          url: https://github.com/repo-posture/cicd-goat
          org: repo-posture
          source_platform: GITHUB
          scan_type: CICD
          name: release.yml
          full_fqn: >-
            https://github.com/repo-posture/cicd-goat/blob/master/.github/workflows/release.yml
          default_branch: master
          pipeline_execution_identifier: string
          step_execution_identifier: string
          stage_execution_identifier: string
          pipeline_identifier: string
          results:
            - compliance_id: string
              compliance_val: 123
              title: string
              category: string
              category_id: string
              type: SCM
              standards:
                - CIS
              description: string
              tags:
                - string
              severity: string
              reason: string
              status: string
              remediation: string
              url: string
              entity: REPOSITORY
              occurrences:
                - snippet: string
                  snippet_url: string
                  line_number: 123
          plugins:
            - name: actions/checkout
              version: v2
              path_from_root: string
      title: CreateComplianceResultV2
      required:
        - url
        - name
        - scan_type
        - source_platform
        - results
      properties:
        url:
          type: string
          x-stoplight:
            id: jnajrpongor60
          description: Represents Source URL.
        org:
          type: string
          x-stoplight:
            id: 4v0893lp7mtr8
          description: Represents organization.
        name:
          type: string
          x-stoplight:
            id: gsuu5ghgjctvu
          description: Name of entity for compliance results.
        full_fqn:
          type: string
          x-stoplight:
            id: urjujxeot10dk
          description: |-
            Fully qualified name of entity. 
            Uses entire URL and name to depict same.
        default_branch:
          type: string
          description: Branch for scan.
        scan_type:
          $ref: '#/components/schemas/ComplianceScanType'
        source_platform:
          x-stoplight:
            id: 9v0at3udg36rh
          type: string
          enum:
            - GITHUB
            - HARNESS
          description: |-
            Source platform enum. 
            Example: GITHUB, HARNESS
        step_execution_identifier:
          type: string
        pipeline_execution_identifier:
          type: string
        pipeline_identifier:
          type: string
          x-stoplight:
            id: jypmkd8wicqlh
        stage_execution_identifier:
          type: string
        results:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceResult'
        plugins:
          type: array
          x-stoplight:
            id: 8ti0weon56jlx
          items:
            $ref: '#/components/schemas/PluginDTO'
        stage_type:
          type: string
          x-stoplight:
            id: zyzsfpyieg5to
    ComplianceCheckSeverity:
      title: ComplianceCheckSeverity
      type: string
      x-stoplight:
        id: kpbii4pjiw1ff
      enum:
        - CRITICAL
        - HIGH
        - MEDIUM
        - LOW
    ComplianceResultStatus:
      title: ComplianceResultStatus
      type: string
      x-stoplight:
        id: g7eq9rgfjalfb
      enum:
        - PASSED
        - FAILED
        - UNKNOWN
    ArtifactV2Overview:
      type: object
      x-examples: null
      title: ArtifactV2Overview
      x-stoplight:
        id: mupnp70njtgn7
      required:
        - name
        - url
      properties:
        id:
          type: string
          description: Artifact Identifier
        name:
          type: string
          description: Artifact Name
        url:
          type: string
          description: Artifact URL
        tags:
          type: array
          items:
            type: string
        digest:
          type: string
          description: digest of the artifact
        updated:
          type: string
          description: Last Updated time of artifact
        metadata:
          type: object
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
        deployments:
          $ref: '#/components/schemas/Deployments'
        sbom_details:
          $ref: '#/components/schemas/SBOMInfo'
        pipeline_details:
          $ref: '#/components/schemas/PipelineDetails'
        violations:
          $ref: '#/components/schemas/Violations'
        scorecard:
          $ref: '#/components/schemas/Scorecard1'
        slsa_details:
          $ref: '#/components/schemas/SLSADetails1'
        source_id:
          type: string
          x-stoplight:
            id: i8uxq3e1vcpkh
        signing:
          $ref: '#/components/schemas/IntegrityVerification'
    RunnerDetail:
      title: RunnerDetail
      x-stoplight:
        id: az0wfdkk6eanj
      type: object
      discriminator:
        propertyName: type
        mapping:
          harness: '#/components/schemas/HarnessRunnerDetail'
          github: '#/components/schemas/GithubRunnerDetail'
      properties:
        type:
          type: string
          enum:
            - harness
            - github
    HarnessRunnerDetail:
      title: HarnessRunnerDetail
      x-discriminator-value: harness
      allOf:
        - $ref: '#/components/schemas/RunnerDetail'
        - type: object
          properties:
            type:
              type: string
              enum:
                - harness
              description: This specifies the type of Runner
            trigger_type:
              type: string
              x-stoplight:
                id: rzkmd5bqoc9r9
            trigger_by_id:
              type: string
              x-stoplight:
                id: b36ytjxzv2yq6
            trigger_by_name:
              type: string
              x-stoplight:
                id: a7g4t02vts8gf
    GithubRunnerDetail:
      title: GithubRunnerDetail
      x-discriminator-value: github
      allOf:
        - $ref: '#/components/schemas/RunnerDetail'
        - type: object
          properties:
            type:
              type: string
              enum:
                - github
              description: This specifies the type of Runner
            name:
              type: string
              x-stoplight:
                id: x0aeloqpvaybd
            account_id:
              type: string
              x-stoplight:
                id: aod8pc43fmjbt
    ExecutionContextV2:
      title: ExecutionContextV2
      type: object
      description: Details of the Execution Context
      required:
        - type
      discriminator:
        propertyName: type
        mapping:
          harness: '#/components/schemas/HarnessExecutionContext'
          github: '#/components/schemas/GithubExecutionContext'
      properties:
        type:
          type: string
          enum:
            - harness
            - github
    HarnessExecutionContext:
      title: HarnessExecutionContext
      x-discriminator-value: harness
      allOf:
        - $ref: '#/components/schemas/ExecutionContextV2'
        - type: object
          properties:
            type:
              type: string
              enum:
                - harness
              description: This specifies the type of context
            org:
              type: string
              x-stoplight:
                id: zf78rh1u21y55
            project:
              type: string
              x-stoplight:
                id: lghyhop0hsg0f
            pipeline_execution_id:
              type: string
              x-stoplight:
                id: svsw1myd4slwa
            pipeline_id:
              type: string
              x-stoplight:
                id: 6ms1cohmjf8rv
            pipeline_name:
              type: string
              x-stoplight:
                id: qecka5f2dfvxx
            sequence_id:
              type: string
              x-stoplight:
                id: tvb3c7trq28pt
            step_id:
              type: string
              x-stoplight:
                id: bj8ul3cpt9061
            step_execution_id:
              type: string
              x-stoplight:
                id: eyon9kxjzpuu5
            step_name:
              type: string
              x-stoplight:
                id: li446ik3qfg8l
            stage_id:
              type: string
              x-stoplight:
                id: uk4e6msb1annk
            stage_execution_id:
              type: string
              x-stoplight:
                id: ltrcdcpqky4rv
            stage_name:
              type: string
              x-stoplight:
                id: n27q5wlhtrd65
            stage_type:
              type: string
              x-stoplight:
                id: 22ha61i5fiwzc
              description: Stage type in which the step executed
              enum:
                - BUILD
                - DEPLOY
                - SECURITY
            runner_detail:
              $ref: '#/components/schemas/RunnerDetail'
          required:
            - type
      description: Harness Pipeline Execution Details
    GithubExecutionContext:
      title: GithubExecutionContext
      x-discriminator-value: github
      x-stoplight:
        id: nfcbibnr1z2rw
      allOf:
        - $ref: '#/components/schemas/ExecutionContextV2'
        - type: object
          properties:
            type:
              type: string
              enum:
                - github
              description: This specifies the type of context
            repository:
              type: string
              x-stoplight:
                id: sac861lasuewn
            github_action:
              type: string
              x-stoplight:
                id: l8azkn1th708h
            action_path:
              type: string
              x-stoplight:
                id: twcllxr8bibkc
            job_id:
              type: string
              x-stoplight:
                id: gxvhjwmosdutz
            run_id:
              type: string
              x-stoplight:
                id: cunrcn7ohnpy2
            workflow_ref:
              type: string
              x-stoplight:
                id: gnclwe27klokp
            runner_detail:
              $ref: '#/components/schemas/RunnerDetail'
          required:
            - type
      description: Github Pipeline Execution Details
    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
          description: Time of trigger of the deployment pipeline
          format: int64
          nullable: true
        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
    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: '#/components/schemas/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: '#/components/schemas/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: '#/components/schemas/PipelineDetails'
    Scorecard1:
      title: Scorecard
      x-stoplight:
        id: 102ivoz6d9d0e
      type: object
      properties:
        max_score:
          type: string
          x-stoplight:
            id: thfkvwow3l96k
        avg_score:
          type: string
          x-stoplight:
            id: 0mcqty415kzb6
    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: '#/components/schemas/PipelineDetails'
    PipelineConfigUpdateRequest:
      title: PipelineConfigUpdateRequest
      x-stoplight:
        id: 7q44javuz8cmu
      type: object
      properties:
        target_version:
          type: integer
          x-stoplight:
            id: i6f81t0vobitw
          description: |-
            Target version for the pipeline.
            If empty, we reset the version.
    CodeRepositoryListingRequest:
      title: CodeRepositoryListingRequest
      x-stoplight:
        id: kwftd5c6q7bdp
      type: object
      x-examples: {}
      properties:
        search_term:
          type: string
        dependency_filter:
          type: array
          items:
            $ref: '#/components/schemas/ComponentFilter'
        license_filter:
          $ref: '#/components/schemas/LicenseFilter'
    CICDWorkflowListingRequest:
      title: CICDWorkflowListingRequest
      x-stoplight:
        id: 091iwl7nn4zwr
      type: object
      x-examples: {}
      properties:
        search_term:
          type: string
        platform_type:
          $ref: '#/components/schemas/ComplianceSourcePlatform'
      description: CI/CD Workflow Listing Request.
    CodeRepositoryListingResponse:
      title: CodeRepositoryListingResponse
      x-stoplight:
        id: 8zy4qxmksmwvo
      type: object
      properties:
        id:
          type: string
          description: Code Respository ID
        name:
          type: string
          description: Code Repository Name
        variant:
          $ref: '#/components/schemas/ArtifactVariant'
        url:
          type: string
          description: Code Repository URL
        dependencies_count:
          type: integer
          description: Number of dependencies of the repository
          x-stoplight:
            id: i9fzdxv730dmj
        orchestration_id:
          type: string
          x-stoplight:
            id: zz2jdp70vk2gm
        last_scan:
          $ref: '#/components/schemas/PipelineDetails'
        scorecard:
          $ref: '#/components/schemas/Scorecard1'
        sto_issue_count:
          $ref: '#/components/schemas/StoIssueCount'
        risk_and_compliance:
          $ref: '#/components/schemas/RiskAndCompliance'
        repository_platform:
          $ref: '#/components/schemas/RepositoryPlatform'
    CICDWorkflowListingResponse:
      title: CICDWorkflowListingResponse
      x-stoplight:
        id: tt2e1jm0ioc1x
      type: object
      required:
        - id
        - name
        - last_scan
        - compliance_summary
        - source
      properties:
        id:
          type: string
          description: Workflow Id
        name:
          type: string
          description: Workflow Name
        last_scan:
          type: integer
          format: int64
        compliance_summary:
          $ref: '#/components/schemas/ComplianceEvaluationSummary'
        source:
          $ref: '#/components/schemas/WorkflowSource'
    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: '#/components/schemas/PipelineDetails'
    CodeRepositoryOverview:
      title: CodeRepositoryOverview
      x-stoplight:
        id: r5fq2x812oovu
      type: object
      required:
        - name
        - url
        - repo_identifier
      properties:
        name:
          type: string
          x-stoplight:
            id: auivbtpn91g2n
        variant:
          $ref: '#/components/schemas/ArtifactVariant'
        last_commit:
          type: string
          x-stoplight:
            id: izg01mscyrnw9
        last_evaluation:
          type: integer
          x-stoplight:
            id: ygpcbwdl2ynle
          format: int64
        vulnerabilities:
          $ref: '#/components/schemas/StoIssueCount'
        sbom_details:
          $ref: '#/components/schemas/SBOMInfo'
        compliance_summary:
          $ref: '#/components/schemas/ComplianceEvaluationSummary'
        scorecard:
          $ref: '#/components/schemas/Scorecard1'
        drift_summary:
          $ref: '#/components/schemas/DriftDetailsDTO'
        url:
          type: string
          x-stoplight:
            id: ifscwlxl1220j
        repo_identifier:
          type: string
          x-stoplight:
            id: fzrff9oem4esc
        repository_platform:
          $ref: '#/components/schemas/RepositoryPlatform'
    ComplianceEvaluationSummary:
      title: ComplianceEvaluationSummary
      x-stoplight:
        id: w6bm50zzc4qvm
      type: object
      properties:
        passed:
          type: integer
          x-stoplight:
            id: n9eea7yuwgj2p
        failed:
          type: integer
          x-stoplight:
            id: o6dgewchk2r19
        criticial_failures:
          type: integer
          x-stoplight:
            id: 67cnmw5x5e0rg
        medium_failures:
          type: integer
          x-stoplight:
            id: 8cd6cagnioamc
        high_failures:
          type: integer
          x-stoplight:
            id: lapzcy8o2c5ty
        low_failures:
          type: integer
          x-stoplight:
            id: v5iq4o1mkm0wo
        evaluation_time:
          type: integer
          x-stoplight:
            id: 55r1eicwd51tm
          format: int64
    IntegrationConfigRequestBody:
      title: IntegrationConfigRequestBody
      x-stoplight:
        id: uta1hy2bk34s3
      type: object
      required:
        - cron_expression
      properties:
        org:
          type: string
          description: If the org id is not provided, scan is set at account-level.
          x-stoplight:
            id: ugaig2wwl9kfo
        project:
          type: string
          description: If the project id is not provided, scan is set at org-level.
          x-stoplight:
            id: 4mopq9ilj38pb
        cron_expression:
          type: string
          description: Quartz expression supported only.
          x-stoplight:
            id: 5e1dl69h39k6j
        allow_override:
          type: boolean
          x-stoplight:
            id: wmfezfo2dzz2g
    CodeRepoRulesEvaluation:
      title: CodeRepoRulesEvaluation
      x-stoplight:
        id: 2z4ffjuz75iaq
      type: object
      properties:
        time:
          type: integer
          x-stoplight:
            id: a85ncco7pw9lc
          format: int64
        passed:
          type: integer
          x-stoplight:
            id: fvt6a0zpmnv01
        failed:
          type: integer
          x-stoplight:
            id: cai8vl453z7x5
      description: ''
    CICDRulesEvaluation:
      title: CICDRulesEvaluation
      x-stoplight:
        id: rsati2b6dopf3
      type: object
      properties:
        time:
          type: integer
          x-stoplight:
            id: a85ncco7pw9lc
          format: int64
        passed:
          type: integer
          x-stoplight:
            id: fvt6a0zpmnv01
        failed:
          type: integer
          x-stoplight:
            id: cai8vl453z7x5
      description: ''
    SeverityComplianceMetrics:
      title: SeverityComplianceMetrics
      x-stoplight:
        id: i4qcivi1ic7hu
      type: object
      description: 'Stores severity vs failure count '
      properties:
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        failed:
          type: integer
          x-stoplight:
            id: yu6c57ls9hgps
    ComplianceResultsEvaluationBreakdown:
      title: ComplianceResultsEvaluationBreakdown
      x-stoplight:
        id: j3aiueawgux7b
      type: object
      description: Powers Compliance Result EvaluationBreakdown
      properties:
        passed:
          type: integer
          x-stoplight:
            id: 3zs88xgwugylw
        failed:
          type: integer
          x-stoplight:
            id: 249xuf23b0qjx
        severity_breakdown:
          type: array
          x-stoplight:
            id: m2ju4nhsgkoub
          items:
            $ref: '#/components/schemas/SeverityComplianceMetrics'
    ArtifactComplianceMetrics:
      title: ArtifactComplianceMetrics
      x-stoplight:
        id: 242scbkezm5gm
      type: object
      x-tags:
        - ComplianceResults
      description: Stores artifact type vs passed failed count
      properties:
        artifactType:
          type: string
          enum:
            - REPOSITORY
            - WORKFLOW
        passed:
          type: integer
          x-stoplight:
            id: b5cstllpizhou
        failed:
          type: integer
          x-stoplight:
            id: 2kv0hqe1s1ove
    ComplianceChecksMetrics:
      title: ComplianceChecksMetrics
      x-stoplight:
        id: ot48foz9dg8kj
      type: object
      description: Stores Compliance Checks vs failure count
      x-tags:
        - ComplianceResults
      properties:
        compliance_id:
          type: string
          x-stoplight:
            id: o7yevh9673o0b
        failed:
          type: integer
          x-stoplight:
            id: lqtwjy17p9p4m
        tags:
          type: array
          x-stoplight:
            id: 6jdp7bf65d36h
          items:
            x-stoplight:
              id: 6bwje7kr6z4xq
            type: string
        standards:
          type: array
          x-stoplight:
            id: 8g3btgxi6g11o
          items:
            x-stoplight:
              id: sctata4ze1rmz
            type: string
        title:
          type: string
          x-stoplight:
            id: vhtwdq312xu3r
    ComplianceResultAggregationByType:
      type: object
      x-examples: {}
      required:
        - compliance_id
        - scm_platform
        - title
        - standards
        - tags
        - severity
        - entity
      properties:
        compliance_id:
          type: string
        scm_platform:
          type: string
        title:
          type: string
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        description:
          type: string
        tags:
          type: array
          items:
            type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        entity:
          $ref: '#/components/schemas/ComplianceCheckEntityType'
        executions:
          $ref: '#/components/schemas/ComplianceExecutionByType'
      x-stoplight:
        id: aih2jjkriqgq8
    ComplianceExecutionByType:
      type: object
      x-examples:
        Example 1:
          type: REPOSITORY
          count: 30
          passed: 30
          failed: 40
      properties:
        type:
          $ref: '#/components/schemas/ComplianceScanType'
        count:
          type: integer
        passed:
          type: integer
        failed:
          type: integer
      x-stoplight:
        id: vj4sakhy4qexz
    DriftDetailsDTO:
      title: DriftDetailsDTO
      x-stoplight:
        id: uq8fhf8ekmm44
      type: object
      required:
        - org_identifier
        - project_identifier
      properties:
        org_identifier:
          type: string
          x-stoplight:
            id: igphvl6gqe37p
        project_identifier:
          type: string
          x-stoplight:
            id: iry0l09etzye9
        drift_summary:
          $ref: '#/components/schemas/OrchestrationDriftSummary'
    ComplianceEvaluationHistory:
      type: object
      x-examples:
        Example 1:
          pipelineId: string
          pipelineExecutionId: string
          status: FAILED
      properties:
        pipeline_id:
          type: string
          x-stoplight:
            id: oj1ww5qb81ale
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: ij8zjdiofyxkn
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        stage_execution_id:
          type: string
          x-stoplight:
            id: j9vrceq5ahuaa
        step_execution_id:
          type: string
          x-stoplight:
            id: nmej7ya11phwe
        reason:
          type: string
          x-stoplight:
            id: vv78jrxqedsek
        description:
          type: string
          x-stoplight:
            id: 5eh2g6hen0gd6
        remediation:
          type: string
          x-stoplight:
            id: 22nyp1fet611d
        created_at:
          type: integer
          x-stoplight:
            id: i93b23g4ejxnb
          format: int64
        occurrences:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceOccurrenceDTO'
      x-stoplight:
        id: s8krm8zvlz556
    FetchComplianceResultByArtifactResponseBody:
      type: object
      x-examples:
        Example 1:
          complianceId: 4.3.5
          title: Ensure webhooks of the package registry are secured
          standards:
            - CIS
          severity: LOW
          status: PASSED
          evaluationTime: 1718040836473
          evaluationHistory:
            - pipelineId: string
              pipelineExecutionId: string
              status: PASSED
            - pipelineId: string
              pipelineExecutionId: string
              status: FAILED
      properties:
        compliance_id:
          type: string
          x-stoplight:
            id: 3a0fxwhfip1jx
        title:
          type: string
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        tags:
          type: array
          x-stoplight:
            id: lw9r9bfmoedxe
          items:
            x-stoplight:
              id: tj8w83zbr2ov9
            type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        evaluation_time:
          type: integer
          x-stoplight:
            id: 5jumm3w1luvnd
          format: int64
        evaluation_history:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceEvaluationHistory'
        reason:
          type: string
          x-stoplight:
            id: b8exmlc6fek9m
        description:
          type: string
          x-stoplight:
            id: qkjezwyyt94eo
        remediation:
          type: string
          x-stoplight:
            id: 2k070gxzjlse5
        pipelineExecutionId:
          type: string
          x-stoplight:
            id: lnlvofaibaqsv
        occurrences:
          type: array
          x-stoplight:
            id: 95mz9coytjsgg
          items:
            $ref: '#/components/schemas/ComplianceOccurrenceDTO'
      x-stoplight:
        id: oa9y4fc633tsf
    ComplianceArtifactWithExecution:
      type: object
      x-examples:
        Example 2:
          name: string
          type:
            id: GITHUB
          compliance_id: string
          title: string
          severity: CRITICAL
          description: string
          remediation: string
          standards:
            - CIS
          tags:
            - string
          updatedAt: string
          status:
            compliance_id: string
            title: string
            category: string
            category_id: string
            standards:
              - CIS
            description: string
            tags:
              - string
            severity: CRITICAL
            reason: string
            status: PASSED
            remediation: string
            url: string
            entity: REPOSITORY
            sub_category: string
            sub_category_id: string
          executions:
            pipeline_id: string
            pipeline_excution_id: string
            step_execution_id: string
            stage_execution_id: string
            status: PASSED
          reason: string
          scan_type: CICD
      x-stoplight:
        id: grcx43cx5x44a
      required:
        - name
        - type
        - compliance_id
        - severity
        - standards
        - tags
      properties:
        url:
          type: string
          x-stoplight:
            id: mq8x0fp10968z
        name:
          type: string
          x-stoplight:
            id: d5g0voke9neqg
        type:
          type: string
        compliance_id:
          type: string
          x-stoplight:
            id: sq0u450bxch3w
        title:
          type: string
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        description:
          type: string
        remediation:
          type: string
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        tags:
          type: array
          items:
            type: string
        updatedAt:
          type: string
        status:
          $ref: '#/components/schemas/ComplianceResultStatus'
        executions:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceEvaluationHistory'
        reason:
          type: string
          x-stoplight:
            id: 6wg3st0686v9y
        occurrences:
          type: array
          x-stoplight:
            id: 9gi2t6cvl4axw
          items:
            $ref: '#/components/schemas/ComplianceOccurrenceDTO'
        scan_type:
          $ref: '#/components/schemas/ComplianceScanType'
    ComplianceArtifactType:
      title: ComplianceArtifactType
      x-stoplight:
        id: e9e8k7zswayjf
      type: object
      properties:
        id:
          x-stoplight:
            id: o320rtkx22dbq
          enum:
            - GITHUB
            - GITLAB
    ComplianceResultByArtifactFilter:
      title: ComplianceResultByArtifactFilter
      x-stoplight:
        id: p67prnxfefvdl
      type: object
      properties:
        standards:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceStandardType'
        severity:
          $ref: '#/components/schemas/ComplianceCheckSeverity'
        status:
          type: array
          x-stoplight:
            id: mt4kx8wt1ufyv
          items:
            $ref: '#/components/schemas/ComplianceResultStatus'
        compliance_id:
          type: string
          x-stoplight:
            id: lm68szljbrvg9
        search_term:
          type: string
          x-stoplight:
            id: 0ykysaw7g4s2h
    RepositoriesSummary:
      title: RepositoriesSummary
      x-stoplight:
        id: owmyb6p9mw1y3
      type: object
      properties:
        total:
          type: integer
          x-stoplight:
            id: 4nhfx0bl3oy9r
        vulnerabilities:
          $ref: '#/components/schemas/StoIssueCount'
        evaluation_summary:
          $ref: '#/components/schemas/ComplianceEvaluationSummary'
    CICDWorkflowSummary:
      title: CICDWorkflowSummary
      x-stoplight:
        id: akvm9g9wf3zhe
      type: object
      properties:
        total_workflows:
          type: integer
          x-stoplight:
            id: dypacgi0s04bs
        compliance_summary:
          $ref: '#/components/schemas/ComplianceEvaluationSummary'
    IntegrationConfig:
      title: IntegrationConfig
      x-stoplight:
        id: xzh0yo3j4ysld
      type: object
      properties:
        url:
          type: string
          x-stoplight:
            id: w8n6vwhem4mve
      description: Integrations Config
    ArtifactChainOfCustody:
      title: 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: '#/components/schemas/SBOMInfo'
        enforcement:
          $ref: '#/components/schemas/Violations'
        provenance:
          $ref: '#/components/schemas/SLSADetails1'
        verification:
          $ref: '#/components/schemas/SLSADetails1'
        deployment:
          $ref: '#/components/schemas/Deployments'
        vulnerability:
          $ref: '#/components/schemas/StoIssueCount'
        compliance:
          $ref: '#/components/schemas/RiskAndCompliance'
        artifact_details:
          $ref: '#/components/schemas/ArtifactV2Details'
    ArtifactChainOfCustodyV2:
      title: ArtifactChainOfCustodyV2
      x-stoplight:
        id: 1yqfetazjhj4v
      type: object
      x-internal: false
      properties:
        activity:
          $ref: '#/components/schemas/ActivityDetails'
        created_at:
          type: integer
          format: int64
          x-stoplight:
            id: 6j7z7j7z7z7z7
        artifact_details:
          $ref: '#/components/schemas/ArtifactV2Details'
        execution_context:
          $ref: '#/components/schemas/ExecutionContextV2'
    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
    ComplianceEvaluationTrend:
      title: ComplianceEvaluationTrend
      x-stoplight:
        id: pjgvs47v5rtej
      type: object
      description: Data point for compliane evaluation trend api
      properties:
        window_start_time:
          type: string
          x-stoplight:
            id: rmrtkj4ikb0ov
        window_end_time:
          type: string
          x-stoplight:
            id: 159g6x7sv80gx
        passed:
          type: integer
          x-stoplight:
            id: 3plfwztlj4pki
        failed:
          type: integer
          x-stoplight:
            id: 5prsa89cck6v6
    VersionInfo:
      title: VersionInfo
      x-stoplight:
        id: 4fl7tuh0ii7f9
      type: object
      properties:
        commit:
          type: string
          x-stoplight:
            id: r9h0brk01io35
        version:
          type: string
          x-stoplight:
            id: gaw1386jrgrc5
    PluginDTO:
      title: PluginDTO
      x-stoplight:
        id: 6h45p8xhj8nyq
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: imeroxjtaijgs
        version:
          type: string
          x-stoplight:
            id: emdtllba1deoe
        path_from_root:
          type: string
          x-stoplight:
            id: j7spynufi3rvf
      description: >-
        Represents workflow images/plugin/actions found for CI/CD workflows
        scan.
    ComplianceOccurrenceDTO:
      title: ComplianceOccurrenceDTO
      x-stoplight:
        id: 5kz1r0wmqqtb9
      type: object
      properties:
        snippet:
          type: string
          x-stoplight:
            id: tou5xin4shjem
          description: Depicts occurrence snippet.
        snippet_url:
          type: string
          x-stoplight:
            id: elke0tcie443g
          description: URL to go to snippet
        line_number:
          type: integer
          x-stoplight:
            id: r956qlsf9zrc0
          description: Line number of snippet.
    WorkflowSource:
      title: WorkflowSource
      x-stoplight:
        id: tdne5ehs4aif7
      type: object
      description: Represent Workflow Source
      required:
        - name
        - url
        - type
      properties:
        name:
          type: string
          x-stoplight:
            id: al23pegshrknr
          description: Source Name
        url:
          type: string
          x-stoplight:
            id: pz4qsjkmnmf3e
          description: Source URL
        type:
          type: string
          x-stoplight:
            id: s2x2mpxkirx73
          enum:
            - GITHUB
            - HARNESS
          description: Workflow Source Type
    CICDOverviewResponseBody:
      title: CiCdOverviewResponseBody
      x-stoplight:
        id: wl7zxtr0dmbft
      type: object
      required:
        - id
        - name
        - last_scan
        - compliance_summary
        - source
      properties:
        id:
          type: string
          description: Workflow Id
          x-stoplight:
            id: z5a9z4zmzhryu
        name:
          type: string
          description: Workflow Name
        last_scan:
          type: integer
          format: int64
        compliance_summary:
          $ref: '#/components/schemas/ComplianceEvaluationSummary'
        source:
          $ref: '#/components/schemas/WorkflowSource'
    CICDHarnessPipelineYamlResponseBody:
      title: CICDHarnessPipelineYamlResponseBody
      x-stoplight:
        id: ver2dyae9lsfn
      type: object
      required:
        - pipeline_yaml
      properties:
        pipeline_yaml:
          type: string
          x-stoplight:
            id: h1ik5naj7j0td
        harness_pipeline_settings:
          $ref: '#/components/schemas/HarnessPipelineSettings'
    HarnessPipelineIntegrationResponse:
      title: HarnessPipelineIntegrationResponse
      x-stoplight:
        id: 99y4wqer2tzx7
      type: object
      required:
        - enabled
      properties:
        enabled:
          type: boolean
          x-stoplight:
            id: h1ik5naj7j0tl
    CICDWorklfowPluginsResponse:
      title: CICDWorklfowPluginsResponse
      x-stoplight:
        id: 5wdvs00p4wa00
      type: object
      properties:
        plugin_name:
          type: string
          x-stoplight:
            id: emdtllba1deoe
    HarnessPipelineSettings:
      title: HarnessPipelineSettings
      x-stoplight:
        id: tghaftaxk6w16
      type: object
      properties:
        is_auth_enabled_for_custom_webhook:
          type: boolean
          x-stoplight:
            id: 86cw8l9rmrpjg
    IntegrationStepConfig:
      title: IntegrationStepConfig
      x-stoplight:
        id: e68xul7elow84
      type: object
      x-examples: {}
      required:
        - name
        - enable
        - parallel
      properties:
        name:
          type: string
          x-stoplight:
            id: 0ffgruret4fiq
        enable:
          type: boolean
          x-stoplight:
            id: 7o4yqb8h4wrwo
        parallel:
          type: boolean
          x-stoplight:
            id: 6h0ob99bao11t
        resource:
          type: string
          x-stoplight:
            id: d0oh1mq8sqsyz
        settings:
          type: string
          x-stoplight:
            id: gu7w8jka37mto
        parameters:
          type: object
          x-stoplight:
            id: vuy0dk6ifo0aq
          additionalProperties:
            x-stoplight:
              id: tg81kj7kvnpml
            type: string
        auto_infra:
          type: array
          x-stoplight:
            id: fb4ax8u61g502
          items:
            $ref: '#/components/schemas/InfraLayout'
    IntegrationStepConfigRequestBody:
      title: IntegrationStepConfigRequestBody
      x-stoplight:
        id: 2u7c73xk9k3v9
      type: object
      properties:
        name:
          x-stoplight:
            id: ab9pcgmqaah0o
          enum:
            - RSPM
            - CICD
        config:
          type: array
          x-stoplight:
            id: 660988p2kqc1a
          items:
            $ref: '#/components/schemas/IntegrationStepConfig'
    InfraLayout:
      title: InfraLayout
      x-stoplight:
        id: 0bf1jtp5gxi7w
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: 59o9qqs6a07yt
        cpu:
          type: string
          x-stoplight:
            id: 50gznrzb2jy9z
        memory:
          type: string
          x-stoplight:
            id: 1oifzqpxfsiny
        repo_size:
          type: string
          x-stoplight:
            id: 9pfwbmeham6y1
    ComplianceStandardsFilterEntity:
      title: ComplianceStandardsFilterEntity
      x-stoplight:
        id: 0mc5ygoyq3h1c
      type: object
      x-examples:
        Example 1:
          scan_type: CICD
          integrations:
            - GITHUB
            - HARNESS
      description: Type of SPM support and platforms integrated
      x-internal: false
      required:
        - scan_type
        - integrations
      properties:
        scan_type:
          $ref: '#/components/schemas/ComplianceScanType'
        integrations:
          type: array
          items:
            $ref: '#/components/schemas/ComplianceSourcePlatform'
    ComplianceScanType:
      title: ComplianceScanType
      x-stoplight:
        id: xofqrlg94b1o5
      type: string
      enum:
        - REPOSITORY
        - CICD
      description: Type of scan on the source like Repository scan or Worklfow scan
    ComplianceSourcePlatform:
      title: ComplianceSourcePlatform
      x-stoplight:
        id: mu4qb4tnrii02
      type: string
      enum:
        - GITHUB
        - HARNESS
      description: 'Source platform enum. Example: GITHUB, HARNESS'
    HarnessRunner:
      title: HarnessRunner
      x-stoplight:
        id: vfsaqcya7qwfx
      type: object
      properties:
        trigger_type:
          type: string
          x-stoplight:
            id: rzkmd5bqoc9r9
        trigger_by_id:
          type: string
          x-stoplight:
            id: b36ytjxzv2yq6
        trigger_by_name:
          type: string
          x-stoplight:
            id: a7g4t02vts8gf
    GithubRunner:
      title: GithubRunner
      x-stoplight:
        id: 32axq2gn4gemv
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: x0aeloqpvaybd
        account_id:
          type: string
          x-stoplight:
            id: aod8pc43fmjbt
    HarnessExecutionDetail:
      title: HarnessExecutionDetail
      x-stoplight:
        id: 26kpn09zundb0
      type: object
      properties:
        org:
          type: string
          x-stoplight:
            id: zf78rh1u21y55
        project:
          type: string
          x-stoplight:
            id: lghyhop0hsg0f
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: svsw1myd4slwa
        pipeline_id:
          type: string
          x-stoplight:
            id: 6ms1cohmjf8rv
        pipeline_name:
          type: string
          x-stoplight:
            id: qecka5f2dfvxx
        sequence_id:
          type: string
          x-stoplight:
            id: tvb3c7trq28pt
        step_id:
          type: string
          x-stoplight:
            id: bj8ul3cpt9061
        step_execution_id:
          type: string
          x-stoplight:
            id: eyon9kxjzpuu5
        step_name:
          type: string
          x-stoplight:
            id: li446ik3qfg8l
        stage_id:
          type: string
          x-stoplight:
            id: uk4e6msb1annk
        stage_execution_id:
          type: string
          x-stoplight:
            id: ltrcdcpqky4rv
        stage_name:
          type: string
          x-stoplight:
            id: n27q5wlhtrd65
        stage_type:
          type: string
          x-stoplight:
            id: 22ha61i5fiwzc
          description: Stage type in which the step executed
        runner_detail:
          $ref: '#/components/schemas/HarnessRunner'
      description: Harness Pipeline Execution Details
    GithubExecutionDetail:
      title: GithubExecutionDetail
      x-stoplight:
        id: nfcbibnr1z2rw
      type: object
      properties:
        repository:
          type: string
          x-stoplight:
            id: sac861lasuewn
        github_action:
          type: string
          x-stoplight:
            id: l8azkn1th708h
        action_path:
          type: string
          x-stoplight:
            id: twcllxr8bibkc
        job_id:
          type: string
          x-stoplight:
            id: gxvhjwmosdutz
        run_id:
          type: string
          x-stoplight:
            id: cunrcn7ohnpy2
        workflow_ref:
          type: string
          x-stoplight:
            id: gnclwe27klokp
        runner_detail:
          $ref: '#/components/schemas/GithubRunner'
      description: Github Pipeline Execution Details
    ExecutionType:
      type: string
      enum:
        - harness
        - github
    ExecutionDetail:
      type: object
      required:
        - type
      properties:
        type:
          $ref: '#/components/schemas/ExecutionType'
        github:
          $ref: '#/components/schemas/GithubExecutionDetail'
        harness:
          $ref: '#/components/schemas/HarnessExecutionDetail'
    ActivityDetails:
      title: ActivityDetails
      type: object
      required:
        - type
      discriminator:
        propertyName: type
        mapping:
          orchestration: '#/components/schemas/OrchestrationActivity'
          vulnerability: '#/components/schemas/VulnerabilityActivity'
          enforcement: '#/components/schemas/EnforcementActivity'
          provenance: '#/components/schemas/ProvenanceActivity'
          verification: '#/components/schemas/VerificationActivity'
          deployment: '#/components/schemas/DeploymentActivity'
          signing: '#/components/schemas/SigningActivity'
          integrity_verification: '#/components/schemas/IntegrityVerificationActivity'
      properties:
        type:
          type: string
          enum:
            - orchestration
            - vulnerability
            - enforcement
            - provenance
            - verification
            - deployment
            - signing
            - integrity_verification
    OrchestrationActivity:
      title: OrchestrationActivity
      x-discriminator-value: orchestration
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - orchestration
              description: This specifies the type of activity
            orchestration_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
          required:
            - type
    SigningActivity:
      title: SigningActivity
      x-stoplight:
        id: 21dd8d68a15a6
      x-discriminator-value: signing
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - signing
              description: This specifies the type of activity
            signing:
              $ref: '#/components/schemas/IntegrityVerification'
          required:
            - type
    IntegrityVerificationActivity:
      title: IntegrityVerificationActivity
      x-discriminator-value: integrity_verification
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          required:
            - type
          properties:
            type:
              type: string
              enum:
                - integrity_verification
              description: This specifies the type of activity
            signing:
              $ref: '#/components/schemas/IntegrityVerification'
    ProvenanceActivity:
      title: ProvenanceActivity
      x-discriminator-value: provenance
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - provenance
              description: This specifies the type of activity
            provenance_id:
              type: string
              x-stoplight:
                id: ju6d8j0ulhw4t
          required:
            - type
    VerificationActivity:
      title: VerificationActivity
      x-discriminator-value: verification
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - verification
              description: This specifies the type of activity
            status:
              type: string
              x-stoplight:
                id: ju6d8j0ulhw4t
            provenance_id:
              type: string
              x-stoplight:
                id: ju6d8j0ulhw4t
          required:
            - type
    EnforcementActivity:
      title: EnforcementActivity
      x-discriminator-value: enforcement
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - enforcement
              description: This specifies the type of activity
            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
          required:
            - type
    DeploymentActivity:
      title: DeploymentActivity
      x-stoplight:
        id: 1cdf66d1dcb18
      x-discriminator-value: deployment
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - deployment
              description: This specifies the type of activity
            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
          required:
            - type
    VulnerabilityActivity:
      title: VulnerabilityActivity
      x-discriminator-value: vulnerability
      allOf:
        - $ref: '#/components/schemas/ActivityDetails'
        - type: object
          properties:
            type:
              type: string
              enum:
                - vulnerability
              description: This specifies the type of activity
            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
            tool:
              type: string
              x-stoplight:
                id: 6w9cfeu92rj4d
              description: The name of the tool that performed the scan
          required:
            - type
    RepositoryPlatform:
      type: string
      title: RepositoryPlatform
      x-stoplight:
        id: prybalroyw6dc
      enum:
        - HARNESS
        - GITHUB
        - BITBUCKET
        - GITLAB
        - GIT
        - AZURE
    RekorLog:
      title: RekorLogDataModel
      x-stoplight:
        id: 2tz0t40gohsnp
      type: object
      properties:
        hash:
          type: string
          x-stoplight:
            id: pw8nommavkh17
        t_log_index:
          type: string
          x-stoplight:
            id: 3h63tu9ilxhaq
        signature:
          type: string
          x-stoplight:
            id: f2uvqh6uh4dj0
        entry_uuid:
          type: string
          x-stoplight:
            id: 04859pdq51kvo
        signed_at:
          type: string
          x-stoplight:
            id: w0tobwpwa3kcs
        signed_by:
          type: string
          x-stoplight:
            id: x13syvivwlh3c
    IntegrityVerification:
      title: IntegrityVerification
      x-stoplight:
        id: o67gzhl92dluh
      type: object
      properties:
        rekor:
          $ref: '#/components/schemas/RekorLog'
        error_message:
          type: string
          x-stoplight:
            id: n4kkqgdolwbxh
        status:
          $ref: '#/components/schemas/VerificationStatus'
        pipeline_id:
          type: string
          x-stoplight:
            id: 1oh36wopxh7ek
        pipeline_execution_id:
          type: string
          x-stoplight:
            id: wqwwxp6452gmd
    VerificationStatus:
      type: string
      enum:
        - PASSED
        - FAILED
    SaveSignatureRequestBody:
      title: SaveSignatureRequestBody
      x-stoplight:
        id: xqsj8bysobufx
      type: object
      properties:
        rekor:
          $ref: '#/components/schemas/RekorLog'
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
        artifact:
          $ref: '#/components/schemas/ArtifactModelPipeline'
    SaveIntegrityVerificationRequestBody:
      title: SaveIntegrityVerificationRequestBody
      x-stoplight:
        id: pf3dx1teu7wvk
      type: object
      properties:
        artifact:
          $ref: '#/components/schemas/ArtifactModelPipeline'
        verification_status:
          $ref: '#/components/schemas/VerificationStatus'
        execution_context:
          $ref: '#/components/schemas/ExecutionDetail'
        rekor:
          $ref: '#/components/schemas/RekorLog'
        error_message:
          type: string
          x-stoplight:
            id: 3x5w4fiiawwmd
    DownloadSbomRequest:
      title: DownloadSbomRequest
      x-stoplight:
        id: j599v86b1z4ah
      type: object
      required:
        - spec
      properties:
        spec:
          $ref: '#/components/schemas/ArtifactSpec'
    SbomScoreRequest:
      title: SbomScoreRequest
      x-stoplight:
        id: j599v86b1z4ah
      type: object
      required:
        - spec
      properties:
        spec:
          $ref: '#/components/schemas/ArtifactSpec'
    ArtifactSpec:
      title: ArtifactSpec
      type: object
      required:
        - type
      discriminator:
        propertyName: type
        mapping:
          IMAGE: '#/components/schemas/ImageSpec'
          REPOSITORY: '#/components/schemas/RepositorySpec'
      properties:
        type:
          type: string
          enum:
            - IMAGE
            - REPOSITORY
      x-stoplight:
        id: 4sjky3kbho5p2
    ImageSpec:
      title: ImageSpec
      x-discriminator-value: IMAGE
      description: The spec for container images
      x-stoplight:
        id: oez8eq74r95a6
      allOf:
        - $ref: '#/components/schemas/ArtifactSpec'
        - type: object
          required:
            - type
            - image_name
          properties:
            type:
              type: string
              x-stoplight:
                id: al79vwwko48jx
              enum:
                - IMAGE
            image_name:
              type: string
              x-stoplight:
                id: tqkt23n39zxk5
              description: >
                The FQN (fully-qualified name) Image name. This includes image
                Url and shouldn't include tag.

                For example: us.gcr.io/playground/quickstart-image.

                Incase digest and tag both are absent, the latest orchestrated
                image will be considered.
            digest:
              type: string
              x-stoplight:
                id: kghbgr0yagnt8
              description: Digest of the artifact.
            image_tag:
              type: string
              x-stoplight:
                id: cpu02ujruxhj7
              description: Image Tag
    RepositorySpec:
      title: RepositorySpec
      x-discriminator-value: REPOSITORY
      x-stoplight:
        id: 4sjky3kbho5p1
      type: object
      description: The spec for Repository Artifact
      allOf:
        - $ref: '#/components/schemas/ArtifactSpec'
        - type: object
          required:
            - type
            - repo_url
          properties:
            type:
              type: string
              x-stoplight:
                id: ah6etw58yh0ki
              enum:
                - REPOSITORY
            repo_url:
              type: string
              x-stoplight:
                id: ohz162f4bbptp
              description: >-
                Provide the fully qualified repository URL, excluding the
                'https://' prefix. For example github.com/nginxinc/docker-nginx.
            branch:
              type: string
              x-stoplight:
                id: t8jf1fskiim01
              description: Branch Name
    IntegrityVerificationModelPipeline:
      title: IntegrityVerificationModelPipeline
      x-stoplight:
        id: xwfsxgb9yu8ji
      type: object
      properties:
        stage_identifier:
          type: string
          x-stoplight:
            id: gr8axhf45jpge
        stage_execution_identifier:
          type: string
          x-stoplight:
            id: kcmobatnnddtg
        stage_name:
          type: string
          x-stoplight:
            id: q6f06mp4lmtxz
        step_name:
          type: string
          x-stoplight:
            id: w6m4q6vh272rm
        step_identifier:
          type: string
          x-stoplight:
            id: w33jxve6yupz8
        step_execution_identifier:
          type: string
          x-stoplight:
            id: 84al2ba43212l
        integrity_verification:
          $ref: '#/components/schemas/IntegrityVerification'
    DownloadSignatureResponseBody:
      title: DownloadSignatureResponseBody
      x-stoplight:
        id: 7xqgkkfbpj3n7
      type: object
      properties:
        signature:
          type: string
          x-stoplight:
            id: bfj4ki8kbdm8l
        payload:
          type: string
          x-stoplight:
            id: io6zuexbmmn4s
        rekor:
          $ref: '#/components/schemas/RekorLog'
  responses:
    RolesListResponse:
      description: Roles List Response body
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RolesResponse'
          examples:
            role-list-response:
              value:
                - identifier: example_role
                  name: Example_Role
                  permissions:
                    - core_resource_view
                  allowed_scope_levels:
                    - account
                  description: This is an Example Role
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  scope:
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                  created: 1234567890
                  updated: 1234567890
                  harness_managed: true
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RolesResponse'
          examples:
            role-list-response:
              value: |
                - identifier: example_role
                  name: Example_Role
                  permissions:
                    - core_resource_view
                  allowed_scope_levels:
                    - account
                  description: This is an Example Role
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  scope:
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                  created: 1234567890
                  updated: 1234567890
                  harness_managed: true
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    RoleResponse:
      description: Role Response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RolesResponse'
          examples:
            role-response:
              value:
                identifier: example_role
                name: Example_Role
                permissions:
                  - core_resource_view
                allowed_scope_levels:
                  - account
                description: This is an Example Role
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                scope:
                  account: sample_account
                  org: sample_organization
                  project: sample_project
                created: 1234567890
                updated: 1234567890
                harness_managed: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/RolesResponse'
          examples:
            role-response:
              value: |
                identifier: example_role
                name: Example_Role
                permissions:
                  - core_resource_view
                allowed_scope_levels:
                  - account
                description: This is an Example Role
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                scope:
                  account: sample_account
                  org: sample_organization
                  project: sample_project
                created: 1234567890
                updated: 1234567890
                harness_managed: true
    RoleAssignmentResponse:
      description: Role assignment response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RoleAssignmentResponse'
          examples:
            role-assignment-response-json:
              value:
                role-assignment:
                  identifier: example_role_assignment
                  resource_group: example_resource_group_identifier
                  role: example_role_identifier
                  principal:
                    scope: ACCOUNT
                    identifier: example_principal_identifier
                    type: USER
                  disabled: false
                  managed: false
                created: 1234567890
                updated: 1234567890
                harness_managaed: false
        application/yaml:
          schema:
            $ref: '#/components/schemas/RoleAssignmentResponse'
          examples:
            role-assignment-response-yaml:
              value: |
                role-assignment:
                  identifier: example_role_assignment
                  resource_group: example_resource_group_identifier
                  role: example_role_identifier
                  principal:
                    scope: ACCOUNT
                    identifier: example_principal_identifier
                    type: USER
                  disabled: false
                  managed: false
                created: 1234567890
                updated: 1234567890
                harness_managaed: false
    RoleAssignmentListResponse:
      description: Role Assignment List Response body
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RoleAssignmentResponse'
          examples:
            role-assignment-response-json:
              value:
                - role-assignment:
                    identifier: example_role_assignment
                    resource_group: example_resource_group_identifier
                    role: example_role_identifier
                    principal:
                      scope: ACCOUNT
                      identifier: example_principal_identifier
                      type: USER
                    disabled: false
                    managed: false
                  created: 1234567890
                  updated: 1234567890
                  harness_managaed: false
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RoleAssignmentResponse'
          examples:
            role-assignment-response-json:
              value: |
                - role-assignment:
                    identifier: example_role_assignment
                    resource_group: example_resource_group_identifier
                    role: example_role_identifier
                    principal:
                      scope: ACCOUNT
                      identifier: example_principal_identifier
                      type: USER
                    disabled: false
                    managed: false
                  created: 1234567890
                  updated: 1234567890
                  harness_managaed: false
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    PublicAccessResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: boolean
    AccessPolicyAnalysisResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AccessPolicyAnalysisResponseWrapper'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    PublicAccessCheckResponse:
      description: This returns if a list of resource identifiers is public or not.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicAccessCheckResponse'
    LicenseUsageActivity:
      description: Response for License Usage Activity
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/LicenseUsageActivity'
    ServiceListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ServiceResponse'
          examples:
            example-1:
              value:
                - service:
                    account: sample_account
                    identifier: example_service
                    org: sample_organization
                    project: sample_project
                    name: Example_service
                    description: This is a example service
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      service:
                        name: "Example_service"
                        identifier: "example_service"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ServiceResponse'
          examples:
            example-1:
              value: |
                - service:
                    account: sample_account
                    identifier: example_service
                    org: sample_organization
                    project: sample_project
                    name: Example_service
                    description: This is a example service
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      service:
                        name: "Example_service"
                        identifier: "example_service"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ServiceResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceResponse'
          examples:
            example-1:
              value:
                service:
                  account: sample_account
                  identifier: example_service
                  org: sample_organization
                  project: sample_project
                  name: Example_service
                  description: This is a example service
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    service:
                      name: "Example_service"
                      identifier: "example_service"
                      tags: {}
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/ServiceResponse'
          examples:
            example-1:
              value: |
                service:
                  account: sample_account
                  identifier: example_service
                  org: sample_organization
                  project: sample_project
                  name: Example_service
                  description: This is a example service
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    service:
                      name: "Example_service"
                      identifier: "example_service"
                      tags: {}
                created: 1234567890
                updated: 1234567890
    EnvironmentListResponse:
      description: Example environment list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EnvironmentResponse'
          examples:
            example-1:
              value:
                - service:
                    account: sample_account
                    identifier: example_environment
                    org: sample_organization
                    project: sample_project
                    name: Example_service
                    description: This is a example environment
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      environment:
                        name: "Example_environment"
                        identifier: "example_environment"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EnvironmentResponse'
          examples:
            example-1:
              value: |
                - environment:
                    account: sample_account
                    identifier: example_environment
                    org: sample_organization
                    project: sample_project
                    name: Example_environment
                    description: This is a example environment
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      environment:
                        name: "Example_environment"
                        identifier: "example_environment"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    EnvironmentResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnvironmentResponse'
          examples:
            example-1:
              value:
                environment:
                  account: sample_account
                  identifier: example_
                  org: sample_organization
                  project: sample_project
                  name: Example_environment
                  description: This is a example environment
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    environment:
                      name: "Example_environment"
                      identifier: "example_environment"
                      tags: {}
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/EnvironmentResponse'
          examples:
            example-1:
              value: |
                environment:
                  account: sample_account
                  identifier: example_environment
                  org: sample_organization
                  project: sample_project
                  name: Example_environment
                  description: This is a example environment
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    environment:
                      name: "Example_environment"
                      identifier: "example_environment"
                      tags: {}
                created: 1234567890
                updated: 1234567890
    InfrastructureResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InfrastructureResponse'
          examples:
            example-1:
              value:
                infrastructure:
                  account: sample_account
                  identifier: example_
                  org: sample_organization
                  project: sample_project
                  name: Example_infrastructure
                  description: This is a example infrastructure
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    environment:
                      name: "Example_infrastructure"
                      identifier: "example_infrastructure"
                      tags: {}
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/InfrastructureResponse'
          examples:
            example-1:
              value: |
                infrastructure:
                  account: sample_account
                  identifier: example_infrastructure
                  org: sample_organization
                  project: sample_project
                  name: Example_environment
                  description: This is a example infrastructure
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    environment:
                      name: "Example_infrastructure"
                      identifier: "example_infrastructure"
                      tags: {}
                created: 1234567890
                updated: 1234567890
    InfrastructureListResponse:
      description: Example infrastructure list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/InfrastructureResponse'
          examples:
            example-1:
              value:
                - infrastructure:
                    account: sample_account
                    identifier: example_infrastructure
                    org: sample_organization
                    project: sample_project
                    name: Example_service
                    description: This is a example infrastructure
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      infrastructure:
                        name: "Example_infrastructure"
                        identifier: "example_infrastructure"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/InfrastructureResponse'
          examples:
            example-1:
              value: |
                - infrastructure:
                    account: sample_account
                    identifier: example_infrastructure
                    org: sample_organization
                    project: sample_project
                    name: Example_infrastructure
                    description: This is a example infrastructure
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                    yaml: |
                      infrastructure:
                        name: "Example_infrastructure"
                        identifier: "example_infrastructure"
                        tags: {}
                  created: 1234567890
                  updated: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    OrganizationResponse:
      description: Organization response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OrganizationResponse'
          examples:
            example-organization-response-json:
              value:
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                created: 1234567890
                updated: 1234567890
                harness_managed: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/OrganizationResponse'
          examples:
            example-organization-response-yaml:
              value: |
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                created: 1234567890
                updated: 1234567890
                harness_managed: true
    ProjectResponse:
      description: Project response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProjectResponse'
          examples:
            example-project-response-json:
              value:
                project:
                  org: example_org_identifier
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
                created: 1234567890
                updated: 1234567890
                isFavorite: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/ProjectResponse'
          examples:
            example-project-response-yaml:
              value: |
                project:
                  org: example_org_identifier
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
                created: 1234567890
                updated: 1234567890
                isFavorite: true
    FavoriteResponse:
      description: Favorite response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FavoriteResponse'
          examples:
            example-Favorite-response-json:
              value:
                Favorite:
                  org: sample_organization
                  project: sample_project
                  user_id: example_userId
                  resource_type: Example_resourceType
                  resource_id: Example_resourceId
                created: 1234567890
    FavoriteListResponse:
      description: Favorite list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/FavoriteResponse'
          examples:
            example-Favorite-list-response-json:
              value:
                - Favorite:
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                    user_id: example_userId
                    resource_type: Example_resourceType
                    resource_id: Example_resourceId
                  created: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ProjectListResponse:
      description: Project list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ProjectResponse'
          examples:
            example-project-list-response-json:
              value:
                - project:
                    org: example_org_identifier
                    identifier: example_project_identifier
                    name: example-project-name
                    color: '#0063F7'
                    modules:
                      - CD
                    description: This is a example project
                    tags:
                      property1: value1
                      property2: value2
                  created: 1234567890
                  updated: 1234567890
                  isFavorite: true
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ProjectResponse'
          examples:
            example-project-list-response-yaml:
              value: |
                - project:
                    org: example_org_identifier
                    identifier: example_project_identifier
                    name: example-project-name
                    color: '#0063F7'
                    modules:
                      - CD
                    description: This is a example project
                    tags:
                      property1: value1
                      property2: value2
                  created: 1234567890
                  updated: 1234567890
                  isFavorite: true
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    OrganizationListResponse:
      description: Organization list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/OrganizationResponse'
          examples:
            example-organizations-list-response-json:
              value:
                - org:
                    identifier: example_organization
                    name: Example Organization
                    description: This is an example organization
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                  created: 1234567890
                  updated: 1234567890
                  harness_managed: true
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/OrganizationResponse'
          examples:
            example-organizations-list-response-yaml:
              value: |
                - org:
                    identifier: example_organization
                    name: Example Organization
                    description: This is an example organization
                    tags:
                      example-tag-1: example-tag-1-value
                      example-tag-2: example-tag-2-value
                  created: 1234567890
                  updated: 1234567890
                  harness_managed: true
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    SecretResponse:
      description: Secret response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecretResponse'
          examples:
            example-secret-response-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyPath
                    port: 80
                    username: example_secret
                    key_path: example_secret
                    encrypted_passphrase: account.example_secret
                created: 1234567890
                updated: 1234567890
                draft: false
        application/yaml:
          schema:
            $ref: '#/components/schemas/SecretResponse'
          examples:
            example-secret-response-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyPath
                    port: 80
                    username: example_secret
                    key_path: example_secret
                    encrypted_passphrase: account.example_secret
                created: 1234567890
                updated: 1234567890
                draft: false
    SecretListResponse:
      description: Secret list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SecretResponse'
          examples:
            example-list-secret-response-json:
              value:
                - secret:
                    name: example_secret
                    identifier: example_secret
                    org: default
                    project: example_project
                    tags:
                      property1: example_secret
                    description: example_secret
                    spec:
                      type: SSHKeyPath
                      port: 80
                      username: example_secret
                      key_path: example_secret
                      encrypted_passphrase: account.example_secret
                  created: 1234567890
                  updated: 1234567890
                  draft: false
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/SecretResponse'
          examples:
            example-list-secret-response-yaml:
              value: |
                - secret:
                    name: example_secret
                    identifier: example_secret
                    org: default
                    project: example_project
                    tags:
                      property1: example_secret
                    description: example_secret
                    spec:
                      type: SSHKeyPath
                      port: 80
                      username: example_secret
                      key_path: example_secret
                      encrypted_passphrase: account.example_secret
                  created: 1234567890
                  updated: 1234567890
                  draft: false
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ModuleVersionsListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ModuleVersionsResponse'
          examples: {}
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    SecretValidationResponse:
      description: 'Response of the secret reference validation '
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecretValidationResponse'
          examples:
            Example 1:
              value:
                success: true
                message: Validation is Successful, Secret can be referenced
    EulaSignResponse:
      description: Response of signing End User License Agreement
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EulaSignResponse'
    IPAllowlistConfigResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IPAllowlistConfigResponse'
    IPAllowlistConfigListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/IPAllowlistConfigResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    IPAllowlistConfigValidateResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IPAllowlistConfigValidateResponse'
    IPAllowlistValidateUniqueIdentifierResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: boolean
    RancherListClustersResponse:
      description: Response containing list of rancher cluster names
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RancherClusterItem'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ReleaseDetailsResponse:
      description: Batch Release Details response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/BatchReleaseDetailsResponse'
          examples:
            Example 1:
              value:
                - - _id: {}
                    account: account
                    org: org
                    project: project
                    release_key: release_key
                    service_details:
                      service_id: k8sservice
                      service_name: k8s service
                      org: orgid
                      project: projectid
                    environment_details:
                      env_id: k8senv
                      env_name: k8s env
                      org: orgid
                      project: projectid
                      connector_ref: string
                      infra_name: infra_name
                      infra_id: infra_id
                      infrastructure_kind: K8sDirect
        application/xml:
          schema:
            $ref: '#/components/schemas/BatchReleaseDetailsResponse'
    ManifestsResponseDTO:
      description: >-
        Response containing a list of eligible manifest identifiers that can be
        applied as primary manifest.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ManifestsResponseDTO'
          examples:
            Example 1:
              value:
                identifiers:
                  - id1
                  - id2
        application/xml:
          schema:
            type: object
            properties: {}
    CreateGitXWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateGitXWebhookResponse'
          examples:
            Example 1:
              value:
                webhook_identifier: <IDENTIFIER>
    UpdateGitXWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateGitXWebhookResponse'
          examples:
            Example 1:
              value:
                webhook_identifier: <IDENTIFIER>
    GetGitXWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitXWebhookResponse'
          examples:
            Example 1:
              value:
                webhook_identifier: <IDENTIFIER>
                webhook_name: <NAME>
                connector_ref: <CONNECTOR_REF>
                repo_name: <REPO_NAME>
                folder_paths:
                  - <FOLDER_PATH>
                is_enabled: true
                event_trigger_time: 0
    ListGitXWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GitXWebhookResponse'
          examples:
            Example 1:
              value:
                - webhook_identifier: <IDENTIFIER>
                  webhook_name: <NAME>
                  connector_ref: <CONNECTOR_REF>
                  repo_name: <REPO_NAME>
                  folder_paths:
                    - <FOLDER_PATH>
                  is_enabled: true
                  event_trigger_time: 0
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    GitXWebhookEventResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              type: string
    ListGitXWebhookEventResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GitXWebhookEventResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    UpdateGitXWebhookEventResponse:
      description: Update GitX Webhook Event Response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitXWebhookEventResponse'
    DeleteGitXWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DeleteGitXWebhookResponse'
          examples:
            Example 1:
              value:
                webhook_identifier: <IDENTIFIER>
    BannerResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BannerResponseDTO'
    BannerListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/BannerResponseDTO'
      headers:
        X-Total-Elements:
          schema:
            type: string
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: string
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: string
          description: Maximum page size in Paginated response.
    BannerBooleanResponse:
      description: >-
        This Response body is used in validate banner identifier endpoint &
        /v1/banners/allowed
      content:
        application/json:
          schema:
            type: boolean
    CertificateResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CertificateResponseDTO'
    CertificateListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CertificateResponseDTO'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    CertificateValidateUniqueIdentifierResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: boolean
    LdapSettingsResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapSettingsResponse'
    LdapValidateResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapValidateResponseDTO'
    LdapGroupResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapGroupResponseDTO'
    LinkGroupToLdapSettings:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UserGroupDTO'
      headers: {}
    UnlinkGroupToLdapSettings:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UserGroupDTO'
    LinkGroupResponse:
      description: ''
    LdapSettingsIterationsResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapSettingsIterations'
    LdapTestLoginResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapTestLoginResponseDTO'
    LdapTestLoginRequest:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapTestLoginRequestDTO'
    GetGitXWebhookEventFileValidationResponse:
      description: Get GitX Webhook Event File Validation Response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GetGitXWebhookEventFileValidationResponse'
    PrometheusMetricsResponse:
      type: object
      additionalProperties:
        type: object
    ListGitXWebhookBranchesResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ListGitXWebhookBranchesDTO'
    ListWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/WebhookResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    CreateWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateWebhookResponse'
      headers: {}
    GetWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WebhookResponse'
    UpdateWebhookResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateWebhookResponse'
    OidcProviderResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OidcProviderDTO'
    OidcProvidersResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/OidcProviderDTO'
    MsTeamsTokenResponse:
      description: Example response
      content:
        application/json:
          schema:
            properties:
              token_type:
                type: string
                enum:
                  - Bearer
              scope:
                type: string
              expires_in:
                type: integer
              ext_expires_in:
                type: integer
              access_token:
                type: string
              refresh_token:
                type: string
    ConfluenceTokenResponse:
      description: Confluence Token Response
      content:
        application/json:
          schema:
            type: object
            properties:
              access_token:
                type: string
              scope:
                type: string
              expires_in:
                type: integer
              token_type:
                type: string
              refresh_token:
                type: string
    SlackTokenResponse:
      description: Example response
      content:
        application/json:
          schema:
            properties:
              ok:
                type: boolean
                description: Indicates whether the request was successful.
              app_id:
                type: string
                description: The ID of the Slack application.
              authed_user:
                type: object
                description: The authenticated user details.
                $ref: '#/components/schemas/AuthedUser'
              scope:
                type: string
                description: The scopes granted to the application.
              token_type:
                type: string
                description: The type of token issued.
              access_token:
                type: string
                description: The access token for the application.
              bot_user_id:
                type: string
                description: The bot user ID associated with the token.
              refresh_token:
                type: string
                description: The refresh token for the application.
              expires_in:
                type: integer
                description: The number of seconds until the token expires.
              team:
                description: The team information.
                $ref: '#/components/schemas/Team'
              enterprise:
                $ref: '#/components/schemas/Enterprise'
                description: Enterprise details if available.
              is_enterprise_install:
                type: boolean
                description: Indicates if the installation is for an enterprise.
    ConnectorTestConnectionResponse:
      description: This has test connection details for the Connector defined in Harness.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorTestConnectionResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorTestConnectionResponse'
    ConnectorResponse:
      description: Connector response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorResponse'
          examples:
            example-connector-response-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  description: example_connector
                  spec:
                    type: GitHttp
                    url: https://github.com/example/example-repo.git
                    branch: example_branch
                    connection_type: Repo
                    username: git-http-user
                    password_ref: account.git-http-password
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorResponse'
          examples:
            example-connector-response-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  description: example_connector
                  spec:
                      type: GitHttp
                      url: 'https://github.com/example/example-repo.git'
                      branch: example_branch
                      connection_type: Repo
                      username: git-http-user
                      password_ref: account.git-http-password
                created: 1234567890
                updated: 1234567890
    ConnectorListResponse:
      description: Connector list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ConnectorResponse'
          examples:
            example-list-connector-response-json:
              value:
                - connector:
                    name: example_connector
                    identifier: example_connector
                    org: default
                    project: example_project
                    tags:
                      property1: example_connector
                    description: example_connector
                    spec:
                      type: GitHttp
                      url: https://github.com/example/example-repo.git
                      branch: example_branch
                      connection_type: Repo
                      username: git-http-user
                      password_ref: account.git-http-password
                  created: 1234567890
                  updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorResponse'
          examples:
            example-list-connector-response-yaml:
              value: |
                - connector:
                    name: example_connector
                    identifier: example_connector
                    org: default
                    project: example_project
                    tags:
                      property1: example_connector
                    description: example_connector
                    spec:
                        type: GitHttp
                        url: 'https://github.com/example/example-repo.git'
                        branch: example_branch
                        connection_type: Repo
                        username: git-http-user
                        password_ref: account.git-http-password
                  created: 1234567890
                  updated: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ResourceGroupsListResponse:
      description: Resource Groups List response body
      content:
        application/json:
          schema:
            type: array
            description: List of Resource Groups
            items:
              $ref: '#/components/schemas/ResourceGroupsResponse'
          examples:
            resource-group-list-response:
              value:
                - identifier: example_resource_group
                  name: Example Resource Group
                  color: '#0063F7'
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  description: This is an Example Resource Group
                  allowed_scope_levels:
                    - account
                  included_scope:
                    - filter: EXCLUDING_CHILD_SCOPES
                      account: sample_account
                      org: sample_organization
                      project: sample_project
                  resource_filter:
                    - resource_type: resource
                      identifiers:
                        - example_resource
                      attribute_name: resource_attribute
                      attribute_values:
                        - example_resource_attribute
                  include_all_resources: false
                  harness_managed: true
                  created: 1234567890
                  updated: 1234567890
        application/yaml:
          schema:
            type: array
            description: List of Resource Groups
            items:
              $ref: '#/components/schemas/ResourceGroupsResponse'
          examples:
            resource-group-list-response:
              value: |
                - identifier: example_resource_group
                  name: Example Resource Group
                  color: '#0063F7'
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  description: This is an Example Resource Group
                  allowed_scope_levels:
                    - account
                  included_scope:
                    - filter: EXCLUDING_CHILD_SCOPES
                      account: sample_account
                      org: sample_organization
                      project: sample_project
                  resource_filter:
                    - resource_type: resource
                      identifiers:
                        - example_resource
                      attribute_name: resource_attribute
                      attribute_values:
                        - example_resource_attribute
                  include_all: false
                  harness_managed: true
                  created: 1234567890
                  updated: 1234567890
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ResourceGroupsResponse:
      description: Resource Group response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResourceGroupsResponse'
          examples:
            resource-group-response:
              value:
                identifier: example_resource_group
                name: Example Resource Group
                color: '#0063F7'
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                description: This is an Example Resource Group
                allowed_scope_levels:
                  - account
                included_scope:
                  - filter: EXCLUDING_CHILD_SCOPES
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                resource_filter:
                  - resource_type: resource
                    identifiers:
                      - example_resource
                    attribute_name: resource_attribute
                    attribute_values:
                      - example_resource_attribute
                include_all_resources: false
                harness_managed: true
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/ResourceGroupsResponse'
          examples:
            resource-group-response:
              value: |
                identifier: example_resource_group
                name: Example Resource Group
                color: '#0063F7'
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                description: This is an Example Resource Group
                allowed_scope_levels:
                  - account
                included_scope:
                  - filter: EXCLUDING_CHILD_SCOPES
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                resource_filter:
                  - resource_type: resource
                    identifiers:
                      - example_resource
                    attribute_name: resource_attribute
                    attribute_values:
                      - example_resource_attribute
                include_all: false
                harness_managed: true
                created: 1234567890
                updated: 1234567890
    StreamingDestinationResponse:
      description: Streaming Destination response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StreamingDestinationResponse'
          examples:
            example-streaming-destination-response:
              value:
                streaming_destination:
                  identifier: example_destination
                  name: example desitnation name
                  status: ACTIVE
                  connector_ref: account.example_connector
                  spec:
                    type: AWS_S3
                    bucket: example_bucket
                created: 1670304106000
                update: 1670304106000
    StreamingDestinationListResponse:
      description: Streaming Destination list response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/StreamingDestinationResponse'
          examples:
            example-list-streaming-destination-response:
              value:
                - streaming_destination:
                    identifier: example_destination
                    name: example desitnation name
                    status: ACTIVE
                    connector_ref: account.example_connector
                    spec:
                      type: AWS_S3
                      bucket: example_bucket
                  created: 1670304106000
                  update: 1670304106000
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    StreamingDestinationValidateResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: boolean
            description: >-
              It returns true if the Identifier is unique and false if the
              Identifier is not unique
    StreamingDestinationCardsResponse:
      description: Streaming Destination cards response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StreamingDestinationCards'
    StreamingDestinationAggregateListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/StreamingDestinationAggregateDTO'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    AuditListResponse:
      description: ''
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/AuditEventDTO'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    NotificationChannelListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/NotificationChannelDTO'
        application/xml:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
        text/html:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
        text/plain:
          schema:
            type: object
            properties: {}
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    NotificationChannelResponse:
      description: Notification channel response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
        application/xml:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
    NotificationRuleResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
        application/xml:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
    NotificationRuleListResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/NotificationRuleDTO'
        application/xml:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    NotificationResourceList:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/NotificationResourceDTO'
      headers: {}
    ValidateIdentifierResponse:
      description: ''
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidateIdentifierDTO'
    SaveAttachmentResponse:
      description: Save Notification Attachment Response
      content:
        application/json:
          schema:
            type: string
            description: File Id of the attachment saved
    PipelineCreateResponseBody:
      description: Pipeline response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineCreateResponseBody'
          examples:
            example-pipeline:
              value:
                identifier: example_pipeline
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineCreateResponseBody'
          examples:
            example-pipeline:
              value: |
                identifier: example_pipeline
    TriggerResponseBody:
      description: Trigger response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TriggerResponseBody'
        application/yaml:
          schema:
            $ref: '#/components/schemas/TriggerResponseBody'
    TriggerGetResponseBody:
      description: Pipeline response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TriggerGetResponseBody'
        application/yaml:
          schema:
            $ref: '#/components/schemas/TriggerGetResponseBody'
    PipelineValidationResponseBody:
      description: Pipeline Validation response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineValidationResponseBody'
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineValidationResponseBody'
    PipelineValidationUUIDResponseBody:
      description: Contains the UUID of the Pipeline Validation Event that's started
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineValidationUUIDResponseBody'
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineValidationUUIDResponseBody'
    PipelineGetResponseBody:
      description: Pipeline response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineGetResponseBody'
          examples:
            example-response:
              value:
                pipeline_yaml: example_yaml_text
                template_applied_pipeline_yaml: example_yaml_text_with_template
                identifier: example_pipeline
                name: ExamplePipeline
                org: example_org
                project: example_project
                description: Pipeline Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                modules:
                  - cd
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                valid: true
                yaml_error_wrapper:
                  message: something is incorrect
                  message_fqn: something is incorrect at pipeline.name
                  stage_info:
                    identifier: example_stage
                    type: stage
                    name: Example Stage
                    fqn: pipeline.stages.stage
                  step_info:
                    identifier: example_step
                    type: string
                    name: string
                    fqn: pipeline.steps.step
                  fqn: pipeline.name
                  hint_message: try changing something
                cache_response_metadata:
                  cache_state: VALID_CACHE
                  ttl_left: 9223372036854776000
                  last_updated_at: 9223372036854776000
                created: 1234567890
                updated: 1234567890
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineGetResponseBody'
          examples:
            example-response:
              value: |
                pipeline_yaml: example_yaml_text
                template_applied_pipeline_yaml: example_yaml_text_with_template
                identifier: example_pipeline
                name: ExamplePipeline
                org: example_org
                project: example_project
                description: Pipeline Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                modules:
                  - cd
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                valid: true
                yaml_error_wrapper:
                  message: something is incorrect
                  message_fqn: something is incorrect at pipeline.name
                  stage_info:
                    identifier: example_stage
                    type: stage
                    name: Example Stage
                    fqn: pipeline.stages.stage
                  step_info:
                    identifier: example_step
                    type: string
                    name: string
                    fqn: pipeline.steps.step
                  fqn: pipeline.name
                  hint_message: try changing something
                cache_response_metadata:
                  cache_state: VALID_CACHE
                  ttl_left: 9223372036854776000
                  last_updated_at: 9223372036854776000
                created: 1234567890
                updated: 1234567890
    PipelineListResponseBody:
      description: Response body for List Pipelines.
      content:
        application/json:
          schema:
            description: Response body for List Pipelines.
            type: array
            items:
              $ref: '#/components/schemas/PipelineListResponseBody'
          examples:
            example-list-response:
              value:
                - identifier: example_pipeline
                  name: Example Pipeline
                  description: This is an Example Pipeline
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  created: 1234567890
                  updated: 1234567890
                  modules:
                    - CD
                  recent_execution_info:
                    - executor_info:
                        trigger_type: NOOP
                        username: harness_user
                        email: noreply@harness.io
                      execution_id: example_execution_identifier
                      execution_status: Running
                      started: 1234567890
                      ended: 1234567890
                      run_number: 5
                      parent_stage_info:
                        has_parent_pipeline: true
                        execution_id: example_parent_execution_identifier
                        identifier: example_parent_pipeline_id
                        project_id: example_project_id
                        org_id: example_org_id
                        run_sequence: 12671687
                        stage_node_id: example_stage_node_id
                  store_type: REMOTE
                  connector_ref: example_connector
                  valid: true
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
        application/yaml:
          schema:
            description: Response body for List Pipelines.
            type: array
            items:
              $ref: '#/components/schemas/PipelineListResponseBody'
          examples:
            example-list-response:
              value: |
                - identifier: example_pipeline
                  name: Example Pipeline
                  description: This is an Example Pipeline
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  created: 1234567890
                  updated: 1234567890
                  modules:
                    - CD
                  recent_execution_info:
                    - executor_info:
                        trigger_type: NOOP
                        username: harness_user
                        email: noreply@harness.io
                      execution_id: example_execution_identifier
                      execution_status: Running
                      started: 1234567890
                      ended: 1234567890
                      run_number: 5
                      parent_stage_info:
                        has_parent_pipeline: true
                        execution_id: example_parent_execution_identifier
                        identifier: example_parent_pipeline_id
                        project_id: example_project_id
                        org_id: example_org_id
                        run_sequence: 12671687
                        stage_node_id: example_stage_node_id
                  store_type: REMOTE
                  connector_ref: example_connector
                  valid: true
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    InputSetResponseBody:
      description: Input Set response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetResponseBody'
          examples:
            example-input-set:
              value:
                input_set_yaml: example_input_set_yaml
                identifier: example_input_set
                name: Example Input Set
                org: example_org
                project: example_project
                description: InputSet Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                created: 1234567890
                updated: 9876543210
                error_details:
                  valid: false
                  message: Some fields in the Input Set are invalid.
                  outdated: true
                  error_pipeline_yaml: >
                    serviceConfig:
                    "pipeline.stages.example_deploy_stage.spec.serviceConfig"
                  fqn_errors:
                    - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
                      errors:
                        - field_name: serviceConfig
                          message: Field not a runtime input
                          identifier_of_error_source: example_input_set
                  invalid_refs:
                    - example_invalid_input_set
        application/yaml:
          schema:
            $ref: '#/components/schemas/InputSetResponseBody'
          examples:
            example-input-set:
              value: |
                input_set_yaml: example_input_set_yaml
                identifier: example_input_set
                name: Example Input Set
                org: example_org
                project: example_project
                description: InputSet Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                created: 1234567890
                updated: 9876543210
                error_details:
                  valid: false
                  message: Some fields in the Input Set are invalid.
                  outdated: true
                  error_pipeline_yaml: |
                    serviceConfig: "pipeline.stages.example_deploy_stage.spec.serviceConfig"
                  fqn_errors:
                    - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
                      errors:
                        - field_name: serviceConfig
                          message: Field not a runtime input
                          identifier_of_error_source: example_input_set
                  invalid_refs:
                    - example_invalid_input_set
    InputSetListResponseBody:
      description: Input Set response body
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/InputSetResponseBody'
          examples:
            example-input-sets:
              value:
                - input_set_yaml: example_input_set_yaml
                  identifier: example_input_set
                  name: Example Input Set
                  org: example_org
                  project: example_project
                  description: InputSet Description
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  created: 1234567890
                  updated: 9876543210
                  error_details:
                    valid: false
                    message: Some fields in the Input Set are invalid.
                    outdated: true
                    error_pipeline_yaml: >
                      serviceConfig:
                      "pipeline.stages.example_deploy_stage.spec.serviceConfig"
                    fqn_errors:
                      - fqn: >-
                          pipeline.stages.example_deploy_stage.spec.serviceConfig
                        errors:
                          - field_name: serviceConfig
                            message: Field not a runtime input
                            identifier_of_error_source: example_input_set
                    invalid_refs:
                      - example_invalid_input_set
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/InputSetResponseBody'
          examples:
            example-input-sets:
              value: |
                - input_set_yaml: example_input_set_yaml
                  identifier: example_input_set
                  name: Example Input Set
                  org: example_org
                  project: example_project
                  description: InputSet Description
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  created: 1234567890
                  updated: 9876543210
                  error_details:
                    valid: false
                    message: Some fields in the Input Set are invalid.
                    outdated: true
                    error_pipeline_yaml: |
                      serviceConfig: "pipeline.stages.example_deploy_stage.spec.serviceConfig"
                    fqn_errors:
                      - fqn: pipeline.stages.example_deploy_stage.spec.serviceConfig
                        errors:
                          - field_name: serviceConfig
                            message: Field not a runtime input
                            identifier_of_error_source: example_input_set
                    invalid_refs:
                      - example_invalid_input_set
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    InputsResponseBody:
      description: Inputs Response Body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputsResponseBody'
          examples:
            inputs-response-body:
              value:
                inputs:
                  key1:
                    prompt: false
                    required: false
                    default: golang
                    type: string
                    desc: sample desc
                  key2:
                    prompt: true
                    required: true
                    type: string
                    desc: sample desc
                  key3:
                    prompt: false
                    required: false
                    type: number
                  key4:
                    prompt: false
                    required: true
                    type: secret
                    desc: sample desc
                    enums:
                      - enum1
                      - enum2
                options:
                  clone:
                    ref:
                      type:
                        prompt: false
                        required: true
                        type: string
                        enums:
                          - enum1
                          - enum2
                          - enum3
                      name:
                        prompt: false
                        required: true
                        type: string
    PipelineMoveConfigResponseBody:
      description: Response body for moving a pipeline configuration.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineMoveConfigResponseBody'
    InputSetMoveConfigResponseBody:
      description: Response body for moving an input set configuration.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetMoveConfigResponseBody'
    PipelineSaveResponseBody:
      description: Response body for pipeline save.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineSaveResponseBody'
    InputSetImportResponseBody:
      description: Response body for input set import.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetImportResponseBody'
    ApprovalInstanceResponseBody:
      description: Approval Instance response body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApprovalInstanceResponseBody'
          examples:
            example-approval-instance:
              value:
                id: example_approval_instance
                type: HarnessApproval
                status: WAITING
                deadline: 1683953545329
                details:
                  approvalMessage: |-
                    Please review the following information
                    and approve the pipeline progression
                  includePipelineExecutionHistory: true
                  approvers:
                    userGroups:
                      - example_usergroup_1
                      - example_usergroup_2
                    minimumCount: 3
                    disallowPipelineExecutor: false
                  approvalActivities: []
                  approverInputs:
                    - name: example_input_1
                      defaultValue: example_value_1
                    - name: example_input_2
                      defaultValue: example_value_2
                  validatedApprovalUserGroups:
                    - accountIdentifier: example_account_identifier
                      orgIdentifier: example_org_identifier
                      projectIdentifier: example_project_identifier
                      identifier: example_usergroup_1
                      name: Example Usergroup 1
                    - accountIdentifier: example_account_identifier
                      orgIdentifier: example_org_identifier
                      projectIdentifier: example_project_identifier
                      identifier: example_usergroup_2
                      name: Example Usergroup 2
                  autoRejectEnabled: false
                  created: 1683867145351
                  updated: 1683867145351
                error_message: example error message
        application/yaml:
          schema:
            $ref: '#/components/schemas/ApprovalInstanceResponseBody'
          examples:
            example-approval-instance:
              value: |
                id: example_approval_instance
                type: HarnessApproval
                status: WAITING
                deadline: 1683953545329
                details:
                  approvalMessage: |-
                    Please review the following information
                    and approve the pipeline progression
                  includePipelineExecutionHistory: true
                  approvers:
                    userGroups:
                      - example_usergroup_1
                      - example_usergroup_2
                    minimumCount: 3
                    disallowPipelineExecutor: false
                  approvalActivities: []
                  approverInputs:
                    - name: example_input_1
                      defaultValue: example_value_1
                    - name: example_input_2
                      defaultValue: example_value_2
                  validatedApprovalUserGroups:
                    - accountIdentifier: example_account_identifier
                      orgIdentifier: example_org_identifier
                      projectIdentifier: example_project_identifier
                      identifier: example_usergroup_1
                      name: Example Usergroup 1
                    - accountIdentifier: example_account_identifier
                      orgIdentifier: example_org_identifier
                      projectIdentifier: example_project_identifier
                      identifier: example_usergroup_2
                      name: Example Usergroup 2
                  autoRejectEnabled: false
                  created: 1683867145351
                  updated: 1683867145351
                error_message: example error message
    ApprovalInstanceListResponseBody:
      description: Approval Instances list response body
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ApprovalInstanceResponseBody'
          examples:
            example-approval-instances:
              value:
                - id: example_approval_instance
                  type: HarnessApproval
                  status: WAITING
                  deadline: 1683953545329
                  details:
                    approvalMessage: |-
                      Please review the following information
                      and approve the pipeline progression
                    includePipelineExecutionHistory: true
                    approvers:
                      userGroups:
                        - example_usergroup_1
                        - example_usergroup_2
                      minimumCount: 3
                      disallowPipelineExecutor: false
                    approvalActivities: []
                    approverInputs:
                      - name: example_input_1
                        defaultValue: example_value_1
                      - name: example_input_2
                        defaultValue: example_value_2
                    validatedApprovalUserGroups:
                      - accountIdentifier: example_account_identifier
                        orgIdentifier: example_org_identifier
                        projectIdentifier: example_project_identifier
                        identifier: example_usergroup_1
                        name: Example Usergroup 1
                      - accountIdentifier: example_account_identifier
                        orgIdentifier: example_org_identifier
                        projectIdentifier: example_project_identifier
                        identifier: example_usergroup_2
                        name: Example Usergroup 2
                    autoRejectEnabled: false
                    created: 1683867145351
                    updated: 1683867145351
                  error_message: example error message
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ApprovalInstanceResponseBody'
          examples:
            example-approval-instances:
              value: |
                - id: example_approval_instance
                  type: HarnessApproval
                  status: WAITING
                  deadline: 1683953545329
                  details:
                    approvalMessage: |-
                      Please review the following information
                      and approve the pipeline progression
                    includePipelineExecutionHistory: true
                    approvers:
                      userGroups:
                        - example_usergroup_1
                        - example_usergroup_2
                      minimumCount: 3
                      disallowPipelineExecutor: false
                    approvalActivities: []
                    approverInputs:
                      - name: example_input_1
                        defaultValue: example_value_1
                      - name: example_input_2
                        defaultValue: example_value_2
                    validatedApprovalUserGroups:
                      - accountIdentifier: example_account_identifier
                        orgIdentifier: example_org_identifier
                        projectIdentifier: example_project_identifier
                        identifier: example_usergroup_1
                        name: Example Usergroup 1
                      - accountIdentifier: example_account_identifier
                        orgIdentifier: example_org_identifier
                        projectIdentifier: example_project_identifier
                        identifier: example_usergroup_2
                        name: Example Usergroup 2
                    autoRejectEnabled: false
                    created: 1683867145351
                    updated: 1683867145351
                  error_message: example error message
    GitMetadataUpdateResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateResponseBody'
    IndividualSchemaResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IndividualSchemaResponseBody'
    PipelineExecuteResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineExecuteResponseBody'
    StepsDataResponseBody:
      description: Steps data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StepsDataResponseBody'
          examples:
            example-1:
              value:
                name: Library
                steps_data: []
                step_categories:
                  - name: Continuous Deployment
                    steps_data: []
                    step_categories:
                      - name: GitOps
                        steps_data:
                          - name: GitOps Merge PR
                            type: MergePR
                            disabled: false
                            feature_restriction_name: null
                          - name: Update GitOps App
                            type: UpdateGitOpsApp
                            disabled: false
                            feature_restriction_name: null
                        step_categories: []
                      - name: Kubernetes
                        steps_data:
                          - name: Canary Deployment
                            type: K8sCanaryDeploy
                            disabled: false
                            feature_restriction_name: null
                          - name: Canary Delete
                            type: K8sCanaryDelete
                            disabled: false
                            feature_restriction_name: null
                          - name: Apply
                            type: K8sApply
                            disabled: false
                            feature_restriction_name: null
                        step_categories: []
    PipelineInputSchemaDetailsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineInputSchemaDetailsResponseBody'
    MergeInputSetResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MergeInputSetResponseBody'
    StageExecutionResponseList:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StageExecutionResponseList'
    TemplateResponse:
      description: Template Response Body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateResponse'
          examples:
            example-1:
              value:
                account: example_account
                org: example_organization
                project: example_project
                identifier: example_template
                name: Example_template
                description: string
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                version_label: example_version
                entity_type: Stage
                child_type: example_child_type
                scope: org
                version: 1234567890
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                updated: 1234567890
                store_type: INLINE
                connector_ref: example_connector_ref
                stable_template: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateResponse'
          examples:
            example-1:
              value: |
                account: example_account
                org: example_organization
                project: example_project
                identifier: example_template
                name: Example_template
                description: string
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                version_label: example_version
                entity_type: Stage
                child_type: example_child_type
                scope: org
                version: 1234567890
                git_details:
                  object_id: example_object
                  branch_name: branch
                  file_path: /folder/file.json
                  repo_name: example_repository
                  commit_id: abcd123
                  file_url: www.repo/folder/file.com
                  repo_url: www.repo.com
                updated: 1234567890
                store_type: INLINE
                connector_ref: example_connector_ref
                stable_template: true
    TemplateWithInputsResponse:
      description: Template With Input reference
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateWithInputsResponse'
          examples:
            example-1:
              value:
                template:
                  account: example_account
                  org: example_organization
                  project: example_project
                  identifier: example_template
                  name: Example_template
                  description: string
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    template:
                      name: Example_template
                      identifier: example_template
                      versionLabel: v1
                      type: Stage
                      tags: {}
                      spec:
                        type: Custom
                        spec:
                          execution:
                            steps:
                              - step:
                                  type: ShellScript
                                  name: ss1
                                  identifier: ss1
                                  spec:
                                    shell: Bash
                                    onDelegate: true
                                    source:
                                      type: Inline
                                      spec:
                                        script: exit 1
                                    environmentVariables: []
                                    outputVariables: []
                                  timeout: 10m
                  version_label: example_version
                  entity_type: Stage
                  child_type: example_child_type
                  scope: org
                  version: 1234567890
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  updated: 1234567890
                  store_type: INLINE
                  connector_ref: example_connector_ref
                  stable_template: true
                inputs: example
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateWithInputsResponse'
          examples:
            example-1:
              value: |
                template:
                  account: example_account
                  org: example_organization
                  project: example_project
                  identifier: example_template
                  name: Example_template
                  description: string
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  yaml: |
                    template:
                      name: Example_template
                      identifier: example_template
                      versionLabel: v1
                      type: Stage
                      tags: {}
                      spec:
                        type: Custom
                        spec:
                          execution:
                            steps:
                              - step:
                                  type: ShellScript
                                  name: ss1
                                  identifier: ss1
                                  spec:
                                    shell: Bash
                                    onDelegate: true
                                    source:
                                      type: Inline
                                      spec:
                                        script: exit 1
                                    environmentVariables: []
                                    outputVariables: []
                                  timeout: 10m
                  version_label: example_version
                  entity_type: Stage
                  child_type: example_child_type
                  scope: org
                  version: 1234567890
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  updated: 1234567890
                  store_type: INLINE
                  connector_ref: example_connector_ref
                  stable_template: true
                inputs: example
    TemplateMetaDataList:
      description: Template Lists Meta Data Response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateMetaDataList'
          examples:
            example-1:
              value:
                - account: example_account
                  org: example_organization
                  project: example_project
                  identifier: example_template
                  name: Example_template
                  description: string
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  version_label: example_version
                  entity_type: Step
                  child_type: example_child_type
                  scope: org
                  version: 1234567890
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  updated: 1234567890
                  store_type: INLINE
                  connector_ref: example_connector_ref
                  stable_template: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateMetaDataList'
          examples:
            example-1:
              value: |
                - account: example_account
                  org: example_organization
                  project: example_project
                  identifier: example_template
                  name: Example_template
                  description: string
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
                  version_label: example_version
                  entity_type: Step
                  child_type: example_child_type
                  scope: org
                  version: 1234567890
                  git_details:
                    object_id: example_object
                    branch_name: branch
                    file_path: /folder/file.json
                    repo_name: example_repository
                    commit_id: abcd123
                    file_url: www.repo/folder/file.com
                    repo_url: www.repo.com
                  updated: 1234567890
                  store_type: INLINE
                  connector_ref: example_connector_ref
                  stable_template: true
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    TemplateUpdateStableResponse:
      description: Template stable version update Response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateUpdateStableResponse'
          examples:
            example-1:
              value:
                stable_version: example_version
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateUpdateStableResponse'
          examples:
            example-1:
              value: |
                stable_version: example_version
    TemplateImportResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateImportResponseBody'
    TemplateSchemaResponse:
      description: Template Schema Response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateSchemaResponse'
    TemplateInputSchemaDetailsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateInputSchemaDetailsResponseBody'
    TemplateUpdateGitMetadataResponse:
      description: Template GitMetadata response
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: boolean
                x-stoplight:
                  id: lnqiaqy3xo6xg
    BackstageEnvVariableResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableResponse'
    BackstageEnvVariableResponseList:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/BackstageEnvVariableResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/BackstageEnvVariableResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    BackstagePermissionsResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstagePermissionsResponse'
    StatusInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StatusInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/StatusInfoResponse'
    StatusInfoResponseV2:
      description: Response for getting status info
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StatusInfoV2'
    LayoutResponse:
      description: Layout response
      content:
        text/plain:
          schema:
            $ref: '#/components/schemas/LayoutResponse'
        application/json:
          schema:
            $ref: '#/components/schemas/LayoutResponse'
    NamespaceResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NamespaceResponse'
        application/xml:
          schema:
            $ref: '#/components/schemas/NamespaceResponse'
    HarnessEntitiesResponse:
      description: Response for harness entities mapping with backstage entities
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HarnessEntitiesResponse'
          examples: {}
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    ImportEntitiesResponse:
      description: Response for import / save harness entities to IDP
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ImportEntitiesResponse'
    PluginInfoResponseList:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/PluginInfoResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/PluginInfoResponse'
    PluginInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PluginInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/PluginInfoResponse'
    PluginDetailedInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PluginDetailedInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/PluginDetailedInfoResponse'
    AppConfigResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AppConfigResponse'
        application/xml:
          schema:
            type: object
            properties: {}
        multipart/form-data:
          schema:
            type: object
            properties: {}
        text/html:
          schema:
            type: object
            properties: {}
    ConnectorInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorInfoResponse'
    ConnectorInfoResponseList:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorInfoResponse'
    MergedPluginConfigResponse:
      description: Merged Config for all Enabled Plugins Response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MergedPluginConfigResponse'
    HarnessEntitiesCountResponse:
      description: Response for harness entities count that can be imported to IDP
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HarnessEntitiesCountResponse'
    PluginRequestResponseList:
      description: Returns all plugin requests for an account
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PluginRequestResponseList'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    GenerateYamlResponse:
      description: >-
        Response contianing entity yaml definition and description about the
        entity
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GenerateYamlResponse'
    AuthInfoResponse:
      description: Response containing auth environment variables and namespace
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AuthInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/AuthInfoResponse'
    AllowListResponse:
      description: Response containing backend url allow list
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AllowListResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/AllowListResponse'
    ConfigurationEntitiesResponse:
      description: Response for configuration screen resources
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigurationEntities'
    ResolvedEnvVariableResponse:
      description: >-
        Returns encrypted string of list of env variables with the decrypted
        value
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResolvedEnvVariableResponse'
          examples: {}
        application/yaml:
          schema:
            type: string
          examples: {}
    DataSourcesResponse:
      description: Response containing list of data sources present in account
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DataSourcesResponse'
        application/xml:
          schema:
            type: object
            properties:
              datasources:
                type: string
                x-stoplight:
                  id: 1f3lviacdjj4f
    ScorecardSummaryInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardSummaryResponse'
    DatapointResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DataPointsResponse'
    ScorecardScoreResponse:
      description: Response for scorecards score
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardScoreResponse'
    EntityScoresResponseList:
      description: Response for all the entity scores
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityScoresResponse'
    ScorecardGraphSummaryResponse:
      description: Response for scorecard's score summary for graph
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardGraphSummaryInfoResponse'
    ScorecardRecalibrateResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateResponse'
    CheckResponseList:
      description: Response for all checks available
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CheckResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CheckResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: integer
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: integer
          description: Maximum page size in Paginated response.
    CheckDetailsResponse:
      description: Response for check details
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CheckDetailsResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CheckDetailsResponse'
    ScorecardResponseList:
      description: Response for all scorecards available
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ScorecardResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ScorecardResponse'
    ScorecardDetailsResponse:
      description: Response for scorecard details
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardDetailsResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScorecardDetailsResponse'
    FacetsResponse:
      description: Response for entity facets
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Facets'
        application/yaml:
          schema:
            $ref: '#/components/schemas/Facets'
    DataSourceDataPointInfoResponse:
      description: Response for getting the data point data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DataSourceDataPointInfoResponse'
    DefaultSaveResponse:
      description: Default response for Save/Edit operations
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DefaultSaveResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/DefaultSaveResponse'
    DataSourceDataPointsMapResponse:
      description: Response for getting the data source and data point map
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DataSourceDataPointsMapResponse'
        application/xml:
          schema:
            type: object
            properties: {}
    LicenseUsageSaveResponse:
      description: Response for license usage save
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LicenseUsageSaveResponse'
    ScorecardStatsResponse:
      description: Response for scorecard stats
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardStatsResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScorecardStatsResponse'
    CheckStatsResponse:
      description: Response for check stats
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CheckStatsResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CheckStatsResponse'
    CheckGraphResponse:
      description: Response for check graph data
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CheckGraph'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CheckGraph'
    ScorecardRecalibrateResponseV2:
      description: Response for async scorecard recalibrate request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateResponseV2'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateResponseV2'
    CustomPluginInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPluginInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPluginInfoResponse'
    BackstageHarnessSyncEntitiesResponse:
      description: Response for backstage harness entities sync
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstageHarnessSyncEntitiesResponse'
    CustomPropertyByFieldResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldResponse'
    CustomPropertyResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPropertyResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPropertyResponse'
    CustomPropertyByEntityGetResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPropertyByEntityGetResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPropertyByEntityGetResponse'
    CustomPropertyByFieldGetResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldGetResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldGetResponse'
    CustomPropertyDeleteByFieldResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldDeleteResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPropertyByFieldDeleteResponse'
    GroupResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GroupResponse'
    GroupResponseList:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GroupResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GroupResponse'
    GroupResponseLayout:
      description: ''
    GroupsYamlResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GroupsYamlResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/GroupsYamlResponse'
    WorkflowsInfoResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WorkflowsInfoResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/WorkflowsInfoResponse'
      headers:
        X-Total-Elements:
          schema:
            type: string
          description: Total number of elements returned in Paginated response.
        X-Page-Number:
          schema:
            type: string
          description: Page number in Paginated response.
        X-Page-Size:
          schema:
            type: string
          description: Maximum page size in Paginated response.
    HomePageLayoutResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HomePageLayoutResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/HomePageLayoutResponse'
    CardResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CardResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CardResponse'
    HomePageLayoutYamlResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HomePageLayoutYamlResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/HomePageLayoutYamlResponse'
    CardIconResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CardIconResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CardIconResponse'
    EntityResponseBody:
      description: >-
        Response containing a complete Entity definition including its metadata,
        relationships, and YAML representation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/EntityResponse'
    EntityConvertResponseBody:
      description: >-
        Response containing the converted Entity YAML in the target format
        (either Backstage or Harness format).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityConvertResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/EntityConvertResponse'
    EntityResponseBodyList:
      description: >
        Response containing a paginated list of Entities matching the filter
        criteria. The response includes the matching entities in the body and
        pagination metadata in the headers. Headers include total element count,
        current page information, and counts for entities owned by or starred by
        the current user.
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityResponse'
      headers:
        X-Total-Elements:
          schema:
            type: integer
          description: Total number of elements that match the filter criteria
        X-Page-Number:
          schema:
            type: integer
          description: Current page number in the paginated response
        X-Page-Size:
          schema:
            type: integer
          description: Maximum number of items per page in the paginated response
        Total-Owned:
          schema:
            type: integer
          description: Total number of entities owned by the current user or their groups
        Total-Starred:
          schema:
            type: integer
          description: Total number of entities marked as favorites by the current user
    EntityKindsResponseBody:
      description: >-
        Response containing a list of all supported Entity Kinds along with
        their display names, descriptions, and counts.
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityKindsResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityKindsResponse'
    EntityFiltersResponseBodyList:
      description: >-
        Response containing available filter options that can be used when
        querying entities, including filter names and their possible values.
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityFiltersResponse'
        application/yaml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EntityFiltersResponse'
    EntityJsonSchemaResponseBody:
      description: >-
        Response containing the JSON Schema for validating Entity definitions,
        which can be used for client-side validation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityJsonSchemaResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/EntityJsonSchemaResponse'
    EntitiesGroupsResponseBody:
      description: >-
        Response containing entities organized in hierarchical groups based on
        account, organization, and project, along with counts at each level.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntitiesGroupsResponse'
        application/yaml:
          schema:
            $ref: '#/components/schemas/EntitiesGroupsResponse'
      headers:
        Total-Owned:
          schema:
            type: integer
          description: Total number of entities owned by the current user or their groups
        Total-Starred:
          schema:
            type: integer
          description: Total number of entities marked as favorites by the current user
    APIKeyResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CfApiKey'
      description: Created
    APIKeysResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiKeys'
      description: OK
    AttributeEditResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AttributeResponseMetadata'
      description: OK
    AttributeResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Attribute'
      description: OK
    AttributesResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Attributes'
      description: OK
    AvailableFlagResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FlagBasicInfos'
      description: OK
    BadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CfError'
      description: Bad request
    Conflict:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CfError'
      description: The specified resource already exists
    EnvironmentPerspectiveResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnvironmentPerspective'
      description: OK
    FeatureEditResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FeatureResponseMetadata'
      description: OK
    FeatureResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Feature'
      description: OK
    FeaturesResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Features'
      description: OK
    GitSyncError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CfError'
      description: An error with git syncing
    InternalServerError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Internal server error
    NotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: The specified resource was not found
    ProxyKeyResponse:
      content:
        application/json:
          schema:
            example:
              createdAt: 1698235128877
              description: A description
              id: b56546aa-62e6-407e-bf14-63691a47b0e0
              identifier: MyProxyKey
              name: My Proxy Key
              organizations:
                org123:
                  projects:
                    project1:
                      environments: []
                      scope: all
                    project2:
                      environments: []
                      scope: prod
                    project3:
                      environments: []
                      scope: non-prod
                    project4:
                      environments:
                        - env1
                        - env2
                        - env3
                      scope: selected
                org456:
                  projects:
                    project1:
                      environments: []
                      scope: all
                    project2:
                      environments: []
                      scope: prod
                    project3:
                      environments: []
                      scope: non-prod
                    project4:
                      environments:
                        - env1
                        - env2
                        - env3
                      scope: selected
              updatedAt: 1698235128877
            properties:
              createdAt:
                description: The date the key was created at in milliseconds
                format: int64
                type: integer
              description:
                description: A description of the Proxy Key
                example: This is a proxy key for production
                type: string
              id:
                description: The ProxyKeys ID
                example: 31B0B299-7635-416D-9E99-CFCAA7ADABEA
                type: string
              identifier:
                description: The Proxy Keys identifier
                example: ProxyKeyOne
                type: string
              name:
                description: The ProxyKeys name
                example: Proxy Key One
                type: string
              organizations:
                $ref: '#/components/schemas/OrganizationDictionary'
              updatedAt:
                description: The date the key was last updated at in milliseconds
                format: int64
                type: integer
              version:
                description: The ProxyKey version
                format: int
                type: integer
            required:
              - id
              - name
              - identifier
              - description
              - createdAt
              - updatedAt
              - version
              - organizations
            type: object
      description: OK
    ProxyKeysCreateResponse:
      content:
        application/json:
          schema:
            properties:
              key:
                example: 0202f58b-d670-44ef-bd1f-323a48c28004
                type: string
            type: object
      description: Created
    ProxyKeysResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProxyKeys'
      description: OK
    SegmentFlagsResponse:
      content:
        application/json:
          schema:
            items:
              $ref: '#/components/schemas/SegmentFlag'
            type: array
      description: OK
    SegmentResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Segment'
      description: OK
    SegmentsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Segments'
      description: OK
    TagEditResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TagResponseMetadata'
      description: OK
    TagsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Tags'
      description: OK
    TargetDetailResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TargetDetail'
      description: OK
    TargetResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Target'
      description: OK
    TargetsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Targets'
      description: OK
    Unauthenticated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Unauthenticated
    Unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Unauthorized
    ArtifactDeploymentsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactDeploymentsDetails'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get docker artifact deployments details
    ArtifactDetailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact details
    ArtifactFileResponse:
      content:
        application/json:
          schema:
            properties:
              downloadUrl:
                description: download url of artifact
                type: string
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - downloadUrl
            type: object
      description: response to head artifact file
    ArtifactLabelResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact label response
    ArtifactStatsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactStats'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact stats response
    ArtifactSummaryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact summary
    ArtifactVersionSummaryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ArtifactVersionSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get docker artifact version summary
    RegistryBadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryError'
      description: Bad request
    ClientSetupDetailsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ClientSetupDetails'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for client setup details
    DockerArtifactDetailIntegrationResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DockerArtifactIntegrationDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get docker artifact integration detail
    DockerArtifactDetailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DockerArtifactDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get docker artifact detail
    DockerArtifactManifestResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DockerArtifactManifest'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get docker artifact manifest
    DockerLayersResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DockerLayersSummary'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact layers
    DockerManifestsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DockerManifests'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get artifact layers
    FileDetailResponse:
      content:
        application/json:
          schema:
            properties:
              files:
                description: A list of Harness Artifact Files
                items:
                  $ref: '#/components/schemas/FileDetail'
                type: array
              itemCount:
                description: The total number of items
                example: 1
                format: int64
                type: integer
              pageCount:
                description: The total number of pages
                example: 100
                format: int64
                type: integer
              pageIndex:
                description: The current page
                example: 0
                format: int64
                type: integer
              pageSize:
                description: The number of items per page
                example: 1
                type: integer
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
              - files
            type: object
      description: response to get artifact files
    HelmArtifactDetailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/HelmArtifactDetail'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get helm artifact detail
    HelmArtifactManifestResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/HelmArtifactManifest'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response to get helm artifact manifest
    ListArtifactLabelResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListArtifactLabel'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list artifact labels
    ListArtifactResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListArtifact'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list artifact
    ListArtifactVersionResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListArtifactVersion'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list versions of artifact
    ListMigrationImageResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListMigrationImage'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: Response for list migration images
    ListRegistryArtifactResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListRegistryArtifact'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list artifact
    ListRegistryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListRegistry'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list registry
    ListReplicationRuleResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListReplicationRule'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: Response for list replication rules
    ListWebhooksExecutionResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListWebhooksExecutions'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: list webhooks executions response
    ListWebhooksResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ListWebhooks'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for list webhooks
    PlainTextResponse:
      content:
        text/plain; charset=utf-8:
          schema:
            example: Hello, world!
            type: string
      description: A plain text response
    Redirect:
      description: Temporary Redirect
      headers:
        Location:
          description: The URL of the redirected resource
          schema:
            format: uri
            type: string
    RegistryResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/Registry'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for create, get and update registry
    ReplicationRuleResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/ReplicationRule'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: Response for replication rule update
    StorageDetailsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/StorageDetails'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for storage details
    Success:
      content:
        application/json:
          schema:
            properties:
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
            type: object
      description: Success Response
    WebhookExecutionResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/WebhookExecution'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: webhook execution response
    WebhookResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/Webhook'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: response for create, get and update webhook
    quarantinePathDeleteResponse:
      content:
        application/json:
          schema:
            properties:
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
            type: object
      description: quarantine path response
    quarantinePathResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/quarantinePath'
              status:
                $ref: '#/components/schemas/RegistryStatus'
            required:
              - status
              - data
            type: object
      description: quarantine path response
    ChangeSetDeploymentYamlResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ChangeSetDeploymentYamlOutput'
      description: Response body for changeSet deployment yaml for an instance
    ChangeSetMetadataResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ChangeSetMetadataOutput'
      description: Response body for changeSetMetadata
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    CustomOperationResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomOperationOutput'
      description: Response for custom property result
    DBInstanceListResponse:
      content:
        application/json:
          schema:
            description: Response body for List Schema
            items:
              $ref: '#/components/schemas/DBInstanceOut'
            type: array
      description: Response body for List Database Schema
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    DBInstanceResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBInstanceOut'
      description: Response body for Database Instance
    DBSchemaListResponse:
      content:
        application/json:
          schema:
            description: Response body for List Schema
            items:
              $ref: '#/components/schemas/DBSchemaOut'
            type: array
      description: Response body for List Database Schema
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    DBSchemaResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBSchemaOut'
      description: Response body for Database Schema
    ErrorResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DbOpsError'
      description: Error Response body
    ExecutionConfigSuccessResponse:
      content:
        application/json:
          schema:
            default: false
            type: boolean
      description: Boolean response for execution config response
    ExecutionConfigTagsResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ExecutionConfigTags'
      description: Response Body for Execution Config for Image tags
    FetchSQLStatementResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DeployedChangesetSqlOutput'
      description: Response Body for Fetching SQL statements
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    InstanceMigrationStateResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InstanceMigrationStateOut'
      description: Response body for migration state of a instance
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    MigrationStateResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MigrationStateOut'
      description: Response body for migration state of a schema
      headers:
        X-Page-Number:
          description: Page number in Paginated response.
          schema:
            type: integer
        X-Page-Size:
          description: Maximum page size in Paginated response.
          schema:
            type: integer
        X-Total-Elements:
          description: Total number of elements returned in Paginated response.
          schema:
            type: integer
    OverviewResponse:
      content:
        application/json:
          schema:
            properties:
              dbInstanceCount:
                type: integer
                x-stoplight:
                  id: e5je7p05bgy6e
              dbSchemaCount:
                type: integer
                x-stoplight:
                  id: vl4i8hl01jg9t
              recentDeployments:
                items:
                  $ref: '#/components/schemas/OverviewResponseOutput'
                maxItems: 5
                type: array
                x-stoplight:
                  id: a3qanidk29h47
            required:
              - dbInstanceCount
              - dbSchemaCount
            type: object
      description: Get Overview Response
    ParsedLogResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ParsedLogOut'
      description: Response body for Log Event
    PipelineStatusResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineStatusOutput'
      description: Response body for Pipeline execution status
    PluginInputsResponse:
      content:
        application/json:
          examples:
            Example 1:
              value:
                dbImages:
                  Image: plugins/drone-liquibase:latest
                  MongoImage: plugins/drone-liquibase-mongo:latest
                downloadImages:
                  artifactoryDownload: plugins/artifactory-download:latest
                  gitClone: harness/drone-git:1.5.6-rootless
                image: plugins/drone-liquibase:latest
                settings:
                  property1: string
                  property2: string
          schema:
            properties:
              dbImages:
                type: object
              defaultConfigs:
                additionalProperties:
                  type: string
                type: object
              downloadImages:
                type: object
              image:
                type: string
              instance:
                $ref: '#/components/schemas/DBInstanceOut'
              propertiesResult:
                additionalProperties:
                  type: string
                  x-stoplight:
                    id: u4r7r5h1vr7wg
                type: object
                x-stoplight:
                  id: fyjz8vfzb4jcs
              schema:
                $ref: '#/components/schemas/DBSchemaOut'
              settings:
                additionalProperties:
                  type: string
                type: object
            type: object
      description: Plugin Inputs Create Response
    SchemaInstanceMetadataResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SchemaInstanceMetadataOutput'
      description: Get schema-instance metadata and images for step execution response
    ComponentListResponseBody:
      description: List of components in the given scope.
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComponentDTO'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    SbomProcessResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SbomProcessResponseBody'
    EnforceSbomResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnforceSbomResponseBody'
    TokenIssueResponseBody:
      description: Response body for token
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TokenIssueResponseBody'
    ArtifactSbomResponseBody:
      description: Response Body for Artifact Sbom
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactSbomResponseBody'
    OrchestrationSummaryResponseBody:
      description: Step Execution Response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OrchestrationSummaryResponse'
    EnforcementSummaryResponseBody:
      description: Enforcement Summary Response Body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnforcementSummaryResponse'
    PolicyViolationResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/PolicyViolation'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    NormaliseSbomResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/NormalizedSbomComponentDTO'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactComponentViewResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactComponentViewResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactDeploymentViewResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactDeploymentViewResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactDetailResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactDetailResponse'
    SbomScorecardResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SbomScorecardResponseBody'
    ConfigResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigResponseBody'
    ExecutionLimitResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ExecutionLimitResponseBody'
    ListConfigsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ConfigResponseBody'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    SaveResponse:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SaveResponse'
    ComponentDriftResponseBody:
      description: Component Drift Response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComponentDrift'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    BaselineResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BaselineResponseBody'
    ArtifactSbomDriftResponseBody:
      description: Response body for calculating drift between 2 artifact versions.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactSbomDriftResponse'
    LicenseDriftResponseBody:
      description: List of license drifts.
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/LicenseDrift'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    RemediationTrackerCreateResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationTrackerCreateResponseBody'
    OrchestrationStepDriftResponseBody:
      description: Response body for calculating drift in step execution.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactSbomDriftResponse'
    RemediationTrackersOverallSummaryResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationTrackersOverallSummaryResponseBody'
    RemediationListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RemediationListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    RemediationDetailsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationDetailsResponse'
    RemediationArtifactDetailResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationArtifactDetailsResponse'
    RemediationTrackerUpdateResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationTrackerUpdateResponseBody'
    RemediationArtifactListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RemediationArtifactListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    RemediationArtifactDeploymentsListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: >-
                #/components/schemas/RemediationArtifactDeploymentsListingResponse
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    RemediationEnvironmentResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/EnvironmentInfo'
    CreateTicketResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateTicketResponse'
    ExemptionListResponseDTO:
      description: ''
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ExemptionResponseDTO'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactListingResponseBodyV2:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactListingResponseV2'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactListingResponsePipelineBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactListingPipelineResponse'
    ProvenanceResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProvenanceResponseBody'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    SaveOrchestrationResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SaveOrchestrationResponseBody'
    ArtifactComponentsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactComponentsResponseBody'
    ArtifactSourcesListingResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactSourcesListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    IntegrationListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/Integration'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    RepoDetailsDTO:
      description: ''
    FetchIntegrationReposResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/RepoDetailsDTO'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ListIntegrationReposResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ListIntegrationReposResponse'
      headers: {}
    CreateIntegrationResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Integration'
    UpdateIntegrationResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateIntegration'
    ComplianceStandardsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceCheck'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ArtifactV2ListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactV2ListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    ComplianceResultResponseBody:
      description: ''
    FetchComplianceResultResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceResultDTO'
    CodeRepositoryListingResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CodeRepositoryListingResponse'
      headers:
        X-Total-Elements:
          $ref: '#/components/headers/X-Total-Elements'
        X-Page-Number:
          $ref: '#/components/headers/X-Page-Number'
        X-Page-Size:
          $ref: '#/components/headers/X-Page-Size'
    CodeRepositoryOverviewResponseBody:
      description: Code Repository Overview Response Body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CodeRepositoryOverview'
    ComplianceResultsEvaluationBreakdownResponse:
      description: ''
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultsEvaluationBreakdown'
    ComplianceChecksStatsResponse:
      description: ''
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceChecksMetrics'
    ComplianceResultsGroupByComplianceIdResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceResultAggregationByType'
    ComplianceEvaluationHistory:
      description: Example response
      content:
        application/json:
          schema:
            type: object
            properties:
              pipelineId:
                type: string
              pipelineExecutionId:
                type: string
              status:
                type: string
            x-examples:
              Example 1:
                pipelineId: string
                pipelineExecutionId: string
                status: PASSED
    FetchComplianceResultByArtifactResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/FetchComplianceResultByArtifactResponseBody'
    FetchArtifactsByComplianceIdResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceArtifactWithExecution'
    FetchArtifactByComplianceIdResponse:
      description: ''
    ComplianceResultsEvaluationBreakdownByArtifactsResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ArtifactComplianceMetrics'
    ComplianceStandardByIdResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceCheck'
    ComplianceEvaluationTrendResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceEvaluationTrend'
    VersionResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/VersionInfo'
    CICDOverviewResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CICDOverviewResponseBody'
    CICDHarnessPipelineResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CICDHarnessPipelineYamlResponseBody'
    HarnessPipelineIntegrationResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HarnessPipelineIntegrationResponse'
    CICDWorklfowPluginsResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CICDWorklfowPluginsResponse'
    PluginResponseBody:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PluginResponseBody'
    IntegrationStepConfigResponseBody:
      description: ''
  parameters:
    Limit:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 30
        maximum: 100
      description: 'Pagination: Number of items to return.'
    Sort:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - identifier
          - name
          - created
          - updated
      description: Parameter on the basis of which sorting is done.
    Order:
      name: order
      in: query
      required: false
      schema:
        type: string
        enum:
          - ASC
          - DESC
      description: Order on the basis of which sorting is done.
    PageIndex:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 0
      description: >-
        Pagination page number strategy: Specify the page number within the
        paginated collection related to the number of items on each page.
    SearchTerm:
      name: search_term
      in: query
      required: false
      schema:
        type: string
      description: >-
        This would be used to filter resources having attributes matching the
        search term.
    OrgParam:
      description: Organization identifier
      in: path
      name: org
      required: true
      schema:
        type: string
    ProjectParam:
      description: Project identifier
      in: path
      name: project
      required: true
      schema:
        type: string
    RoleParam:
      name: role
      in: path
      required: true
      schema:
        type: string
      description: Role identifier
    AccountHeader:
      name: Harness-Account
      in: header
      required: false
      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.
    Page:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 0
      description: "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t"
    Limit1:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 20
        maximum: 1000
      description: Number of items to return per page.
    onlyFavorites:
      name: only_favorites
      in: query
      required: false
      schema:
        type: boolean
      description: >-
        Enable this field to fetch only the entities that are marked as
        favorites.
    SearchTerm1:
      name: search_term
      in: query
      required: false
      schema:
        type: string
      description: >-
        This would be used to filter resources having attributes matching with
        search term.
    ResourceId:
      name: resource_id
      in: query
      required: false
      schema:
        type: string
      description: This would be used to do operations on the favorite entity.
    ForceDelete:
      name: forceDelete
      in: query
      schema:
        type: boolean
        default: false
      description: Enable this field to force delete the entity
    OidcProviderId:
      name: providerIdentifier
      in: path
      schema:
        type: string
      required: true
      description: ProviderId of the OIDC provider
    OrgsQueryParam:
      name: org
      in: query
      required: false
      schema:
        type: array
        items:
          type: string
      description: Identifier field of the organizations the resource is scoped to
    ProjectsQueryParam:
      name: project
      in: query
      required: false
      schema:
        type: array
        items:
          type: string
      description: Identifier field of the projects the resource is scoped to
    OrgPathParam:
      name: org
      in: path
      required: true
      schema:
        type: string
      description: Identifier field of the organization the resource is scoped to
    UserIdPathParam:
      name: user-id
      in: path
      required: true
      schema:
        type: string
      description: This would be used to fetch the Favorites of the user.
    PrivateSecret:
      name: private_secret
      in: query
      schema:
        type: boolean
        default: false
      description: This would be used to define secret as private.
    ProjectPathParam:
      name: project
      in: path
      required: true
      schema:
        type: string
      description: Identifier field of the project the resource is scoped to
    ServicePathParam:
      name: service
      in: path
      required: true
      schema:
        type: string
      description: Identifier field of the service the resource is scoped to
    ServiceIdentifiers:
      name: service_ids
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: List of Service Identifiers
    EnvironmentIdentifiers:
      name: environment_ids
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: List of Environment Identifiers
    InfraIdentifiers:
      name: infra_ids
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: List of Infrastructure Identifiers
    DeploymentType:
      name: deployment_type
      in: query
      required: false
      description: Service Definition Type
      schema:
        type: string
        enum:
          - Kubernetes
          - NativeHelm
          - Ssh
          - WinRm
          - ServerlessAwsLambda
          - AzureWebApp
          - GitOps
          - ECS
          - TAS
          - CustomDeployment
          - Elastigroup
          - Asg
          - GoogleCloudFunctions
          - AwsLambda
          - AWS_SAM
    Sort1:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - name
          - identifier
          - created
          - updated
      description: Parameter on the basis of which sorting is done.
    ResourceType:
      name: resource_type
      in: query
      required: false
      schema:
        type: string
        enum:
          - CONNECTOR
          - DELEGATE
          - PIPELINE
          - SECRET
          - PROJECT
      description: Determines the type of favorite entity requested.
    AgreementType:
      name: agreement_type
      in: query
      required: true
      schema:
        type: string
        enum:
          - AIDA
      description: Type of Agreements.
    ConnectorPathParam:
      name: connector
      in: path
      required: true
      schema:
        type: string
      description: >-
        Identifier field of the scoped connector entity to be used for this
        operation.
    EnvironmentPathParam:
      name: environment
      in: path
      required: true
      schema:
        type: string
      description: >-
        Identifier field of the scoped environment entity to be used for the
        selected operation.
    InfrastructureDefinitionPathParam:
      name: infrastructure-definition
      in: path
      required: true
      schema:
        type: string
      description: >-
        Identifier field of the scoped infrastructure definition entity to be
        used in the selected operation.
    GitXWebhookIdentifier:
      name: gitx-webhook
      in: path
      required: true
      schema:
        type: string
      description: GitX webhook identifier
    UserGroupIdentifierPathParam:
      name: group-id
      in: path
      required: true
      schema:
        type: string
      description: UserGroup Identifier
    BadRequestResponse:
      type: object
      properties:
        error:
          type: string
    PrometheusRequestBody:
      type: object
      properties:
        query:
          type: string
          description: Prometheus query to be executed
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
        accountId:
          type: string
        connectorInfoDTO:
          $ref: '#/components/schemas/ConnectorInfoDTO'
    ConnectorInfoDTO:
      type: object
      properties:
        name:
          type: string
        identifier:
          type: string
        description:
          type: string
        accountIdentifier:
          type: string
        orgIdentifier:
          type: string
        projectIdentifier:
          type: string
        type:
          type: string
        spec:
          type: object
          properties:
            url:
              type: string
            username:
              type: string
            passwordRef:
              type: string
            headers:
              type: array
              items:
                type: object
            delegateSelectors:
              type: array
              items:
                type: string
        uniqueId:
          type: string
        parentUniqueId:
          type: string
    WebhookIdentifier:
      name: webhook
      in: path
      required: true
      schema:
        type: string
      description: Webhook identifier
    Limit2:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 30
        maximum: 1000
      description: Number of items to return per page.
    SearchTerm2:
      name: search_term
      in: query
      required: false
      schema:
        type: string
      description: >-
        This would be used to filter resources having attributes matching with
        search term.
    Sort2:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - name
          - identifier
          - created
          - updated
      description: Parameter on the basis of which sorting is done.
    AccountHeader1:
      name: Harness-Account
      in: header
      required: false
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    ResourceGroupParam:
      name: resource-group
      in: path
      required: true
      schema:
        type: string
      description: Resource Group identifier
    AccountHeader2:
      name: Harness-Account
      in: header
      required: false
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    AccountHeader3:
      name: Harness-Account
      in: header
      required: false
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    Status:
      name: status
      in: query
      required: false
      schema:
        type: string
      description: Status of the Streaming Destination
    StreamingDestinationParam:
      name: streaming-destination
      in: path
      required: true
      schema:
        type: string
      description: Streaming Destination identifier
    Limit3:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 30
        maximum: 1000
      description: Number of items to return per page.
    SearchTerm3:
      name: search_term
      in: query
      required: false
      schema:
        type: string
      description: >-
        This would be used to filter resources having attributes matching with
        search term.
    Sort3:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - name
          - identifier
          - created
          - updated
      description: Parameter on the basis of which sorting is done.
    notification_channel_type:
      name: notification_channel_type
      in: query
      required: false
      schema:
        type: string
      description: Notification Channel Type
    IncludeParentScope:
      name: include_parent_scope
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Include entities from current and parent scopes.
    AccountHeader4:
      name: Harness-Account
      in: header
      required: false
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    Branch:
      name: branch_name
      in: query
      required: false
      schema:
        type: string
      description: Name of the branch (for Git Experience).
    PipelineParam:
      name: pipeline
      in: path
      required: true
      schema:
        type: string
      description: Pipeline identifier
    IgnoreError:
      name: ignoreError
      in: path
      required: false
      schema:
        type: boolean
    TriggerParam:
      name: trigger
      in: path
      required: true
      schema:
        type: string
      description: Trigger identifier
    Sort4:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - name
          - updated
      description: Parameter on the basis of which sorting is done.
    UuidParam:
      name: uuid
      in: path
      required: true
      schema:
        type: string
      description: UUID
    InputSetParam:
      name: input-set
      in: path
      required: true
      schema:
        type: string
      description: Input Set identifier
    PipelineInputSetParam:
      name: pipeline
      in: query
      required: true
      schema:
        type: string
      description: Pipeline identifier for the Input Set.
    ExecutionIdParam:
      name: execution-id
      in: path
      required: true
      schema:
        type: string
      description: Pipeline Execution identifier
    PipelineRepoID:
      name: pipeline_repo_id
      in: query
      required: false
      schema:
        type: string
      description: Github Repo identifier of the Pipeline to which the Input Sets belong
    PipelineBranch:
      name: pipeline_branch
      in: query
      required: false
      schema:
        type: string
      description: Github branch of the Pipeline to which the Input Sets belong
    Org:
      name: org
      in: path
      schema:
        type: string
      required: true
      description: Organization Identifier
    Project:
      name: project
      in: path
      required: true
      schema:
        type: string
      description: Project Identifier
    Template:
      name: template
      in: path
      required: true
      schema:
        type: string
      description: Template Identifier
    Version:
      name: version
      in: path
      required: true
      schema:
        type: string
      description: Version Label for Template
    AccountHeaderParam:
      name: Harness-Account
      in: header
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    Comments:
      name: comments
      in: query
      required: false
      schema:
        type: string
      description: 'Specify comment with respect to changes  '
    ForceDelete1:
      name: forceDelete
      in: query
      schema:
        type: boolean
        default: false
      description: Enable this field to force delete a template
    Limit4:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 30
      description: 'Pagination: Number of items to return'
    Sort5:
      name: sort
      in: query
      required: false
      schema:
        type: string
        enum:
          - identifier
          - name
          - updated
      description: Parameter on the basis of which sorting is done.
    SearchTerm4:
      name: search_term
      in: query
      required: false
      schema:
        type: string
      description: >-
        This would be used to filter resources having attributes matching with
        search term.
    TemplateListType:
      name: type
      in: query
      required: false
      schema:
        type: string
        enum:
          - STABLE_TEMPLATE
          - LAST_UPDATES_TEMPLATE
          - ALL
      description: Template List Type
    IncludeAllTemplatesAccessibleAtScope:
      name: recursive
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Specify true if all accessible Templates are to be included
    GetTemplateInputYaml:
      name: include_yaml
      in: query
      required: false
      schema:
        type: boolean
      description: Use it to get Template along with Input Set YAML
    Branch1:
      name: branch_name
      in: query
      required: false
      schema:
        type: string
      description: Name of the branch
    ParentConnectorRef:
      name: parent_entity_connector_ref
      in: query
      required: false
      schema:
        type: string
      description: Connector ref of parent template if its remote
    ParentRepoName:
      name: parent_entity_repo_name
      in: query
      required: false
      schema:
        type: string
      description: Repo name of parent template if its remote
    ParentAccountId:
      name: parent_entity_account_id
      in: query
      required: false
      schema:
        type: string
      description: Account name of parent template if its remote
    ParentOrgId:
      name: parent_entity_org_id
      in: query
      required: false
      schema:
        type: string
      description: Organization name of parent template if its remote
    ParentProjectId:
      name: parent_entity_project_id
      in: query
      required: false
      schema:
        type: string
      description: Project name of parent entity if its remote
    TemplateNames:
      name: names
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: Template names for filtering
    TemplateIds:
      name: identifiers
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: Template Ids for Filtering
    Description:
      name: description
      in: query
      required: false
      schema:
        type: string
      description: Filter properties description
    EntityType:
      name: entity_types
      in: query
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
          enum:
            - Step
            - Stage
            - Pipeline
            - CustomDeployment
            - MonitoredService
            - SecretManager
      description: Type of Template
    TemplateChildTypes:
      name: child_types
      in: query
      required: false
      schema:
        type: array
        uniqueItems: true
        items:
          type: string
      description: Child types describe the type of Step or stage
    AccountIdentifierQueryParam:
      name: accountIdentifier
      in: query
      required: true
      schema:
        type: string
      description: Unique identifier of the account to operate on
    OrgIdentifierQueryParam:
      name: orgIdentifier
      in: query
      required: false
      schema:
        type: string
        default: null
      description: Unique identifier of the organization within the account
    ProjectIdentifierQueryParam:
      name: projectIdentifier
      in: query
      required: false
      schema:
        type: string
        default: null
      description: Unique identifier of the project within the organization
    KindQueryParam:
      name: kind
      description: >-
        Filter entities by their kind (e.g., component, api, resource, user,
        workflow)
      in: query
      schema:
        type: string
        default: null
    IdentifierParam:
      name: identifier
      in: path
      required: true
      schema:
        type: string
      description: Unique identifier of the entity within its scope and kind
    KindParam:
      name: kind
      in: path
      required: true
      schema:
        type: string
      description: Kind of the entity (e.g., component, api, resource, user, workflow)
    ScopeParam:
      name: scope
      in: path
      required: true
      schema:
        type: string
      description: Scope of the entity (account, account.orgId, account.orgId.projectId)
    AccountHeader5:
      name: Harness-Account
      in: header
      required: false
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to.
    Limit5:
      name: limit
      in: query
      required: false
      schema:
        default: null
        type: integer
      description: 'Pagination: Number of items to return'
    LimitWithRestriction:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 10
        maximum: 100
      description: 'Maximum number of items to return per page (1-100, default: 10)'
    Page1:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: null
      description: "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t"
    Sort6:
      name: sort
      in: query
      required: false
      schema:
        type: string
        default: null
      description: Parameter on the basis of which sorting is done.
    BackstageEnvVariable:
      name: backstage-env-variable
      in: path
      required: true
      schema:
        type: string
      description: Identifier field of the backstage env variable the resource is scoped to
    StatusType:
      name: type
      in: path
      description: Status type
      required: true
      schema:
        type: string
        enum:
          - infra
          - onboarding
          - infra_onboarding
    AccountIdentifier:
      name: accountIdentifier
      in: path
      required: true
      schema:
        type: string
      description: Identifier field of the account the resource is scoped to
    Order1:
      name: order
      in: query
      required: false
      schema:
        type: string
        default: null
      description: Order on the basis of which sorting is done.
    SearchTerm5:
      name: search_term
      in: query
      required: false
      schema:
        type: string
        default: null
      description: >-
        This would be used to filter resources having attributes matching the
        search term.
    LayoutIdentifier:
      name: layout-identifier
      in: path
      required: true
      schema:
        type: string
      description: Layout Identifier
    PluginId:
      name: plugin-id
      in: path
      description: Plugin Identifier
      required: true
      schema:
        type: string
    PluginName:
      name: plugin_name
      in: query
      required: false
      schema:
        type: string
        default: null
      description: 'Plugin name for filtering '
    Enabled:
      name: enabled
      in: query
      required: true
      schema:
        type: boolean
      description: flag for checking enablement/disablement
    ProviderType:
      name: provider-type
      in: path
      description: Provider Type
      required: true
      schema:
        type: string
    AuthId:
      name: auth-id
      in: path
      description: Auth Identifier
      required: true
      schema:
        type: string
        enum:
          - github-auth
          - google-auth
    Namespace:
      name: namespace
      in: query
      required: false
      schema:
        type: string
        default: null
      description: Namespace from where the request is being made
    CheckType:
      name: custom
      in: query
      schema:
        type: boolean
        default: false
      description: Type of checks to be returned
      required: false
    CheckIdentifier:
      name: check-id
      in: path
      description: Check Identifier
      required: true
      schema:
        type: string
    ScorecardIdentifier:
      name: scorecard-id
      in: path
      description: Scorecard Identifier
      required: true
      schema:
        type: string
    EntityIdentifier:
      name: entity_identifier
      in: query
      required: true
      schema:
        type: string
      description: 'Identifier for entity to get the scores for score card '
    ForceDelete2:
      name: force_delete
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: This is used if an entity need to be force deleted
    CatalogKind:
      name: kind
      in: query
      required: true
      schema:
        type: string
      description: This is used to filter backstage catalog entity facets by kind
    NamespacePathParam:
      name: namespace
      in: path
      required: true
      schema:
        type: string
      description: Namespace from where the request is being made
    Meta:
      name: meta
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Custom plugin metadata
    DryRunCatalogCustomProperties:
      name: dry_run
      in: query
      required: false
      schema:
        type: boolean
        default: false
      description: Dry run catalog custom properties
    EntityRef:
      name: entity_ref
      in: query
      required: true
      schema:
        type: string
      description: Identifier for catalog entity
    Property:
      name: property
      in: query
      required: true
      schema:
        type: string
      description: Identifier for catalog property
    GroupIdentifier:
      name: group_idenitfier
      in: query
      required: true
      schema:
        type: string
      description: This is the identifier for the group
    accountQueryParam:
      description: Account Identifier
      examples:
        default:
          value: default
      in: query
      name: accountIdentifier
      required: true
      schema:
        type: string
    archivedQueryParam:
      description: Status of the feature flag
      in: query
      name: archived
      schema:
        type: boolean
    attributeCounts:
      description: Returns attribute
      in: query
      name: attributeCounts
      schema:
        type: boolean
    commitMsgQueryParam:
      allowEmptyValue: true
      description: Git commit message
      in: query
      name: commitMsg
      schema:
        type: string
    customAttributeQueryParam:
      description: Returns only custom attributes
      in: query
      name: customAttributes
      schema:
        type: boolean
    environmentOptionalQueryParam:
      allowEmptyValue: true
      description: Environment
      in: query
      name: environmentIdentifier
      schema:
        type: string
    environmentQueryParam:
      allowEmptyValue: true
      description: Environment Identifier
      in: query
      name: environmentIdentifier
      required: true
      schema:
        type: string
    excludedFeaturesOptionalParam:
      allowEmptyValue: true
      description: Comma separated identifiers to exclude from the response
      in: query
      name: excludedFeatures
      schema:
        type: string
    featuresOptionalParam:
      description: Comma separated identifiers for multiple Features
      in: query
      name: featureIdentifiers
      schema:
        type: string
    flagCounts:
      description: >-
        Returns counts for the different types of flags e.g num active,
        potentially-stale, recently-accessed etc
      in: query
      name: flagCounts
      schema:
        type: boolean
    flagEnabled:
      description: Filter for flags based on if they are enabled or disabled
      in: query
      name: enabled
      schema:
        type: boolean
    flagLifetime:
      description: Filter for flags based on their lifetime (permanent/temporary)
      in: query
      name: lifetime
      schema:
        type: string
    flagNameQueryParam:
      description: Identifier of the feature flag
      in: query
      name: flagNameIdentifier
      schema:
        type: string
    flagStatus:
      description: >-
        Filter for flags based on their status
        (active,never-requested,recently-accessed,potentially-stale)
      in: query
      name: status
      schema:
        type: string
    flagSummary:
      description: Returns summary info on flags if set to true
      in: query
      name: summary
      schema:
        type: boolean
    flagTags:
      description: >-
        Filter for flags based on their tag values supplied as comma separated
        list
      in: query
      name: tags
      schema:
        type: string
    forceDeleteQueryParam:
      description: Permanently deletes the the feature flag
      in: query
      name: forceDelete
      schema:
        type: boolean
    identifier:
      description: Unique identifier for the object in the API.
      in: path
      name: identifier
      required: true
      schema:
        type: string
    identifierQueryParam:
      description: Identifier of the field
      in: query
      name: identifier
      schema:
        type: string
    key:
      description: Unique key for the attribute in the API.
      in: path
      name: key
      required: true
      schema:
        type: string
    kindQueryParam:
      description: Kind of the feature flag
      in: query
      name: kind
      schema:
        enum:
          - json
          - string
          - int
          - boolean
        type: string
    metricsOptionalParam:
      description: Parameter to indicate if metrics data is requested in response
      in: query
      name: metrics
      schema:
        type: boolean
    nameQueryParam:
      allowEmptyValue: true
      description: Name of the field
      in: query
      name: name
      schema:
        type: string
    orgQueryParam:
      description: Organization Identifier
      examples:
        default:
          value: default_org
      in: query
      name: orgIdentifier
      required: true
      schema:
        type: string
    pageNumber:
      description: PageNumber
      in: query
      name: pageNumber
      schema:
        type: integer
    pageSize:
      description: PageSize
      in: query
      name: pageSize
      schema:
        type: integer
    projectQueryParam:
      description: The Project identifier
      in: query
      name: projectIdentifier
      required: true
      schema:
        type: string
    proxyKeySortByField:
      description: SortByField
      in: query
      name: sortByField
      schema:
        enum:
          - name
          - createdAt
          - updatedAt
        type: string
    safSortByField:
      description: SortByField
      in: query
      name: sortByField
      schema:
        enum:
          - name
        type: string
    safSortOrder:
      description: SortOrder
      in: query
      name: sortOrder
      schema:
        enum:
          - ASCENDING
          - DESCENDING
        type: string
    segmentRulesV2QueryParam:
      allowEmptyValue: true
      description: >-
        When set to rules=v2 will return AND rule compatible serving_rules
        field. When not set or set to any other value will return old rules
        field only compatible with OR rules.
      in: query
      name: rules
      schema:
        type: string
    sortByField:
      description: SortByField
      in: query
      name: sortByField
      schema:
        enum:
          - name
          - identifier
          - archived
          - kind
          - modifiedAt
        type: string
    sortOrder:
      description: SortOrder
      in: query
      name: sortOrder
      schema:
        enum:
          - ASCENDING
          - DESCENDING
        type: string
    tagFilterOptionalParam:
      allowEmptyValue: true
      description: Partial Search of Tag Identifiers to filter on
      in: query
      name: tagIdentifierFilter
      schema:
        type: string
    targetFilterOptionalParam:
      allowEmptyValue: true
      description: Identifier of the target to filter on
      in: query
      name: targetIdentifierFilter
      schema:
        type: string
    targetIdentifierQueryParam:
      allowEmptyValue: true
      description: Identifier of the target
      in: query
      name: targetIdentifier
      schema:
        type: string
    targetNameQueryParam:
      allowEmptyValue: true
      description: Name of the target
      in: query
      name: targetName
      schema:
        type: string
    targetOptionalParam:
      allowEmptyValue: true
      description: Identifier of a target
      in: query
      name: targetIdentifier
      schema:
        type: string
    targetSortByField:
      allowEmptyValue: true
      description: SortByField
      in: query
      name: sortByField
      schema:
        enum:
          - createdAt
          - name
          - identifier
        type: string
    targetSortOrder:
      allowEmptyValue: true
      description: SortOrder
      in: query
      name: sortOrder
      schema:
        enum:
          - ASC
          - DESC
        type: string
    AccountIdentifierParam:
      description: Account Identifier
      in: query
      name: accountIdentifier
      schema:
        type: string
    LabelsParam:
      description: Label.
      in: query
      name: label
      schema:
        items:
          type: string
        type: array
    RegistryIdentifierParam:
      description: Registry Identifier
      in: query
      name: reg_identifier
      schema:
        items:
          type: string
        type: array
    RegistryIdentifierPathParam:
      description: Unique registry Identifier in a account.
      in: path
      name: registry_identifier
      required: true
      schema:
        type: string
    RegistryTypeParam:
      description: Registry Type
      in: query
      name: type
      schema:
        enum:
          - VIRTUAL
          - UPSTREAM
        type: string
    artifactParam:
      description: Artifat
      in: query
      name: artifact
      schema:
        type: string
    artifactPathParam:
      description: >
        Name of the artifact.


        The value depends on whether the name contains a slash (`/`):


        - If the artifact name **contains `/`**, append a trailing `/+` at the
        end.
          - Example: `mygroup/myartifact/+`
        - If the artifact name **does not contain `/`**, use the plain name.
          - Example: `myartifact`

        This is used internally to distinguish between namespaced and flat
        artifact names.
      examples:
        flat:
          summary: Flat artifact name
          value: myartifact
        namespaced:
          summary: Namespaced artifact
          value: mygroup/myartifact/+
      in: path
      name: artifact
      required: true
      schema:
        type: string
    artifactTypeParam:
      description: artifact type.
      in: query
      name: artifact_type
      schema:
        enum:
          - model
          - dataset
        type: string
    childVersionParam:
      description: Child version incase of Docker artifacts.
      in: query
      name: childVersion
      schema:
        type: string
    deployedArtifact:
      description: Deployed Artifact Filter.
      in: query
      name: deployed_artifact
      schema:
        type: boolean
    digestOptParam:
      description: Digest.
      in: query
      name: digest
      schema:
        type: string
    digestParam:
      description: Digest.
      in: query
      name: digest
      required: true
      schema:
        type: string
    envType:
      description: env type
      in: query
      name: env_type
      schema:
        description: Environment Type
        enum:
          - PreProduction
          - Production
        type: string
    fileNamePathParam:
      description: Name of Artifact File.
      in: path
      name: file_name
      required: true
      schema:
        type: string
    filePathParam:
      description: filePath
      in: query
      name: file_path
      schema:
        type: string
    fromDateParam:
      description: Date. Format - MM/DD/YYYY
      in: query
      name: from
      schema:
        type: string
    latestVersion:
      description: Latest Version Filter.
      in: query
      name: latest_version
      schema:
        type: boolean
    packageTypeParam:
      description: Registry Package Type
      in: query
      name: package_type
      schema:
        items:
          type: string
        type: array
    RegistrypageNumber:
      description: Current page number
      in: query
      name: page
      schema:
        default: 1
        format: int64
        type: integer
    RegistrypageSize:
      description: Number of items per page
      in: query
      name: size
      schema:
        default: 20
        format: int64
        type: integer
    recursiveParam:
      description: |
        Whether to list registries recursively.

        **Deprecated.** Use the new `scope` parameter.

        * `recursive=true`  → `scope=ancestors`
        * `recursive=false` → `scope=none`
      in: query
      name: recursive
      schema:
        default: false
        type: boolean
    registryRefPathParam:
      description: |
        Reference to the scope in which the registry exists.

        Format depends on the scope:

        - **Account-level**: `account_id/registry_name/+`
        - **Organization-level**: `account_id/org_id/registry_name/+`
        - **Project-level**: `account_id/org_id/project_id/registry_name/+`

        The `/+` suffix is used internally to route scoped requests.
        It must be included **exactly as shown** in the URL.
      examples:
        accountLevel:
          description: Only account ID, scoped at account level
          summary: Account-level registry
          value: acc123/registry123/+
        orgLevel:
          description: Account and org ID, scoped at org level
          summary: Organization-level registry
          value: acc123/org456/registry123/+
        projectLevel:
          description: Account, org, and project ID, scoped at project level
          summary: Project-level registry
          value: acc123/org456/proj789/registry123/+
      in: path
      name: registry_ref
      required: true
      schema:
        type: string
    scopeParam:
      description: >
        **Scope of registries to list**

        * **none** – current space only (default)   * **ancestors** – current
        space **plus** all parent spaces   * **descendants** – current space
        **plus** all child spaces  

        If omitted, `none` is assumed.
      in: query
      name: scope
      schema:
        enum:
          - ancestors
          - descendants
          - none
        type: string
    searchTerm:
      description: search Term.
      in: query
      name: search_term
      schema:
        type: string
    sortField:
      description: sortField
      in: query
      name: sort_field
      schema:
        type: string
    RegistrysortOrder:
      description: sortOrder
      in: query
      name: sort_order
      schema:
        type: string
    spaceRefPathParam:
      description: |
        Reference to the scope in which the registry exists.

        Format depends on the scope:

        - **Account-level**: `account_id/+`
        - **Organization-level**: `account_id/org/+`
        - **Project-level**: `account_id/org/project/+`

        The `/+` suffix is used internally to route scoped requests.
        It must be included **exactly as shown** in the URL.
      examples:
        accountLevel:
          description: Only account ID, scoped at account level
          summary: Account-level registry
          value: acc123/+
        orgLevel:
          description: Account and org, scoped at org level
          summary: Organization-level registry
          value: acc123/org456/+
        projectLevel:
          description: Account, org, and project, scoped at project level
          summary: Project-level registry
          value: acc123/org456/proj789/+
      in: path
      name: space_ref
      required: true
      schema:
        type: string
    spaceRefQueryParam:
      description: |
        Reference to the scope in which the registry exists.

        Format depends on the scope:

        - **Account-level**: `account_id/+`
        - **Organization-level**: `account_id/org/+`
        - **Project-level**: `account_id/org/project/+`

        The `/+` suffix is used internally to route scoped requests.
        It must be included **exactly as shown** in the URL.
      examples:
        accountLevel:
          description: Only account ID, scoped at account level
          summary: Account-level registry
          value: acc123/+
        orgLevel:
          description: Account and org, scoped at org level
          summary: Organization-level registry
          value: acc123/org456/+
        projectLevel:
          description: Account, org, and project, scoped at project level
          summary: Project-level registry
          value: acc123/org456/proj789/+
      in: query
      name: space_ref
      schema:
        type: string
    toDateParam:
      description: Date. Format - MM/DD/YYYY
      in: query
      name: to
      schema:
        type: string
    versionParam:
      description: Version
      in: query
      name: version
      schema:
        type: string
    versionPathParam:
      description: Name of Artifact Version.
      in: path
      name: version
      required: true
      schema:
        type: string
    webhookExecutionIdPathParam:
      description: Unique webhook execution identifier.
      in: path
      name: webhook_execution_id
      required: true
      schema:
        type: string
    webhookIdentifierPathParam:
      description: Unique webhook identifier.
      in: path
      name: webhook_identifier
      required: true
      schema:
        type: string
    DbOpsAccountHeader:
      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.
      in: header
      name: Harness-Account
      schema:
        type: string
    ChangeSetParam:
      description: >-
        FQN of the changeSet deployed. It is the combination of fileName,
        changeSetId and author separated by ::
      in: query
      name: changeSet
      required: true
      schema:
        example: folder1/fileName.yaml::changeSet1::author1
        type: string
    ChangesetMetadataContentType:
      description: 'changesetMetadata contentType. Example : Yaml, Sql'
      in: query
      name: contentType
      required: true
      schema:
        enum:
          - Yaml
          - Sql
        example: Yaml
        type: string
    DBInstanceParam:
      description: database instance unique id
      in: path
      name: dbinstance
      required: true
      schema:
        type: string
    DBSchemaParam:
      description: Identifier of the database schema
      in: path
      name: dbschema
      required: true
      schema:
        maxLength: 128
        type: string
    HarnessCommand:
      description: 'Harness command  Example : Update, Rollback'
      in: query
      name: harnessCommand
      required: true
      schema:
        enum:
          - Update
          - Rollback
          - DBOPSUpdateSQL
          - DBOPSRollbackSQL
          - DBOPSRollbackCountSQL
        example: Update
        type: string
    DbOpsLimit:
      description: 'Pagination: Number of items to return.'
      in: query
      name: limit
      schema:
        default: 10
        maximum: 100
        type: integer
    LogParam:
      in: path
      name: log
      required: true
      schema:
        type: string
    DbOpsOrder:
      description: Order on the basis of which sorting is done.
      in: query
      name: order
      schema:
        default: DESC
        enum:
          - ASC
          - DESC
        type: string
    OrgIdentifier:
      description: Identifier of the organization
      in: query
      name: orgIdentifier
      schema:
        type: string
    DbOpsPageIndex:
      description: >-
        Pagination page number strategy: Specify the page number within the
        paginated collection related to the number of items on each page.
      in: query
      name: page
      schema:
        default: 0
        format: int64
        type: integer
    ParentId:
      description: parent unique id for the scope
      in: query
      name: parent_id
      schema:
        type: string
    PipelineExecutionId:
      description: plan execution Id of the pipeline execution
      in: query
      name: pipelineExecutionId
      required: true
      schema:
        type: string
    PipelineIdentifier:
      description: Pipeline Identifier of the pipeline
      in: path
      name: pipelineIdentifier
      required: true
      schema:
        type: string
    ProjectIdentifier:
      description: Identifier of the project
      in: query
      name: projectIdentifier
      schema:
        type: string
    DbOpsSearchTerm:
      allowEmptyValue: true
      description: >-
        This would be used to filter resources having attributes matching the
        search term.
      in: query
      name: search_term
      schema:
        type: string
    DbOpsSort:
      description: Parameter on the basis of which sorting is done.
      in: query
      name: sort
      schema:
        default: created
        enum:
          - name
          - updated
          - created
        type: string
    StageExecutionId:
      description: stage execution id of the pipeline execution
      in: query
      name: stageExecutionId
      required: true
      schema:
        type: string
    StageNodeId:
      description: Stage Node Id of the pipeline execution
      in: query
      name: stageNodeId
      schema:
        type: string
    OrgParam1:
      name: org
      in: path
      required: true
      schema:
        type: string
      description: Harness organization ID
    ProjectParam1:
      in: path
      required: true
      schema:
        type: string
      description: Harness project ID
      name: project
    OrchestrationId:
      name: orchestration
      in: path
      required: true
      schema:
        type: string
      description: Orchestration ID for SBOM orchestration
    ProvenanceId:
      name: provenance
      in: path
      required: true
      schema:
        type: string
      description: Provenance Id
    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.
    Limit6:
      name: limit
      in: query
      schema:
        type: integer
        default: 30
        maximum: 1000
        minimum: 1
      description: Number of items to return per page.
    Order2:
      name: order
      in: query
      required: false
      schema:
        type: string
        enum:
          - ASC
          - DESC
        default: ASC
      description: Order on the basis of which sorting is done.
    OrderDefaultDesc:
      name: order
      in: query
      required: false
      schema:
        type: string
        enum:
          - ASC
          - DESC
        default: DESC
      description: Order on the basis of which sorting is done.
    Page2:
      name: page
      in: query
      required: false
      schema:
        type: integer
        default: 0
        minimum: 0
      description: "Pagination page number strategy: Specify the page number within the paginated collection related to the number of items in each page\t"
    SearchTerm6:
      name: search_term
      in: query
      required: false
      schema:
        type: string
    Artifact:
      name: artifact
      in: path
      required: true
      schema:
        type: string
      description: Harness artifact identifier
    Tag:
      name: tag
      in: path
      required: true
      schema:
        type: string
      description: Harness artifact tag
    Exemption:
      name: exemption
      in: path
      required: true
      schema:
        type: string
      description: SSCA Enforcement Exemption Id
    EnvType:
      name: EnvType
      in: query
      required: false
      schema:
        type: string
        enum:
          - Prod
          - PreProd
      allowEmptyValue: true
      description: Environment Type
    ImageLayer:
      name: image_layer
      in: query
      required: false
      schema:
        type: string
        enum:
          - BASE
          - APP
          - DISTRO
      description: Filters based on image layer
    SignatureId:
      name: signatureId
      in: path
      required: true
      schema:
        type: string
      description: Signature Id
  requestBodies:
    CreateRoleRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateRoleRequest'
          examples:
            role-request:
              value:
                identifier: example_role
                name: Example_Role
                permissions:
                  - core_view
                description: This is an Example Role
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
        application/yaml:
          schema:
            $ref: '#/components/schemas/CreateRoleRequest'
          examples:
            role-request:
              value: |
                identifier: example_role
                name: Example_Role
                permissions:
                  - core_view
                description: This is an Example Role
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
      description: Role Request body
      required: true
    RoleAssignmentRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RoleAssignment'
          examples:
            role-assignment-request-json:
              value:
                identifier: example_role_assignment
                resource_group: example_resource_group_identifier
                role: example_role_identifier
                principal:
                  scope: ACCOUNT
                  identifier: example_principal_identifier
                  type: USER
                disabled: false
                managed: false
        application/yaml:
          schema:
            $ref: '#/components/schemas/RoleAssignment'
          examples:
            role-assignment-request-yaml:
              value: |
                identifier: example_role_assignment
                resource_group: example_resource_group_identifier
                role: example_role_identifier
                principal:
                  scope: ACCOUNT
                  identifier: example_principal_identifier
                  type: USER
                disabled: false
                managed: false
      description: Role Request body
      required: true
    PublicAccessRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicAccessRequest'
    AccessPolicyAnalysisRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AccessPolicyAnalysisRequest'
      description: >-
        This is the request body that accepts parameters based on which access
        policies will be analysed
    PublicAccessCheckRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PublicAccessCheckRequest'
      description: Request to query if given resources are public or not
    ServiceCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceCreateRequest'
          examples:
            example-1:
              value:
                identifier: example_service
                name: Example_service
                description: This is a example service
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_service"
                    identifier: "example_service"
                    tags: {}
        application/yaml:
          schema:
            $ref: '#/components/schemas/ServiceCreateRequest'
          examples:
            example-1:
              value: |
                identifier: example_service
                name: Example_service
                description: This is a example service
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_service"
                    identifier: "example_service"
                    tags: {}
      description: Create Service request body
      required: true
    ServiceUpdateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceUpdateRequest'
          examples:
            example-1:
              value:
                identifier: example_service
                name: Example_service
                description: This is a example service
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_service"
                    identifier: "example_service"
                    tags: {}
        application/yaml:
          schema:
            $ref: '#/components/schemas/ServiceUpdateRequest'
          examples:
            example-1:
              value: |
                identifier: example_service
                name: Example_service
                description: This is a example service
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_service"
                    identifier: "example_service"
                    tags: {}
      description: Update Service request body
      required: true
    UpdateProjectRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateProjectRequest'
          examples:
            example-project-update-request-json:
              value:
                project:
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
        application/yaml:
          schema:
            $ref: '#/components/schemas/UpdateProjectRequest'
          examples:
            example-project-update-request-yaml:
              value: |
                project:
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
      description: Put the necessary fields for the API to update a Project.
      required: true
    CreateOrganizationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateOrganizationRequest'
          examples:
            example-create-organization-request-json:
              value:
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an Example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
        application/yaml:
          schema:
            $ref: '#/components/schemas/CreateOrganizationRequest'
          examples:
            example-create-organization-request-yaml:
              value: |
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an Example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
      description: Post the necessary fields for the API to create an organization.
      required: true
    UpdateOrganizationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateOrganizationRequest'
          examples:
            example-organization-update-request-json:
              value:
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
        application/yaml:
          schema:
            $ref: '#/components/schemas/UpdateOrganizationRequest'
          examples:
            example-organization-update-request-json:
              value: |
                org:
                  identifier: example_organization
                  name: Example Organization
                  description: This is an example organization
                  tags:
                    example-tag-1: example-tag-1-value
                    example-tag-2: example-tag-2-value
      description: Put the necessary fields for the API to update a organization.
      required: true
    CreateProjectRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateProjectRequest'
          examples:
            example-create-project-request-json:
              value:
                project:
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
        application/yaml:
          schema:
            $ref: '#/components/schemas/CreateProjectRequest'
          examples:
            example-create-project-request-yaml:
              value: |
                project:
                  identifier: example_project_identifier
                  name: example-project-name
                  color: '#0063F7'
                  modules:
                    - CD
                  description: This is a example project
                  tags:
                    property1: value1
                    property2: value2
      description: Post the necessary fields for the API to create a project.
      required: true
    SecretRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecretRequest'
          examples:
            example-ssh-kerberos-tgt-key-tab-file-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKerberosTGTKeyTabFile
                    port: 22
                    principal: example-principal
                    realm: example-realm
                    key_path: key/file/path
            example-ssh-kerberos-tgt-password-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKerberosTGTPassword
                    port: 22
                    principal: example-principal
                    realm: example-realm
                    password: account.example-password
            example-secret-file-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SecretFile
                    secret_manager_identifier: example_secret_manager_identifier
            example-secret-text-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SecretText
                    secret_manager_identifier: example_secret_manager_identifier
                    value_type: Inline
                    value: example_secret_text_value
            example-ssh-key-path-file-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyPath
                    port: 22
                    username: example_username
                    key_path: ssh/key/path
                    encrypted_passphrase: account.example_passphrase
            example-ssh-key-reference-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyReference
                    port: 22
                    username: example_username
                    key: example/secret/key/path
                    encrypted_passphrase: account.example_passphrase
            example-ssh-password-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHPassword
                    port: 22
                    username: example_username
                    password: account.example_password
            example-winrm-ntlm-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmNTLM
                    port: 5986
                    domain: example-domain
                    username: example-username
                    password: example-password
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
            example-winrm-tgt-key-file-tab-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmTGTKeyTabFile
                    port: 5986
                    principal: example-principal
                    realm: example-realm
                    key_path: key/file/path
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
            example-winrm-tgt-password-secret-request-json:
              value:
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmTGTPassword
                    port: 5986
                    principal: example-principal
                    realm: example-realm
                    password: example-password
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
        application/yaml:
          schema:
            $ref: '#/components/schemas/SecretRequest'
          examples:
            example-ssh-kerberos-tgt-key-tab-file-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKerberosTGTKeyTabFile
                    port: 22
                    principal: example-principal
                    realm: example-realm
                    key_path: key/file/path
            example-ssh-kerberos-tgt-password-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKerberosTGTPassword
                    port: 22
                    principal: example-principal
                    realm: example-realm
                    password: account.example-password
            example-secret-file-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SecretFile
                    secret_manager_identifier: example_secret_manager_identifier
            example-secret-text-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SecretText
                    secret_manager_identifier: example_secret_manager_identifier
                    value_type: Inline
                    value: example_secret_text_value
            example-ssh-key-path-file-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyPath
                    port: 22
                    username: example_username
                    key_path: ssh/key/path
                    encrypted_passphrase: account.example_passphrase
            example-ssh-key-reference-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHKeyReference
                    port: 22
                    username: example_username
                    key: example/secret/key/path
                    encrypted_passphrase: account.example_passphrase
            example-ssh-password-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: SSHPassword
                    port: 22
                    username: example_username
                    password: account.example_password
            example-winrm-ntlm-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmNTLM
                    port: 5986
                    domain: example-domain
                    username: example-username
                    password: example-password
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
            example-winrm-tgt-key-file-tab-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmTGTKeyTabFile
                    port: 5986
                    principal: example-principal
                    realm: example-realm
                    key_path: key/file/path
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
            example-winrm-tgt-password-secret-request-yaml:
              value: |
                secret:
                  name: example_secret
                  identifier: example_secret
                  org: default
                  project: example_project
                  tags:
                    property1: example_secret
                  description: example_secret
                  spec:
                    type: WinRmTGTPassword
                    port: 5986
                    principal: example-principal
                    realm: example-realm
                    password: example-password
                    use_ssl: true
                    skip_cert_checks: true
                    use_no_profile: true
        multipart/form-data:
          schema:
            properties:
              spec:
                $ref: '#/components/schemas/SecretRequest'
              file:
                type: string
                format: binary
            required:
              - file
              - spec
          encoding:
            spec:
              contentType: application/json
      required: true
    SecretValidationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecretRequest'
          examples:
            Example 1:
              value:
                secret_manager_identifier: prod_sm_one
                secret_ref_path: path1/path2#key
      description: Details of the secret reference
    IPAllowlistConfigRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IPAllowlistConfigRequest'
    FavoriteRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FavoriteDTO'
          examples:
            ProjectFavConnector:
              value:
                org: org_id
                project: project_id
                user_id: user_id
                module: CD
                resource_type: CONNECTOR
                resource_id: resource_id
    EulaSignRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EulaSignRequest'
    CreateGitXWebhookRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateGitXWebhookRequest'
          examples:
            Example 1:
              value:
                webhook_identifier: <IDENTIFIER>
                repo_name: <REPO_NAME>
                connector_ref: <CONNECTOR_REF>
                folder_paths:
                  - <FOLDER_PATH>
                webhook_name: <NAME>
      description: Create GitX webhook request
    UpdateGitXWebhookRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateGitXWebhookRequest'
          examples:
            Example 1:
              value:
                repo_name: <REPO_NAME>
                connector_ref: <CONNECTOR_REF>
                webhook_name: <NAME>
                folder_paths:
                  - <FOLDER_PATH>
                is_enabled: true
      description: Update GitX webhook request
    BatchReleaseDetailsRequest:
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ReleaseDetailsRequest'
          examples:
            Example 1:
              value:
                - namespace: default
                  release_name: release-pre-deployment-todolist
      description: Batch Release Details request body
    UpdateGitXWebhookEventRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UpdateGitXWebhookEventRequest'
      description: Update GitX Webhook Event Request
    CreateBannerRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BannerDTO'
    CreateCertificateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CertificateDTO'
          examples:
            example-certificate-input-text:
              value:
                name: example_name
                identifier: example_identifier
                org: example_org
                project: example_project
                certificateValue: actual_certificate_content
                tags:
                  property1: tag1
                  property2: tag2
                description: example_description
                inputSpec:
                  type: TEXT
        multipart/form-data:
          schema:
            type: object
            properties:
              spec:
                $ref: '#/components/schemas/CertificateDTO'
              file:
                type: string
                x-stoplight:
                  id: o0m5hvts15hyp
                format: binary
            required:
              - spec
              - file
          examples: {}
    UpdateCertificateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CertificateDTO'
        multipart/form-data:
          schema:
            type: object
            properties:
              spec:
                $ref: '#/components/schemas/CertificateDTO'
              file:
                type: string
                x-stoplight:
                  id: 11s7g7fmuu0xw
                format: binary
            required:
              - spec
    LdapSettingsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapSettingsRequest'
    LinkSSOGroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LinkSSOGroupRequestDTO'
    UnlinkSSOGroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UnlinkSSOGroupRequestDTO'
    EnvironmentCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnvironmentCreateRequest'
          examples:
            example-1:
              value:
                identifier: example_environment_v0
                name: Example_Env_V0
                description: This is a example environment v0
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    name: "Example_Env_V0"
                    identifier: "example_environment_v0"
                    tags: {}
            example-2:
              value:
                identifier: example_environment_v1
                name: Example_Env_V1
                description: This is a example environment v1
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    version: 1
                    kind: Environment
        application/yaml:
          schema:
            $ref: '#/components/schemas/EnvironmentCreateRequest'
          examples:
            example-1:
              value: |
                identifier: example_environment_v0
                name: Example_Env_V0
                description: This is a example environment
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_Env_V0"
                    identifier: "example_environment_v0"
                    tags: {}
      description: Update Environment request body
      required: true
    EnvironmentUpdateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnvironmentUpdateRequest'
          examples:
            example-1:
              value:
                identifier: example_environment_v0
                name: Example_Env_V0
                description: This is a example environment v0
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    name: "Example_Env_V0"
                    identifier: "example_environment_v0"
                    tags: {}
            example-2:
              value:
                identifier: example_environment_v1
                name: Example_Env_V1
                description: This is a example environment v1
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    version: 1
                    kind: Environment
        application/yaml:
          schema:
            $ref: '#/components/schemas/EnvironmentUpdateRequest'
          examples:
            example-1:
              value: |
                identifier: example_environment_v0
                name: Example_Env_V0
                description: This is a example environment
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_Env_V0"
                    identifier: "example_environment_v0"
                    tags: {}
      description: Update Environment request body
      required: true
    InfrastructureCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InfrastructureCreateRequest'
          examples:
            example-1:
              value:
                identifier: example_infrastructure_v0
                name: Example_Infra_V0
                description: This is a example infrastructure v0
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    name: "Example_Infra_V0"
                    identifier: "example_infrastructure_v0"
                    tags: {}
            example-2:
              value:
                identifier: example_infrastructure_v1
                name: Example_Env_V1
                description: This is a example infrastructure v1
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  infrastructure:
                    version: 1
                    kind: Infrastructure
        application/yaml:
          schema:
            $ref: '#/components/schemas/InfrastructureCreateRequest'
          examples:
            example-1:
              value: |
                identifier: example_infrastructure_v0
                name: Example_Infra_V0
                description: This is a example infrastructure
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_Infra_V0"
                    identifier: "example_infrastructure_v0"
                    tags: {}
      description: Create Infrastructure request body
      required: true
    InfrastructureUpdateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InfrastructureUpdateRequest'
          examples:
            example-1:
              value:
                identifier: example_infrastructure_v0
                name: Example_Infra_V0
                description: This is a example infrastructure v0
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  environment:
                    name: "Example_Infra_V0"
                    identifier: "example_infrastructure_v0"
                    tags: {}
            example-2:
              value:
                identifier: example_infrastructure_v1
                name: Example_Env_V1
                description: This is a example infrastructure v1
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  infrastructure:
                    version: 1
                    kind: Infrastructure
        application/yaml:
          schema:
            $ref: '#/components/schemas/InfrastructureUpdateRequest'
          examples:
            example-1:
              value: |
                identifier: example_infrastructure_v0
                name: Example_Infra_V0
                description: This is a example infrastructure
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                yaml: |
                  service:
                    name: "Example_Infra_V0"
                    identifier: "example_infrastructure_v0"
                    tags: {}
      description: Update Infrastructure request body
      required: true
    CronExpressionRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CronExpressionRequestDTO'
    LdapTestLoginRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LdapTestLoginRequestDTO'
    ListWebhookRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ListWebhookRequest'
      description: List webhooks request
    CreateWebhookRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateWebhookRequest'
      description: Create webhook request
    UpdateWebhookRequest:
      content:
        application/json:
          schema:
            type: object
            $ref: '#/components/schemas/UpdateWebhookRequest'
      description: Update webhook request
    UpdateBannerRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BannerDTO'
      description: Request body when updating respective Banner.
    OidcProviderRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OidcProviderDTO'
    GitEntityFindInfoRequestBody:
      description: Optional Git synchronization details for filtering primary manifests.
      required: false
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitEntityFindInfoDTO'
    ConnectorRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorRequest'
          examples:
            example-git-http-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitHttp
                    url: https://github.com/example/example-repo.git
                    branch: example_branch
                    connection_type: Repo
                    username: git-http-user
                    password_ref: account.git-http-password
                    execute_on_delegate: false
            example-git-http-encrypted-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitHttpEncrypted
                    url: https://github.com/example/example-repo.git
                    branch: example_branch
                    connection_type: Repo
                    username_ref: account.git-http-user
                    password_ref: account.git-http-password
                    validation_repo: https://github.com/example/example-validation-repo.git
                    execute_on_delegate: false
            example-git-ssh-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitSsh
                    url: https://github.com/example/example-repo.git
                    branch: example_branch
                    connection_type: Repo
                    ssh_key_ref: account.git-http-password
                    execute_on_delegate: false
            example-appdynamics-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: Appdynamics
                    account_name: appdynamics-account-name
                    controller_url: https://appdynamics.com/controller/
                    username: appdynamics-username
                    password_ref: account.appdynamics-password
                    delegate_selectors: []
            example-appdynamics-client-id-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AppdynamicsClientId
                    account_name: appdynamics-account-name
                    controller_url: https://appdynamics.com/controller/
                    client_id: appdynamics-client-id
                    client_secret_ref: account.appdynamics-client-secret
                    delegate_selectors: []
            example-artifactory-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: Artifactory
                    url: https://artifactory.com/example/example-artifactory
                    username: artifactory-user
                    password_ref: account.artifactory-password
                    delegate_selectors: []
                    execute_on_delegate: false
            example-artifactory-anonymous-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: ArtifactoryAnonymous
                    url: https://artifactory.com/example/example-artifactory
                    delegate_selectors: []
                    execute_on_delegate: false
            example-artifactory-encrypted-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: ArtifactoryEncrypted
                    url: https://artifactory.com/example/example-artifactory
                    username_ref: account.artifactory-user
                    password_ref: account.artifactory-password
                    delegate_selectors: []
                    execute_on_delegate: false
            example-azure-client-certificate-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureClientCertificate
                    delegate_selectors:
                      - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    tenant_id: '1234567890'
                    certificate_ref: account.azure-client-certificate
            example-azure-client-secret-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureClientSecretKey
                    delegate_selectors:
                      - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    tenant_id: '1234567890'
                    secret_ref: account.azure-secret-key
            example-azure-system-assigned-managed-identity-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureInheritFromDelegateSystemAssignedManagedIdentity
                    delegate_selectors:
                      - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
            example-azure-user-assigned-managed-identity-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureInheritFromDelegateUserAssignedManagedIdentity
                    delegate_selectors:
                      - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    client_id: '1234567890'
            example-aws-code-commit-connector-request-json:
              value:
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AwsCodeCommit
                    url: >-
                      https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
                    url_type: Repo
                    access_key_ref: account.aws-access-key
                    secret_key_ref: account.aws-secret-key
        application/yaml:
          schema:
            $ref: '#/components/schemas/ConnectorRequest'
          examples:
            example-git-http-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitHttp
                    url: 'https://github.com/example/example-repo.git'
                    branch: example_branch
                    connection_type: Repo
                    username: git-http-user
                    password_ref: account.git-http-password
                    execute_on_delegate: false
            example-git-http-encrypted-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitHttpEncrypted
                    url: https://github.com/example/example-repo.git
                    branch: example_branch
                    connection_type: Repo
                    username_ref: account.git-http-user
                    password_ref: account.git-http-password
                    validation_repo: https://github.com/example/example-validation-repo.git
                    execute_on_delegate: false
            example-git-ssh-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: GitSsh
                    url: 'https://github.com/example/example-repo.git'
                    branch: example_branch
                    connection_type: Repo
                    ssh_key_ref: account.git-http-password
                    execute_on_delegate: false
            example-appdynamics-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: Appdynamics
                    account_name: appdynamics-account-name
                    controller_url: https://appdynamics.com/controller/
                    username: appdynamics-username
                    password_ref: account.appdynamics-password
                    delegate_selectors: []
            example-appdynamics-client-id-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AppdynamicsClientId
                    account_name: appdynamics-account-name
                    controller_url: https://appdynamics.com/controller/
                    client_id: appdynamics-client-id
                    client_secret_ref: account.appdynamics-client-secret
                    delegate_selectors: []
            example-artifactory-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: Artifactory
                    url: https://artifactory.com/example/example-artifactory
                    username: artifactory-user
                    password_ref: account.artifactory-password
                    delegate_selectors: []
                    execute_on_delegate: false
            example-artifactory-anonymous-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: ArtifactoryAnonymous
                    url: https://artifactory.com/example/example-artifactory
                    delegate_selectors: []
                    execute_on_delegate: false
            example-artifactory-encrypted-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: ArtifactoryEncrypted
                    url: https://artifactory.com/example/example-artifactory
                    username_ref: account.artifactory-user
                    password_ref: account.artifactory-password
                    delegate_selectors: []
                    execute_on_delegate: false
            example-azure-client-certificate-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureClientCertificate
                    delegate_selectors:
                    - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    tenant_id: '1234567890'
                    certificate_ref: account.azure-client-certificate
            example-azure-client-secret-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureClientSecretKey
                    delegate_selectors:
                    - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    tenant_id: '1234567890'
                    secret_ref: account.azure-secret-key
            example-azure-system-assigned-managed-identity-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureInheritFromDelegateSystemAssignedManagedIdentity
                    delegate_selectors:
                    - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
            example-azure-user-assigned-managed-identity-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AzureInheritFromDelegateUserAssignedManagedIdentity
                    delegate_selectors:
                    - pl1
                    azure_environment_type: AZURE
                    execute_on_delegate: false
                    application_id: '1234567890'
                    client_id: '1234567890'
            example-aws-code-commit-connector-request-yaml:
              value: |
                connector:
                  name: example_connector
                  identifier: example_connector
                  description: example_connector
                  org: default
                  project: example_project
                  tags:
                    property1: example_connector
                  spec:
                    type: AwsCodeCommit
                    url: 'https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo'
                    url_type: Repo
                    access_key_ref: account.aws-access-key
                    secret_key_ref: account.aws-secret-key
      required: true
    CreateResourceGroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateResourceGroupRequest'
          examples:
            resource-group-request:
              value:
                identifier: example_resource_group
                name: Example Resource Group
                color: '#0063F7'
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                description: This is an Example Resource Group
                included_scope:
                  - filter: EXCLUDING_CHILD_SCOPES
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                resource_filter:
                  - resource_type: resource
                    identifiers:
                      - example_resource
                    attribute_name: resource_attribute
                    attribute_values:
                      - example_resource_attribute
                include_all_resources: false
        application/yaml:
          schema:
            $ref: '#/components/schemas/CreateResourceGroupRequest'
          examples:
            resource-group-request:
              value: |
                identifier: example_resource_group
                name: Example Resource Group
                color: '#0063F7'
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                description: This is an Example Resource Group
                included_scope:
                  - filter: EXCLUDING_CHILD_SCOPES
                    account: sample_account
                    org: sample_organization
                    project: sample_project
                resource_filter:
                  - resource_type: resource
                    identifiers:
                      - example_resource
                    attribute_name: resource_attribute
                    attribute_values:
                      - example_resource_attribute
                include_all: false
      description: Resource Group request body
      required: true
    FilterResourceGroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ResourceGroupFilterRequestBody'
          examples:
            example-filter:
              value:
                account: example_account
                org: example_organization
                project: example_project
                search_term: search
                identifier_filter:
                  - example_resource_group
                resource_selector_filter:
                  - resource_type: RESOURCE
                    resource_identifier: example_resource
                managed_filter: NO_FILTER
        application/yaml:
          schema:
            $ref: '#/components/schemas/ResourceGroupFilterRequestBody'
          examples:
            example-filter:
              value: |
                account: example_account
                org: example_organization
                project: example_project
                search_term: search
                identifier_filter:
                  - example_resource_group
                resource_selector_filter:
                  - resource_type: RESOURCE
                    resource_identifier: example_resource
                managed_filter: NO_FILTER
      description: Filter Resource Group request body
      required: true
    CreateStreamingDestinationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StreamingDestinationDTO'
          examples:
            example-aws-s3-stream-destination-request:
              value:
                identifier: example_destination
                name: example destination name
                status: ACTIVE
                connector_ref: account.example_aws_connector
                spec:
                  type: AWS_S3
                  bucket: example_bucket
      description: Streaming Destination request body
    NotificationChannelRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NotificationChannelDTO'
      description: Notification channel request
    NotificationRuleRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NotificationRuleDTO'
      description: Notification rule request
    SaveAttachmentRequest:
      content:
        multipart/form-data:
          schema:
            type: object
            properties:
              file:
                type: string
                x-stoplight:
                  id: vq1ldb6vnuj85
                format: binary
                description: File content
              spec:
                $ref: '#/components/schemas/AttachmentDTO'
            required:
              - file
              - spec
      description: Save Notification Attachment Request
    TriggerRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TriggerRequestBody'
        application/yaml:
          schema:
            $ref: '#/components/schemas/TriggerRequestBody'
      description: Trigger request body
      required: true
    PipelineCreateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineCreateRequestBody'
          examples:
            example-pipeline:
              value:
                pipeline_yaml: |
                  pipeline:
                    identifier: example_pipeline
                    name: ExamplePipeline
                    allowStageExecutions: false
                    stages:
                      - stage:
                          name: Example Build Stage
                          identifier: example_build_stage
                          description: ''
                          type: Approval
                          spec:
                            execution:
                              steps:
                                - step:
                                    name: Approval Step
                                    identifier: Approval_Step
                                    type: HarnessApproval
                                    timeout: 1d
                                    spec:
                                      approvalMessage: |-
                                        Please review the following information
                                        and approve the pipeline progression
                                      includePipelineExecutionHistory: true
                                      approvers:
                                        minimumCount: 1
                                        disallowPipelineExecutor: false
                                        userGroups: <+input>
                                      approverInputs: []
                                - step:
                                    type: ShellScript
                                    name: ShellScript Step
                                    identifier: ShellScript_Step
                                    spec:
                                      shell: Bash
                                      onDelegate: true
                                      source:
                                        type: Inline
                                        spec:
                                          script: <+input>
                                      environmentVariables: []
                                      outputVariables: []
                                      executionTarget: {}
                                    timeout: 10m
                          tags: {}
                      - stage:
                          name: Example Deploy Stage
                          identifier: example_deploy_stage
                          description: ''
                          type: Deployment
                          spec:
                            serviceConfig:
                              serviceRef: <+input>
                              serviceDefinition:
                                spec:
                                  variables: []
                                type: Kubernetes
                            infrastructure:
                              environmentRef: <+input>
                              infrastructureDefinition:
                                type: KubernetesDirect
                                spec:
                                  connectorRef: <+input>
                                  namespace: <+input>
                                  releaseName: release-<+INFRA_KEY>
                              allowSimultaneousDeployments: false
                            execution:
                              steps:
                                - step:
                                    name: Rollout Deployment
                                    identifier: rolloutDeployment
                                    type: K8sRollingDeploy
                                    timeout: 10m
                                    spec:
                                      skipDryRun: false
                              rollbackSteps:
                                - step:
                                    name: Rollback Rollout Deployment
                                    identifier: rollbackRolloutDeployment
                                    type: K8sRollingRollback
                                    timeout: 10m
                                    spec: {}
                          tags: {}
                          failureStrategies:
                            - onFailure:
                                errors:
                                  - AllErrors
                                action:
                                  type: StageRollback
                identifier: example_pipeline
                name: ExamplePipeline
                description: Pipeline Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineCreateRequestBody'
          examples:
            example-pipeline:
              value: >
                pipeline_yaml: 'pipeline: identifier: example_pipeline name:
                ExamplePipeline allowStageExecutions: false stages: - stage:
                name: Example Build Stage identifier: example_build_stage
                description: '''' type: Approval spec: execution: steps: - step:
                name: Approval Step identifier: Approval_Step type:
                HarnessApproval timeout: 1d spec: approvalMessage: |- Please
                review the following information and approve the pipeline
                progression includePipelineExecutionHistory: true approvers:
                minimumCount: 1 disallowPipelineExecutor: false userGroups:
                <+input> approverInputs: [] - step: type: ShellScript name:
                ShellScript Step identifier: ShellScript_Step spec: shell: Bash
                onDelegate: true source: type: Inline spec: script: <+input>
                environmentVariables: [] outputVariables: [] executionTarget: {}
                timeout: 10m tags: {} - stage: name: Example Deploy Stage
                identifier: example_deploy_stage description: '''' type:
                Deployment spec: serviceConfig: serviceRef: <+input>
                serviceDefinition: spec: variables: [] type: Kubernetes
                infrastructure: environmentRef: <+input>
                infrastructureDefinition: type: KubernetesDirect spec:
                connectorRef: <+input> namespace: <+input> releaseName:
                release-<+INFRA_KEY> allowSimultaneousDeployments: false
                execution: steps: - step: name: Rollout Deployment identifier:
                rolloutDeployment type: K8sRollingDeploy timeout: 10m spec:
                skipDryRun: false rollbackSteps: - step: name: Rollback Rollout
                Deployment identifier: rollbackRolloutDeployment type:
                K8sRollingRollback timeout: 10m spec: {} tags: {}
                failureStrategies: - onFailure: errors: - AllErrors action:
                type: StageRollback'

                identifier: example_pipeline

                name: ExamplePipeline

                description: Pipeline Description

                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
      description: Pipeline request body
      required: true
    PipelineUpdateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineUpdateRequestBody'
          examples:
            example-pipeline:
              value:
                pipeline_yaml: |
                  pipeline:
                    identifier: example_pipeline
                    name: ExamplePipeline
                    allowStageExecutions: false
                    stages:
                      - stage:
                          name: Example Build Stage
                          identifier: example_build_stage
                          description: ''
                          type: Approval
                          spec:
                            execution:
                              steps:
                                - step:
                                    name: Approval Step
                                    identifier: Approval_Step
                                    type: HarnessApproval
                                    timeout: 1d
                                    spec:
                                      approvalMessage: |-
                                        Please review the following information
                                        and approve the pipeline progression
                                      includePipelineExecutionHistory: true
                                      approvers:
                                        minimumCount: 1
                                        disallowPipelineExecutor: false
                                        userGroups: <+input>
                                      approverInputs: []
                                - step:
                                    type: ShellScript
                                    name: ShellScript Step
                                    identifier: ShellScript_Step
                                    spec:
                                      shell: Bash
                                      onDelegate: true
                                      source:
                                        type: Inline
                                        spec:
                                          script: <+input>
                                      environmentVariables: []
                                      outputVariables: []
                                      executionTarget: {}
                                    timeout: 10m
                          tags: {}
                      - stage:
                          name: Example Deploy Stage
                          identifier: example_deploy_stage
                          description: ''
                          type: Deployment
                          spec:
                            serviceConfig:
                              serviceRef: <+input>
                              serviceDefinition:
                                spec:
                                  variables: []
                                type: Kubernetes
                            infrastructure:
                              environmentRef: <+input>
                              infrastructureDefinition:
                                type: KubernetesDirect
                                spec:
                                  connectorRef: <+input>
                                  namespace: <+input>
                                  releaseName: release-<+INFRA_KEY>
                              allowSimultaneousDeployments: false
                            execution:
                              steps:
                                - step:
                                    name: Rollout Deployment
                                    identifier: rolloutDeployment
                                    type: K8sRollingDeploy
                                    timeout: 10m
                                    spec:
                                      skipDryRun: false
                              rollbackSteps:
                                - step:
                                    name: Rollback Rollout Deployment
                                    identifier: rollbackRolloutDeployment
                                    type: K8sRollingRollback
                                    timeout: 10m
                                    spec: {}
                          tags: {}
                          failureStrategies:
                            - onFailure:
                                errors:
                                  - AllErrors
                                action:
                                  type: StageRollback
                identifier: example_pipeline
                name: ExamplePipeline
                description: Pipeline Description
                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: abcdXYZ
                  base_branch: old_branch
                  last_commit_id: abcdXYZ
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
        application/yaml:
          schema:
            $ref: '#/components/schemas/PipelineUpdateRequestBody'
          examples:
            example-pipeline:
              value: >
                pipeline_yaml: 'pipeline: identifier: example_pipeline name:
                ExamplePipeline allowStageExecutions: false stages: - stage:
                name: Example Build Stage identifier: example_build_stage
                description: '''' type: Approval spec: execution: steps: - step:
                name: Approval Step identifier: Approval_Step type:
                HarnessApproval timeout: 1d spec: approvalMessage: |- Please
                review the following information and approve the pipeline
                progression includePipelineExecutionHistory: true approvers:
                minimumCount: 1 disallowPipelineExecutor: false userGroups:
                <+input> approverInputs: [] - step: type: ShellScript name:
                ShellScript Step identifier: ShellScript_Step spec: shell: Bash
                onDelegate: true source: type: Inline spec: script: <+input>
                environmentVariables: [] outputVariables: [] executionTarget: {}
                timeout: 10m tags: {} - stage: name: Example Deploy Stage
                identifier: example_deploy_stage description: '''' type:
                Deployment spec: serviceConfig: serviceRef: <+input>
                serviceDefinition: spec: variables: [] type: Kubernetes
                infrastructure: environmentRef: <+input>
                infrastructureDefinition: type: KubernetesDirect spec:
                connectorRef: <+input> namespace: <+input> releaseName:
                release-<+INFRA_KEY> allowSimultaneousDeployments: false
                execution: steps: - step: name: Rollout Deployment identifier:
                rolloutDeployment type: K8sRollingDeploy timeout: 10m spec:
                skipDryRun: false rollbackSteps: - step: name: Rollback Rollout
                Deployment identifier: rollbackRolloutDeployment type:
                K8sRollingRollback timeout: 10m spec: {} tags: {}
                failureStrategies: - onFailure: errors: - AllErrors action:
                type: StageRollback'

                identifier: example_pipeline

                name: ExamplePipeline

                description: Pipeline Description

                tags:
                  example-tag-1: example-tag-1-value
                  example-tag-2: example-tag-2-value
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: abcdXYZ
                  base_branch: old_branch
                  last_commit_id: abcdXYZ
      description: Pipeline request body
      required: true
    InputSetCreateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetCreateRequestBody'
          examples:
            example-input:
              value:
                input_set_yaml: |-
                  inputSet:
                      pipeline:
                          identifier: Example_Pipeline
                          stages:
                              - stage:
                                    identifier: Example_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:\n                                            type: Inline
                                                              spec:\n                                                script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
                identifier: example_input_set
                name: ExampleInputSet
                description: Input Set Description
                tags:
                  property1: example-tag-1-value
                  property2: example-tag-2-value
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
        application/yaml:
          schema:
            $ref: '#/components/schemas/InputSetCreateRequestBody'
          examples:
            example-input:
              value: |
                input_set_yaml: |-
                  inputSet:
                      pipeline:
                          identifier: Example_Pipeline
                          stages:
                              - stage:
                                    identifier: Example_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:\n                                            type: Inline
                                                              spec:\n                                                script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
                identifier: example_input_set
                name: ExampleInputSet
                description: Input Set Description
                tags:
                  property1: example-tag-1-value
                  property2: example-tag-2-value
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: INLINE
                  repo_name: example_repository
      description: Input Set create request body.
      required: true
    InputSetUpdateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetUpdateRequestBody'
          examples:
            example-input:
              value:
                input_set_yaml: |-
                  inputSet:
                      pipeline:
                          identifier: Example_Pipeline
                          stages:
                              - stage:
                                    identifier: Example_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:\n                                            type: Inline
                                                              spec:\n                                                script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
                identifier: example_input_set
                name: ExampleInputSet
                description: Input Set Description
                tags:
                  property1: example-tag-1-value
                  property2: example-tag-2-value
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: abcdXYZ
                  base_branch: old_branch
                  last_commit_id: abcdXYZ
                  parent_entity_connector_ref: git_connector
                  parent_entity_repo_name: example_repository
        application/yaml:
          schema:
            $ref: '#/components/schemas/InputSetUpdateRequestBody'
          examples:
            example-input:
              value: |
                input_set_yaml: |-
                  inputSet:
                      pipeline:
                          identifier: Example_Pipeline
                          stages:
                              - stage:
                                    identifier: Example_Stage
                                    type: Approval
                                    spec:
                                        execution:
                                            steps:
                                                - step:
                                                      identifier: Approval_Step
                                                      type: HarnessApproval
                                                      spec:
                                                          approvers:
                                                              userGroups:
                                                                  - account.Admins
                                                - step:
                                                      identifier: Shellscript_Step
                                                      type: ShellScript
                                                      spec:
                                                          source:\n                                            type: Inline
                                                              spec:\n                                                script: echo "ShellScript"
                              - stage:
                                    identifier: Sample_Deploy_Stage
                                    type: Deployment
                                    spec:
                                        serviceConfig:
                                            serviceRef: Service1
                                        infrastructure:
                                            environmentRef: Env1
                                            infrastructureDefinition:
                                                type: KubernetesDirect
                                                spec:
                                                    connectorRef: account.harnessciplatform
                                                    namespace: sample
                identifier: example_input_set
                name: ExampleInputSet
                description: Input Set Description
                tags:
                  property1: example-tag-1-value
                  property2: example-tag-2-value
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: abcdXYZ
                  base_branch: old_branch
                  last_commit_id: abcdXYZ
                  parent_entity_connector_ref: git_connector
                  parent_entity_repo_name: example_repository
      description: Input Set update request body
      required: true
    PipelineMoveConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineMoveConfigRequestBody'
    InputSetMoveConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetMoveConfigRequestBody'
    PipelineImportRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineImportRequestBody'
      description: Pipeline import request body
    InputSetImportRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InputSetImportRequestBody'
      description: Input Set import request body
    GitMetadataUpdateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequestBody'
    EnvironmentProxyCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnvironmentProxyCreateRequest'
    StepPalleteFilterRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StepPalleteFilterRequestBody'
          examples:
            example-1:
              value:
                step_pallete_module_infos:
                  - module: cd
                    category: Kubernetes
                    should_show_common_steps: true
                  - module: cd
                    category: Builds
                    should_show_common_steps: false
                  - module: cv
                    should_show_common_steps: false
                  - module: cd
                    category: Chaos
                    should_show_common_steps: false
                  - module: pms
                    category: ssca
                    should_show_common_steps: false
                version: '1'
    PipelineInputsSchemaRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineInputsSchemaRequestBody'
    PipelinePatchRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelinePatchRequestBody'
    MergeInputSetRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MergeInputSetRequestBody'
    HarnessApprovalActivityRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HarnessApprovalActivityRequestBody'
          examples:
            Example 1:
              value:
                comments: string
                action: APPROVE
                approver_inputs:
                  - name: example_input_1
                    value: example_value_1
                  - name: example_input_2
                    value: example_value_2
      description: Request Body for Harness Approval Activity
    RerunPipelineRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RerunPipelineRequest'
    RunStageRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RunStageRequestBody'
    PipelineExecuteRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineExecuteRequestBody'
    TemplateUpdateBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateUpdateRequestBody'
          examples:
            example-1:
              value:
                template_yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: example_object_id
                  base_branch: old_branch
                  connector_ref: git_connector
                  last_commit_id: example_commit_id
                  file_path: /folder/file.json
                  repo_name: example_repository
                  store_type: INLINE
                comments: sample_comments
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateUpdateRequestBody'
          examples:
            example-1:
              value: |
                template_yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: example_object_id
                  base_branch: old_branch
                  connector_ref: git_connector
                  last_commit_id: example_commit_id
                  file_path: /folder/file.json
                  repo_name: example_repository
                  store_type: INLINE
                comments: sample_comments
      description: Templates Update Request Body
    TemplateFetchBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitFindDetails'
          examples:
            example-1:
              value:
                branch_name: branch
                parent_entity_connector_ref: example_connector_ref
                parent_entity_repo_name: example_repo_name
                parent_entity_account_id: example_account_id
                parent_entity_org_id: example_org_id
                parent_entity_project_id: example_project_id
                comments: sample_comments
        application/yaml:
          schema:
            $ref: '#/components/schemas/GitFindDetails'
          examples:
            example-1:
              value: |
                branch_name: branch
                parent_entity_connector_ref: example_connector_ref
                parent_entity_repo_name: example_repo_name
                parent_entity_account_id: example_account_id
                parent_entity_org_id: example_org_id
                parent_entity_project_id: example_project_id
                comments: sample_comments
      description: Templates Fetch Request Body
    TemplateCreateBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateCreateRequestBody'
          examples:
            example-1:
              value:
                template_yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: INLINE
                  repo_name: example_repository
                is_stable: true
                comments: sample_comment
        application/yaml:
          schema:
            $ref: '#/components/schemas/TemplateCreateRequestBody'
          examples:
            example-1:
              value: |
                template_yaml: |
                  template:
                    name: Example_template
                    identifier: example_template
                    versionLabel: v1
                    type: Stage
                    tags: {}
                    spec:
                      type: Custom
                      spec:
                        execution:
                          steps:
                            - step:
                                type: ShellScript
                                name: ss1
                                identifier: ss1
                                spec:
                                  shell: Bash
                                  onDelegate: true
                                  source:
                                    type: Inline
                                    spec:
                                      script: exit 1
                                  environmentVariables: []
                                  outputVariables: []
                                timeout: 10m
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: INLINE
                  repo_name: example_repository
                is_stable: true
                comments: sample_comment
      description: Templates Create Request Body
    TemplateImportRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateImportRequestBody'
    TemplateInputsSchemaRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TemplateInputsSchemaRequestBody'
    TemplateUpdateGitMetadataRequestBody:
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/TemplateUpdateGitMetadataRequest'
    BackstageEnvVariableRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableRequest'
          examples:
            Example 1:
              value:
                env_variable:
                  identifier: 641c7f1aa18dbf72522d78f0
                  env_name: PAGERDUTY_TOKEN
                  created: 1679589047352
                  updated: 1679589047352
                  type: Secret
                  harness_secret_identifier: pdtoken
            Example 2:
              value:
                env_variable:
                  identifier: 641c7f1aa18dbf72522d78f1
                  env_name: GITHUB_APP_APPLICATION_ID
                  created: 1679589047352
                  updated: 1679589047352
                  type: Config
                  value: '1234'
        application/yaml:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableRequest'
    BackstageEnvVariableBatchRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableBatchRequest'
          examples: {}
        application/yaml:
          schema:
            $ref: '#/components/schemas/BackstageEnvVariableBatchRequest'
    BackstagePermissionsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstagePermissionsRequest'
          examples: {}
    StatusInfoRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StatusInfoRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/StatusInfoRequest'
    ImportHarnessEntitiesRequest:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ImportEntitiesBase'
          examples: {}
      description: Details of Harness Entities and Catalog Location info
    EntitesByRefsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntitiesByRefsRequest'
      description: Entity Refs for which entities need to be fetched
    EntityFilterQueryRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityFilterQueryRequest'
      description: Query for getting the filters for entities
    LayoutRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LayoutRequest'
    AppConfigRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AppConfigRequest'
          examples:
            Example 1:
              value:
                app_config:
                  config_id: snyk-security
                  configs: |-
                    proxy:
                      '/snyk':
                        target: https://snyk.io/api/v1
                        headers:
                          User-Agent: tech-services/backstage-plugin/1.0
                          Authorization: token ${SNYK_TOKEN}
                  enabled: true
                  enabled_disabled_at: 0
                  created: 1679589146025
                  updated: 1679589146025
                  env_variables:
                    - env_name: SNYK_TOKEN
                      type: Secret
                      harness_secret_identifier: snyktoken
                  config_name: Snyk Security
    ConnectorInfoRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConnectorInfoRequest'
    RequestPluginRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestPlugin'
      description: Details of the plugin being requested
    LayoutIngestRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LayoutIngestRequest'
    GenerateYamlRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GenerateYamlRequest'
      description: >-
        Request to generate yaml for any one entity if provided or generate
        sample entity yaml definition
    AllowListRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AllowListRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/AllowListRequest'
    ConfigurationEntitiesRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigurationEntities'
    CheckDetailsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CheckDetailsRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CheckDetailsRequest'
    DataSourceDataPointInfoRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DataSourceDataPointInfoRequest'
      description: Request for getting the data point data
    ScorecardRecalibrateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScorecardRecalibrateRequest'
    KubernetesConfigRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/KubernetesRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/KubernetesRequest'
      description: Kubernetes Configuration
    ScmConfigRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ScmRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/ScmRequest'
      description: Scm Configuration
    LicenseUsageSaveRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LicenseUsageSaveRequest'
      description: User details and accessedAt to capture license usage
    CustomPluginInfoRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomPluginInfoRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/CustomPluginInfoRequest'
    CustomPluginCreateRequest:
      content:
        application/json:
          schema:
            type: object
    BackstageHarnessSyncRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BackstageHarnessSyncRequest'
    GroupRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GroupRequest'
    GroupRequestList:
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/GroupRequest'
    HomePageLayoutRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/HomePageLayoutRequest'
        application/yaml:
          schema:
            $ref: '#/components/schemas/HomePageLayoutRequest'
    DeleteHomePageLayoutIconRequest:
      content:
        application/json:
          schema:
            type: object
            $ref: '#/components/schemas/DeleteHomePageLayoutIconRequest'
    EntityRequestBody:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityRequest'
          examples:
            example-entity:
              value:
                yaml: |
                  apiVersion: harness.io/v1
                  kind: component
                  type: Service
                  identifier: my-sample-service
                  name: my-sample-service
                  owner: sample-owner
                  spec:
                    lifecycle: experimental
                    ownedBy:
                      - group/sample-group
                  metadata:
                    description: My Sample service.
                    annotations:
                      backstage.io/source-location: url:https://github.com/sample/sample/tree/main/harness/sample/
                      backstage.io/techdocs-ref: dir:.
                    links:
                      - title: Website
                        url: http://my-sample-website.com
                    tags:
                      - my-sample
            backstage-entity:
              value:
                yaml: |
                  apiVersion: backstage.io/v1alpha1
                  kind: Component
                  metadata:
                    name: my-sample-service
                    description: My Sample service.
                    annotations:
                      backstage.io/source-location: url:https://github.com/sample/sample/tree/main/
                    tags:
                      - my-sample
                  spec:
                    type: service
                    lifecycle: experimental
                    owner: sample-owner
      description: >-
        Entity YAML definition provided as a string. The YAML should conform to
        either the  Harness entity format or the Backstage entity format,
        depending on the operation.
    GitImportRequestBody:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitImportDetails1'
      description: Git Import Request Body
    EntityCreateRequestBody:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityCreateRequest'
          examples:
            example-entity:
              value:
                yaml: |
                  apiVersion: harness.io/v1
                  kind: component
                  type: Service
                  identifier: my-sample-service
                  name: my-sample-service
                  owner: sample-owner
                  spec:
                    lifecycle: experimental
                    ownedBy:
                      - group/sample-group
                  metadata:
                    description: My Sample service.
                    annotations:
                      backstage.io/source-location: url:https://github.com/sample/sample/tree/main/harness/sample/
                      backstage.io/techdocs-ref: dir:.
                    links:
                      - title: Website
                        url: http://my-sample-website.com
                    tags:
                      - my-sample
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
                  is_harness_code_repo: false
      description: Entity Create Request Body
    EntityUpdateRequestBody:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityUpdateRequest'
          examples:
            example-entity:
              value:
                yaml: |
                  apiVersion: harness.io/v1
                  kind: component
                  type: Service
                  identifier: my-sample-service
                  name: my-sample-service
                  owner: sample-owner
                  spec:
                    lifecycle: experimental
                    ownedBy:
                      - group/sample-group
                  metadata:
                    description: My Sample service.
                    annotations:
                      backstage.io/source-location: url:https://github.com/sample/sample/tree/main/harness/sample/
                      backstage.io/techdocs-ref: dir:.
                    links:
                      - title: Website
                        url: http://my-sample-website.com
                    tags:
                      - my-sample
                git_details:
                  branch_name: branch
                  commit_message: Added Harness Git Experience
                  last_object_id: abcdXYZ
                  base_branch: old_branch
                  last_commit_id: abcdXYZ
                  connector_ref: git_connector
                  store_type: REMOTE
                  repo_name: example_repository
                  is_harness_code_repo: false
      description: Entity Update Request Body
    EntityMoveRequestBody:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EntityMoveRequest'
          examples:
            example-move-entity:
              value:
                git_details:
                  branch_name: branch
                  file_path: /folder/file.json
                  commit_message: Added Harness Git Experience
                  base_branch: old_branch
                  connector_ref: git_connector
                  repo_name: example_repository
                  is_harness_code_repo: false
                entity_move_operation_type: INLINE_TO_REMOTE
      description: Entity Move Request Body
    GitMetadataUpdateRequestBody1:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/GitMetadataUpdateRequest'
          x-examples:
            example-git-metadata-update:
              branch_name: branch
              file_path: /folder/file.json
              connector_ref: git_connector
              repo_name: example_repository
    APIKeyRequest:
      content:
        application/json:
          schema:
            properties:
              description:
                example: This key is for server side production environment
                type: string
              expiredAt:
                type: integer
              identifier:
                example: production-environment
                type: string
              name:
                example: production-env-key
                type: string
              type:
                $ref: '#/components/schemas/ApiKeyRequestType'
            required:
              - name
              - identifier
              - type
            type: object
    APIKeyUpdateRequest:
      content:
        application/json:
          schema:
            properties:
              description:
                example: This key is for server side production environment
                type: string
              expiredAt:
                type: integer
              name:
                example: production-env-key
                type: string
            type: object
    AttributePatchRequest:
      content:
        application/json:
          example:
            instructions:
              - kind: updateAttribute
                parameters:
                  key: Updated attributeKey
          schema:
            $ref: '#/components/schemas/GitSyncPatchOperation'
    AttributeRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Attribute'
      required: true
    EnvironmentPerspectiveUpsertRequest:
      content:
        application/json:
          schema:
            properties:
              perspectiveIdentifier:
                example: '12345'
                type: string
              perspectiveName:
                example: myCluster
                type: string
            required:
              - perspectiveIdentifier
              - perspectiveName
            type: object
    FeatureFlagPutRequest:
      content:
        application/json:
          schema:
            properties:
              defaultOffVariation:
                type: string
              defaultOnVariation:
                type: string
              description:
                type: string
              environments:
                items:
                  $ref: '#/components/schemas/ActivationUpdate'
                type: array
              gitDetails:
                $ref: '#/components/schemas/CfGitDetails'
              name:
                type: string
              permanent:
                type: boolean
              tags:
                items:
                  $ref: '#/components/schemas/Tag'
                type: array
              variations:
                items:
                  $ref: '#/components/schemas/Variation'
                minItems: 2
                type: array
            type: object
    FeatureFlagRequest:
      content:
        application/json:
          schema:
            properties:
              archived:
                type: boolean
              defaultOffVariation:
                type: string
              defaultOnVariation:
                type: string
              description:
                type: string
              gitDetails:
                $ref: '#/components/schemas/CfGitDetails'
              identifier:
                type: string
              kind:
                $ref: '#/components/schemas/FeatureFlagRequestKind'
              name:
                type: string
              owner:
                type: string
              permanent:
                type: boolean
              prerequisites:
                items:
                  $ref: '#/components/schemas/Prerequisite'
                type: array
              project:
                type: string
              services:
                items:
                  $ref: '#/components/schemas/CfService'
                type: array
              tags:
                items:
                  $ref: '#/components/schemas/Tag'
                type: array
              variations:
                items:
                  $ref: '#/components/schemas/Variation'
                minItems: 2
                type: array
            required:
              - name
              - project
              - identifier
              - kind
              - variations
              - defaultOnVariation
              - defaultOffVariation
              - permanent
            type: object
    FeaturePatchRequest:
      content:
        application/json:
          example:
            gitDetails:
              commitMsg: Making some changes
            instructions:
              - kind: updateName
                parameters:
                  name: Updated Name
              - kind: updateDescription
                parameters:
                  description: Updated Description
              - kind: addPrerequisite
                parameters:
                  feature: feature1
                  variations:
                    - variation1
                    - variation2
              - kind: updatePrerequisite
                parameters:
                  feature: feature1
                  variations:
                    - variation1
              - kind: removePrerequisite
                parameters:
                  feature: feature1
              - kind: addVariation
                parameters:
                  description: Variation 1 description
                  identifier: variation_1
                  name: variation1
                  value: v1
              - kind: updateVariation
                parameters:
                  description: Variation 1 description
                  identifier: variation_1
                  name: variation1
                  value: v1
              - kind: deleteVariation
                parameters:
                  identifier: variation_1
              - kind: setDefaultOnVariation
                parameters:
                  identifier: variation_1
              - kind: setDefaultOffVariation
                parameters:
                  identifier: variation_1
              - kind: addTag
                parameters:
                  name: TagName
                  value: TagValue
              - kind: updateTag
                parameters:
                  name: TagName
                  value: TagValue
              - kind: removeTag
                parameters:
                  name: TagName
                  value: TagValue
              - kind: setFeatureFlagState
                parameters:
                  state: 'on'
              - kind: setFeatureFlagState
                parameters:
                  state: 'off'
              - kind: addTargetsToVariationTargetMap
                parameters:
                  targets:
                    - target1-identifier
                    - target2-identifier
                  variation: variation-identifier
              - kind: removeTargetsToVariationTargetMap
                parameters:
                  targets:
                    - target1-identifier
                    - target2-identifier
                  variation: variation-identifier
              - kind: addSegmentToVariationTargetMap
                parameters:
                  targetSegments:
                    - segment1
                    - segment2
                  variation: variation-identifier
              - kind: removeSegmentToVariationTargetMap
                parameters:
                  targetSegments:
                    - segment3
                    - segment4
                  variation: variation-identifier
              - kind: clearVariationTargetMapping
                parameters:
                  variation: variation-identifier
              - kind: addRule
                parameters:
                  clauses:
                    - attribute: email
                      op: eq
                      values:
                        - user1@gmail.com
                        - user2@gmail.com
                  priority: 1
                  serve:
                    variation: variation1
                  uuid: fd2ebf1f-7efb-4324-a7ee-6de0a47bf826
              - kind: removeRule
                parameters:
                  ruleID: testRuleID
              - kind: addClause
                parameters:
                  clause:
                    attribute: email
                    op: eq
                    values:
                      - user1@gmail.com
                      - user2@gmail.com
                  ruleID: testRuleID
              - kind: removeClause
                parameters:
                  clauseID: testClauseID
                  ruleID: testRuleID
              - kind: updateClause
                parameters:
                  clause:
                    - attribute: email
                      op: eq
                      values:
                        - user1@gmail.com
                        - user2@gmail.com
                  clauseID: testClauseID
                  ruleID: testRuleID
              - kind: reorderRules
                parameters:
                  rules:
                    - rule1
                    - rule2
                    - rule3
              - kind: updateDefaultServe
                parameters:
                  bucketBy: accountID
                  variations:
                    - variation: variation1
                      weight: 30
                    - variation: variation2
                      weight: 60
                    - variation: variation3
                      weight: 10
              - kind: updateRule
                parameters:
                  ruleID: testRuleID
                  variation: variation1
              - kind: updateRule
                parameters:
                  bucketBy: accountID
                  ruleID: testRuleID
                  variations:
                    - variation: variation1
                      weight: 30
                    - variation: variation2
                      weight: 60.66
                    - variation: variation3
                      weight: 10.01
              - kind: updateDefaultServe
                parameters:
                  variation: variation1
              - kind: updateOffVariation
                parameters:
                  variation: variation1
              - Kind: updateArchived
                parameters:
                  archived: true
              - Kind: updatePermanent
                parameters:
                  permanent: true
          schema:
            $ref: '#/components/schemas/GitSyncPatchOperation'
    ProxyKeysPatchRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProxyKeyInstruction'
    ProxyKeysPostRequest:
      content:
        application/json:
          schema:
            example:
              description: A description
              identifier: MyProxyKey
              name: My Proxy Key
              organizations:
                org123:
                  projects:
                    project1:
                      environments: []
                      scope: all
                    project2:
                      environments: []
                      scope: prod
                    project3:
                      environments: []
                      scope: non-prod
                    project4:
                      environments:
                        - env1
                        - env2
                        - env3
                      scope: selected
                org456:
                  projects:
                    project1:
                      environments: []
                      scope: all
                    project2:
                      environments: []
                      scope: prod
                    project3:
                      environments: []
                      scope: non-prod
                    project4:
                      environments:
                        - env1
                        - env2
                        - env3
                      scope: selected
            properties:
              description:
                example: Description of the Proxy Key
                type: string
              identifier:
                example: ProxyKeyOne
                type: string
              name:
                example: Proxy key one
                type: string
              organizations:
                $ref: '#/components/schemas/OrganizationDictionary'
            required:
              - identifier
              - name
              - organizations
            type: object
    SegmentPatchRequest:
      content:
        application/json:
          example:
            instructions:
              - kind: addToIncludeList
                parameters:
                  targets:
                    - target1
                    - target2
              - kind: removeFromIncludeList
                parameters:
                  targets:
                    - target1
                    - target2
              - kind: addToExcludeList
                parameters:
                  targets:
                    - target3
              - kind: removeFromExcludeList
                parameters:
                  targets:
                    - target4
                    - target5
              - kind: addClause
                parameters:
                  attribute: email
                  negate: false
                  op: endsWith
                  values:
                    - gmail.com
              - kind: updateClause
                parameters:
                  attribute: email
                  clauseID: test-clause-ID
                  op: equals
                  value:
                    - testuser@testcompany.com
              - kind: removeClause
                parameters:
                  clauseID: test-clause-ID
          schema:
            $ref: '#/components/schemas/GitSyncPatchOperation'
    SegmentRequest:
      content:
        application/json:
          schema:
            properties:
              environment:
                type: string
              excluded:
                items:
                  type: string
                type: array
              identifier:
                example: beta-testers
                type: string
              included:
                items:
                  type: string
                type: array
              name:
                description: Name of the target segment.
                example: Beta Testers
                type: string
              project:
                type: string
              rules:
                description: >-
                  An array of rules that can cause a user to be included in this
                  segment.
                items:
                  $ref: '#/components/schemas/Clause'
                type: array
              servingRules:
                description: >-
                  An array of rules that can cause a user to be included in this
                  segment.
                items:
                  $ref: '#/components/schemas/GroupServingRule'
                type: array
              tags:
                items:
                  $ref: '#/components/schemas/Tag'
                type: array
            required:
              - name
              - environment
              - project
            type: object
      required: true
    TagRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Tag'
      required: true
    TargetPatchRequest:
      content:
        application/json:
          example:
            gitDetails:
              commitMsg: Making some changes
            instructions:
              - kind: addToIncludeList
                parameters:
                  segments:
                    - alpha-testers
                    - beta-testers
              - kind: removeFromIncludeList
                parameters:
                  segments:
                    - alpha-testers
                    - beta-testers
              - kind: addToExcludeList
                parameters:
                  segments:
                    - alpha-testers
                    - beta-testers
              - kind: removeFromExcludeList
                parameters:
                  segments:
                    - alpha-testers
                    - beta-testers
              - kind: addTargetToFlagsVariationTargetMap
                parameters:
                  features:
                    - identifier: flag1
                      variation: 'true'
                    - identifier: flag2
                      variation: 'false'
              - kind: removeTargetFromFlagsVariationTargetMap
                parameters:
                  features:
                    - identifier: flag1
                      variation: 'true'
                    - identifier: flag2
                      variation: 'false'
          schema:
            $ref: '#/components/schemas/GitSyncPatchOperation'
    TargetRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Target'
      required: true
    applicationsApplicationSetCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/applicationsApplicationSetCreateRequest'
      required: true
    v1Agent:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/v1Agent'
      required: true
    servicev1ReconcilerFilter:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/servicev1ReconcilerFilter'
      required: true
    servicev1ApplicationQuery:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/servicev1ApplicationQuery'
      required: true
    v1Filter:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/v1Filter'
      required: true
    v1AgentYamlQuery:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/v1AgentYamlQuery'
      required: true
    ArtifactLabelRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactLabelRequest'
      description: request to update artifact labels
    RegistryRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RegistryRequest'
      description: request for create and update registry
    ReplicationRuleRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ReplicationRuleRequest'
      description: request for create and update replication rule
    WebhookRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/WebhookRequest'
      description: request for create and update webhook
    quarantineRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/quarantineRequest'
      description: request to quarantine specific file path
    ConsumePluginOutputRespRequest:
      content:
        application/json:
          examples:
            Example 1:
              value:
                command: update
                harnessCommand: Update
                instanceIdentifier: instance1
                orgId: myOrg
                pipelineExecutionId: exec1
                pipelineIdentifier: pip1
                projectId: myProject
                schemaIdentifier: schema1
                stageExecutionId: stage1
                stepResponse: base64-compressed
          schema:
            properties:
              command:
                type: string
                x-stoplight:
                  id: zprby0nmdhugg
              harnessCommand:
                $ref: '#/components/schemas/Command'
              instanceIdentifier:
                type: string
                x-stoplight:
                  id: e5hwdp3vd6g3k
              orgId:
                type: string
                x-stoplight:
                  id: ysxm7l1k2ma1m
              pipelineExecutionId:
                type: string
                x-stoplight:
                  id: ol0rbt3gjzj7n
              pipelineIdentifier:
                type: string
                x-stoplight:
                  id: cfke77225v14t
              projectId:
                type: string
                x-stoplight:
                  id: tjhcrfjkcvjy8
              schemaIdentifier:
                type: string
                x-stoplight:
                  id: yj3aw0b0xu898
              stageExecutionId:
                type: string
                x-stoplight:
                  id: b084jsvql4007
              stepResponse:
                description: >-
                  base-64 encoded compressed step response from plugin extension
                  based on command
                type: string
                x-stoplight:
                  id: uex4gsfsb00uc
            required:
              - orgId
              - projectId
              - schemaIdentifier
              - instanceIdentifier
              - harnessCommand
              - pipelineIdentifier
              - pipelineExecutionId
              - stageExecutionId
              - stepResponse
            type: object
    ConsumePluginRespRequest:
      content:
        application/json:
          examples:
            Example 1:
              value:
                command: Update
                data:
                  tag: '1.0'
                dbInstance: myinstance
                dbSchema: myschema
                logs: Starting Liquibase at...
                org: myorg
                pipeline: pip1
                planExecutionId: pipExec1
                project: myproject
                stageExecutionId: stageExec1
                status: IN_PROGRESS
          schema:
            properties:
              command:
                $ref: '#/components/schemas/Command'
              compressedStepOutput:
                description: compressed step output
                type: string
                x-stoplight:
                  id: a9cmmbokcnoe8
              data:
                description: Data associated with command execution
                type: object
                x-stoplight:
                  id: x106nmejwdkgl
              dbInstance:
                type: string
                x-stoplight:
                  id: 3ddzm85isheyg
              dbSchema:
                type: string
                x-stoplight:
                  id: 9dipu2aap5uz2
              logs:
                type: string
                x-stoplight:
                  id: 8lr1r6lycw0fj
              org:
                description: Organization identifier
                type: string
              parentStepType:
                type: string
                x-stoplight:
                  id: bwner6khhs78u
              pipeline:
                description: Identifier of the pipeline
                type: string
                x-stoplight:
                  id: 681af9f5ux915
              planExecutionId:
                description: ExecutionId of the pipeline executed
                type: string
                x-stoplight:
                  id: 1k0q9xpfkoug5
              project:
                description: Project identifier
                type: string
              stageExecutionId:
                description: ExecutionId of the stage executed
                type: string
                x-stoplight:
                  id: 3xilysg54w5bw
              status:
                $ref: '#/components/schemas/CommandExecutionStatus'
            required:
              - org
              - project
              - dbSchema
              - dbInstance
              - logs
              - status
              - data
              - command
              - pipeline
              - planExecutionId
              - stageExecutionId
            type: object
    CustomOperationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomOperationInput'
      description: Request for getting custom operation result
    DBInstanceCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBInstanceIn'
      required: true
    DBInstanceFilterRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBInstanceFilterIn'
    DBInstanceListRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBInstanceListInput'
      description: >-
        Request for listing instances where schema input is not a required
        property.
    DBInstanceUpdateRequest:
      content:
        application/json:
          examples:
            example-1:
              value:
                branch: string
                connector: string
                context: string
                name: string
                tags:
                  property1: string
                  property2: string
          schema:
            properties:
              branch:
                description: branch where the instance is stored
                type: string
              connector:
                description: DB Connector
                type: string
              context:
                description: Liquibase context
                type: string
              liquibaseSubstituteProperties:
                additionalProperties:
                  type: string
                  x-stoplight:
                    id: mx0d9jv6cnyjq
                description: properties to substitute in liquibase changelog
                type: object
                x-stoplight:
                  id: 6da3nor82319i
              name:
                description: |
                  name of the database instance
                maxLength: 128
                type: string
              tags:
                additionalProperties:
                  type: string
                  x-oapi-codegen-extra-tags:
                    validate: max=128
                description: Database instance tags
                maxProperties: 128
                type: object
              version:
                description: version of the changelog applied to the database
                type: string
            type: object
      description: Database instance update request
      required: true
    DBSchemaCreateRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBSchemaIn'
      required: true
    DBSchemaFilterRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DBSchemaFilterIn'
    DBSchemaUpdateRequest:
      content:
        application/json:
          schema:
            properties:
              changeLogScript:
                description: >-
                  if schemaType is Script location of the changelog file after
                  using a custom script to download
                properties:
                  command:
                    description: command script used to download the changelog file
                    example: >-
                      curl -X -o changeLog.yaml
                      https://www.filestore.com/changeLog.yaml
                    type: string
                    x-stoplight:
                      id: uga2w98ndtla2
                  image:
                    description: The fully-qualified name (FQN) of the image
                    example: plugins/image:latest
                    type: string
                    x-stoplight:
                      id: rtvl2gmxyo7mw
                  location:
                    description: location of the changelog file
                    example: folder/changelog.yaml
                    type: string
                    x-stoplight:
                      id: xarkte21qk96f
                  shell:
                    description: shell type
                    example: Sh, Bash, <+pipeline.variables.shell>
                    type: string
                type: object
                x-stoplight:
                  id: 715ey5dxwedi1
              changelog:
                additionalProperties: false
                description: >
                  location of the changelog file containing schema changes in a
                  git repository
                properties:
                  archivePath:
                    description: path excluding the repo till the archive file
                    type: string
                    x-stoplight:
                      id: lmyqjd54oln7q
                  connector:
                    description: identifier of the harness git connector
                    example: harness_git
                    type: string
                  location:
                    description: path to the change log file
                    example: folder/changelog.yaml
                    type: string
                  repo:
                    description: >-
                      repo name of the git based connector when ConnectionType
                      is Account
                    type: string
                    x-stoplight:
                      id: jpl7puzto8jfo
                type: object
              name:
                description: |
                  name of the database schema
                maxLength: 128
                type: string
              primaryDbInstanceId:
                description: >-
                  This is the primary db instance identifier for advanced
                  feature like LLM Authoring etc.
                type: string
                x-stoplight:
                  id: awj0wbtw7g6x5
              service:
                description: |
                  harness service corresponding to database schema
                example: harness_service
                type: string
              tags:
                additionalProperties:
                  type: string
                  x-oapi-codegen-extra-tags:
                    validate: max=128
                description: Database Schema tags
                maxProperties: 128
                type: object
              type:
                $ref: '#/components/schemas/DBSchemaType'
            type: object
      description: Database schema update request
      required: true
    ExecutionConfigUpdateRequest:
      content:
        application/json:
          schema:
            items:
              $ref: '#/components/schemas/ExecutionConfigOperation'
            type: array
      description: Details of the Update Operations
    FailureInterruptRequest:
      content:
        application/json:
          examples:
            Example 1:
              value:
                command: update
                harnessCommand: Update
                instanceIdentifier: instance1
                interruptType: Abort
                orgId: myOrg
                pipelineExecutionId: exec1
                pipelineIdentifier: pip1
                projectId: myProject
                schemaIdentifier: schema1
                stageExecutionId: stage1
          schema:
            properties:
              harnessCommand:
                $ref: '#/components/schemas/Command'
              instanceIdentifier:
                type: string
                x-stoplight:
                  id: dd9eskstc1qfo
              interruptType:
                type: string
                x-stoplight:
                  id: 6jcjf7pv5xkqh
              orgId:
                type: string
                x-stoplight:
                  id: q31sgv0yohdg2
              pipelineExecutionId:
                type: string
                x-stoplight:
                  id: ncsxeit18aman
              pipelineIdentifier:
                type: string
                x-stoplight:
                  id: kz819pteguv6h
              projectId:
                type: string
                x-stoplight:
                  id: gcxo9lb81t7j4
              schemaIdentifier:
                type: string
                x-stoplight:
                  id: zyf5fsgn5spry
              stageExecutionId:
                type: string
                x-stoplight:
                  id: 9s88c94tzs2ah
            required:
              - orgId
              - projectId
              - schemaIdentifier
              - instanceIdentifier
              - harnessCommand
              - pipelineIdentifier
              - pipelineExecutionId
              - stageExecutionId
              - interruptType
            type: object
      description: Request body for consuming failure interrupts
    FetchSQLStatementRequest:
      content:
        application/json:
          schema:
            properties:
              changesetFQN:
                minLength: 1
                type: string
                x-stoplight:
                  id: dcbwmse6c7iw6
            required:
              - changesetFQN
            type: object
      description: Request Body for Fetching SQL statements
    LogIngestRequest:
      content:
        text/plain:
          schema:
            description: raw text logs from plugin
            type: string
      description: Request body for log ingestion
      required: true
    MigrationStateGetRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MigrationStateIn'
      description: Inputs to get migration state of schema
    PluginStepInputsRequest:
      content:
        application/json:
          examples:
            Example 1:
              value:
                command: Update
                dbInstance: prod-1-instance
                dbSchema: myschema
                directory: myDir
                metadata:
                  pipeline: pip1
                  planExecutionId: planExec1
                  stageExecutionId: stageExec1
                tag: tag1
          schema:
            properties:
              Org:
                description: Organization identifier
                type: string
              Project:
                description: Project identifier
                type: string
              command:
                $ref: '#/components/schemas/Command'
              customCommand:
                description: >-
                  when pluginCommand type is Custom, customCommand is considered
                  which is any string provided by the user
                type: string
                x-stoplight:
                  id: jjz90v9xyk450
              dbInstance:
                description: db instance identifier
                example: myschema/prod-1-instance
                type: string
              dbSchema:
                description: dbSchema reference
                type: string
                x-stoplight:
                  id: saiftwb6u1v5i
              directory:
                type: string
              excludeChangeLogFile:
                default: false
                description: >-
                  if changeLogFile is required or not for LiquibaseCommand step.
                  If true, then dbops-clone will not happen and changeLog is not
                  passed in the settings.
                type: boolean
                x-stoplight:
                  id: z5xwt0vstng3h
              includeJwtAuth:
                default: false
                description: >-
                  Controls whether to include JWT authentication token in the
                  plugin settings. If true, a bearer token will be included.
                type: boolean
                x-stoplight:
                  id: j8k2m5n9p0q1r
              pipelineExecutionMetadata:
                $ref: '#/components/schemas/PipelineExecutionMetadata'
              properties:
                additionalProperties:
                  type: string
                  x-stoplight:
                    id: ana2k0b6a90wb
                description: key value pair for properties which help decide response
                type: object
                x-stoplight:
                  id: j7t40kp0dulaf
              settings:
                additionalProperties:
                  type: string
                  x-stoplight:
                    id: zqkdd4n7n4nay
                description: Key value mapping of user input plugin settings
                type: object
                x-stoplight:
                  id: f7g438c5t4whg
            required:
              - dbInstance
              - command
              - dbSchema
            type: object
      description: Inputs to create plugin inputs
      required: true
    SchemaInstanceMetadataRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SchemaInstanceMetadataInput'
      description: >-
        Request for getting schema-instance metadata and image versions for step
        execution
    SbomProcessRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SbomProcessRequestBody'
    EnforceSbomRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnforceSbomRequestBody'
    EnforceSbomRequestBodyV2:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EnforceSbomRequestBodyV2'
    NormalisedSbomComponentRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/NormalisedSbomComponentRequestBody'
      description: ''
    ArtifactListingRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactListingRequestBody'
    ConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigRequestBody'
    ExecutionLimitRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ExecutionLimitRequestBody'
    PipelineInfraConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineInfraConfigRequestBody'
    BaselineRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BaselineRequestBody'
    ArtifactSbomDriftRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactSbomDriftRequestBody'
    RemediationTrackerCreateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationTrackerCreateRequestBody'
    ExcludeArtifactRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ExcludeArtifactRequest'
    OrchestrationStepDriftRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OrchestrationStepDriftRequestBody'
      description: Provide the base from which drift has to be calculated.
    RemediationListingRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationListingRequestBody'
    RemediationTrackerUpdateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationTrackerUpdateRequestBody'
    RemediationArtifactListingRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RemediationArtifactListingRequestBody'
    RemediationArtifactDeploymentsListingRequestBody:
      content:
        application/json:
          schema:
            $ref: >-
              #/components/schemas/RemediationArtifactDeploymentsListingRequestBody
    CreateTicketRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateTicketRequest'
    ArtifactListingPipelineRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactListingPipelineRequestBody'
    PipelineStoreConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineStoreConfigRequestBody'
    SLSAVerificationRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SLSAVerificationRequestBody'
    SLSAVerificationRequestBodyV2:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SLSAVerificationRequestBodyV2'
    PolicyViolationRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PolicyViolationRequestBody'
    ProvenanceRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProvenanceRequestBody'
    ProvenanceRequestBodyV2:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProvenanceRequestBodyV2'
    SaveOrchestrationRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SaveOrchestrationRequest'
    SaveOrchestrationRequestBodyV2:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SaveOrchestrationRequestV2'
    ArtifactComponentsRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ArtifactComponentsRequestBody'
    CreateIntegrationRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateIntegrationRequest'
    ConfigureReposRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigureReposRequest'
    ComplianceStandardsRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceFilter'
    CreateComplianceStandardRequestBody:
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ComplianceCheck'
    BaselineV2RequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BaselineV2RequestBody'
    CreateComplianceResultRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateComplianceResult'
          examples:
            Example 1:
              value:
                repo_url: string
                default_branch: string
                pipeline_execution_identifier: string
                step_execution_identifier: string
                scm_platform: string
                results:
                  - compliance_id: string
                    title: string
                    category: string
                    category_id: string
                    type: SCM
                    standards:
                      - CIS
                    description: string
                    tags:
                      - string
                    severity: CRITICAL
                    reason: string
                    status: PASS
                    remediation: string
                    url: string
                    entity: REPOSITORY
                stage_execution_identifier: string
                pipeline: string
    FetchComplianceResultRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultFilter'
    ComplianceEvaluationTrendRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultFilter'
    PipelineConfigUpdateRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PipelineConfigUpdateRequest'
    CodeRepositoryListingRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CodeRepositoryListingRequest'
    ComplianceResultsOverviewRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultFilter'
      description: ''
    FetchComplianeResultChecksStatsRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultFilter'
    ComplianceResultsEvaluationBreakdownByArtifactsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultFilter'
    FetchComplianceResultByArtifactRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ComplianceResultByArtifactFilter'
    DownloadSbomRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DownloadSbomRequest'
    SbomScoreRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SbomScoreRequest'
    IntegrationStepConfigRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IntegrationStepConfigRequestBody'
  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.
  headers:
    X-Total-Elements:
      schema:
        type: integer
      description: Total number of elements returned in Paginated response.
    X-Page-Number:
      schema:
        type: integer
      description: Page number in Paginated response.
    X-Page-Size:
      schema:
        type: integer
      description: Maximum page size in Paginated response.
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
  - name: Artifact Registry
    tags:
      - Registries
      - Artifacts
      - Docker Artifacts
      - Helm Artifacts
      - Webhooks
      - Replication
      - Spaces
  - 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: CCM
    tags:
      - Cloud Cost Anomalies
      - Cloud Cost BI Dashboards
      - Cloud Cost Budget Groups
      - Cloud Cost Budgets
      - Cloud Cost K8S Connectors Metadata
      - Cloud Cost Details
      - Cloud Cost Overview
      - Cloud Cost Cost Categories
      - RuleEnforcement
      - Rule
      - Rule Executions
      - Rule Sets
      - Governance Overview
      - Cloud Cost Perspectives Folders
      - Cloud Cost Perspective Reports
      - Cloud Cost Perspectives
      - Cloud Cost Recommendations Details
      - Cloud Cost Recommendations
      - Cloud Cost Recommendation Jira
      - Cloud Cost Recommendation Servicenow
      - Cloud Cost Recommendation Ignore List
      - Cloud Cost AutoStopping Rules
      - Cloud Cost AutoStopping Rules V2
      - Cloud Cost AutoStopping Load Balancers
      - Cloud Cost AutoStopping Fixed Schedules
      - 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
      - CatalogCustomProperties
      - Scores
      - DataSource
      - KubernetesDataPoints
      - AppConfig
      - PluginInfo
      - LayoutProxy
  - 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
  - name: Chaos Engineering
    tags:
      - Chaos Engineering
